The client sends two payload bytes, but the toy timeline marks them missing.

highlighted = computed this step

Client sends two bytes

The client sends payload 0x6869 starting at sequence 1001.

data seq=1001\text{data seq}=1001
Data segment bytesThe lost toy TCP segment is decoded from exact header and payload bytes.Lost TCP header160 bits / 20 bytes0x9c4001bb000003e9000013895018100000000000byte 0byte 1byte 2byte 310011100010000000000000110111011byte 4byte 5byte 6byte 700000000000000000000001111101001byte 8byte 9byte 10byte 1100000000000000000001001110001001byte 12byte 13byte 14byte 1501010000000110000001000000000000byte 16byte 17byte 18byte 1900000000000000000000000000000000source-port40000destination-port443sequence-number1001acknowledgment-number5001data-offset5reserved0x0flags0x18window0x1000checksum0x0000urgent-pointer0Payload16 bits / 2 bytes0x6869byte 0byte 10110100001101001payload0x6869

The toy timeline marks it lost

The timeline marks the first data segment as missing before the server can advance its ACK.

messages shown=3\text{messages shown}=3
Data is sentA toy TCP timeline shows a missing data segment and repeated ACK for the same next byte.Data is sentClientESTABLISHEDESTABLISHEDESTABLISHEDServerESTABLISHEDwaitingwaitingDATA hi lost seq=1001 ACK, PSHACK waits seq=5001 ACKduplicate ACK seq=5001 ACK

The payload length is two

The missing payload has length 2 bytes.

payload length=2\text{payload length}=2
Data segment bytesThe lost toy TCP segment is decoded from exact header and payload bytes.Lost TCP header160 bits / 20 bytes0x9c4001bb000003e9000013895018100000000000byte 0byte 1byte 2byte 310011100010000000000000110111011byte 4byte 5byte 6byte 700000000000000000000001111101001byte 8byte 9byte 10byte 1100000000000000000001001110001001byte 12byte 13byte 14byte 1501010000000110000001000000000000byte 16byte 17byte 18byte 1900000000000000000000000000000000source-port40000destination-port443sequence-number1001acknowledgment-number5001data-offset5reserved0x0flags0x18window0x1000checksum0x0000urgent-pointer0Payload16 bits / 2 bytes0x6869byte 0byte 10110100001101001payload0x6869

Summary

A lost segment means the receiver is still waiting for the byte at the data sequence number.

missing byte=1001\text{missing byte}=1001
Data is sentA toy TCP timeline shows a missing data segment and repeated ACK for the same next byte.Data is sentClientESTABLISHEDESTABLISHEDESTABLISHEDServerESTABLISHEDwaitingwaitingDATA hi lost seq=1001 ACK, PSHACK waits seq=5001 ACKduplicate ACK seq=5001 ACK