The duplicate ACK repeats the same next byte wanted.

highlighted = computed this step

Duplicate ACK repeats the same number

The duplicate ACK repeats 1001 instead of moving forward.

duplicate ACK=1001\text{duplicate ACK}=1001
Duplicate ACK bytesThe duplicate ACK header is decoded from exact bytes.Duplicate ACK header160 bits / 20 bytes0x01bb9c4000001389000003e95010100000000000byte 0byte 1byte 2byte 300000001101110111001110001000000byte 4byte 5byte 6byte 700000000000000000001001110001001byte 8byte 9byte 10byte 1100000000000000000000001111101001byte 12byte 13byte 14byte 1501010000000100000001000000000000byte 16byte 17byte 18byte 1900000000000000000000000000000000source-port443destination-port40000sequence-number5001acknowledgment-number1001data-offset5reserved0x0flags0x10window0x1000checksum0x0000urgent-pointer0

The timeline shows the repeat

The server-side messages both represent waiting for the same client byte.

duplicate count=1\text{duplicate count}=1
Duplicate ACKA toy TCP timeline shows a missing data segment and repeated ACK for the same next byte.Duplicate ACKClientESTABLISHEDESTABLISHEDESTABLISHEDServerESTABLISHEDwaitingwaitingDATA hi lost seq=1001 ACK, PSHACK waits seq=5001 ACKduplicate ACK seq=5001 ACK

The gap is exact

The gap begins at sequence 1001 and has length 2 bytes.

1001+21001+2
Duplicate ACK bytesThe duplicate ACK header is decoded from exact bytes.Duplicate ACK header160 bits / 20 bytes0x01bb9c4000001389000003e95010100000000000byte 0byte 1byte 2byte 300000001101110111001110001000000byte 4byte 5byte 6byte 700000000000000000001001110001001byte 8byte 9byte 10byte 1100000000000000000000001111101001byte 12byte 13byte 14byte 1501010000000100000001000000000000byte 16byte 17byte 18byte 1900000000000000000000000000000000source-port443destination-port40000sequence-number5001acknowledgment-number1001data-offset5reserved0x0flags0x10window0x1000checksum0x0000urgent-pointer0

Summary

A duplicate ACK does not fill the gap; it points back to the missing byte.

ACK=1001\text{ACK}=1001
Duplicate ACK bytesThe duplicate ACK header is decoded from exact bytes.Duplicate ACK header160 bits / 20 bytes0x01bb9c4000001389000003e95010100000000000byte 0byte 1byte 2byte 300000001101110111001110001000000byte 4byte 5byte 6byte 700000000000000000001001110001001byte 8byte 9byte 10byte 1100000000000000000000001111101001byte 12byte 13byte 14byte 1501010000000100000001000000000000byte 16byte 17byte 18byte 1900000000000000000000000000000000source-port443destination-port40000sequence-number5001acknowledgment-number1001data-offset5reserved0x0flags0x10window0x1000checksum0x0000urgent-pointer0