Why is RHEL 7 not sending a duplicate ACK upon packet loss?

Solution Verified - Updated -

Issue

  • When packet loss happens, a duplicate ACK is sent to the other party:
frame.number    frame.time_epoch        ip.src  ip.dst  tcp.srcport     tcp.dstport     tcp.seq tcp.ack tcp.flags       tcp.analysis.retransmission     col.Info
960     1626857401.304366000    192.0.2.2     198.51.100.3   39816   20602   54974   204394  0x00000010              39816 > 20602 [ACK] Seq=54974 Ack=204394 Win=7700 Len=0
961     1626857401.327231000    198.51.100.3  192.0.2.2      20602   39816   204937  54974   0x00000018              [TCP Previous segment not captured] ExecutionReport
962     1626857401.327256000    192.0.2.2     198.51.100.3   39816   20602   54974   204394  0x00000010              [TCP Dup ACK 960#1] 39816 > 20602 [ACK] Seq=54974 Ack=204394 Win=7700 Len=0
963     1626857401.506469000    198.51.100.3  192.0.2.2      20602   39816   204394  54974   0x00000018      1       [TCP Retransmission] ExecutionReport
964     1626857401.506510000    192.0.2.2     198.51.100.3   39816   20602   54974   205379  0x00000010              39816 > 20602 [ACK] Seq=54974 Ack=205379 Win=7700 Len=0
  • On occasion, the package includes an updated window which results in the other party not re-sending the lost package immediately:
frame.number    frame.time_epoch        ip.src  ip.dst  tcp.srcport     tcp.dstport     tcp.seq tcp.ack tcp.flags       tcp.analysis.retransmission     col.Info
1688    1626684601.865545000    192.0.2.2     198.51.100.3   43468   20602   130375  364653  0x00000010              43468 > 20602 [ACK] Seq=130375 Ack=364653 Win=8900 Len=0
1689    1626684601.866922000    198.51.100.3  192.0.2.2      20602   43468   371204  130375  0x00000010              [TCP Previous segment not captured] ExecutionReport
1690    1626684601.866932000    192.0.2.2     198.51.100.3   43468   20602   130375  364653  0x00000010              [TCP Window Update] 43468 > 20602 [ACK] Seq=130375 Ack=364653 Win=8991 Len=0
1691    1626684601.867037000    198.51.100.3  192.0.2.2      20602   43468   372664  130375  0x00000010              ExecutionReport
1692    1626684601.867045000    192.0.2.2     198.51.100.3   43468   20602   130375  364653  0x00000010              [TCP Window Update] 43468 > 20602 [ACK] Seq=130375 Ack=364653 Win=9082 Len=0

Environment

  • Red Hat Enterprise Linux 7.

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content