Hundred Three Hundred

RFC 9293 shows the basic three-way handshake with concrete numbers:

  TCP A                                              TCP B
1. CLOSED                                            LISTEN
2. SYN-SENT    --> <SEQ=100><CTL=SYN>              --> SYN-RECEIVED
3. ESTABLISHED <-- <SEQ=300><ACK=101><CTL=SYN,ACK> <-- SYN-RECEIVED
4. ESTABLISHED --> <SEQ=101><ACK=301><CTL=ACK>     --> ESTABLISHED

More than one statement below is true. Select every true one.

A

The handshake exists to measure the round-trip time so the first retransmission timer can be set; sequence numbers are negotiated later, in the first data segment.

B

The two endpoints number their directions independently, so A's 100 and B's 300 have no arithmetic relationship to each other.

C

A SYN segment is allowed to carry data, provided the receiver does not deliver it to the application until the connection is validated.

D

The SYN flag itself consumes one sequence number, which is why B acknowledges 101 after A sent no data at all.

E

B's first byte of application data will carry SEQ=301, not 300.

F

Both endpoints must converge on one shared initial sequence number before data can flow, which is what the third segment confirms.