Week 13 - TCP (transport layer protocol) Flashcards
Is TCP simplex, half-duplex, or full-duplex
full-duplex
Segment sequence numbers are independent in each direction.
In a TCP segment, what does the sequence number refer to?
The first byte of data in the segment.
What is the checksum for in a TCP segment?
Ensures entire TCP segment is not corrupt.
Calculated only at receiver unlike network layer IP datagram.
How is TCP flow control implemented?
TCP sender has receive window (rwnd) variable
Is TCP connection or connectionless?
connection - reliability
How is TCP error control implemented? (4 mechanisms)
Acknowledgements
Sequence numbers
Retransmission
Checksum
What does the value in the acknowledgment field in a TCP segment define?
The byte number of the next byte a party expects to receive.
The ACK number is cumulative
What are the 2 types of retransmission in TCP?
Timeout
Three Duplicate ACK segments
How does TCP detect congestion?
By observing the cause of retransmission.
- Timeout indicates strong congestion
- Three duplicate ACKS indicates weak congestion
What is the TCP congestion window?
It’s similar to rwnd but this time it’s not about the receiver buffer but rather the congestion perceived by the sender based on retransmission.
What is MSS?
Maximum TCP segment payload size. It’s similar to MTU which is correlated to data-link layer frame.
How does the TCP congestion control algorithm work?
AKA how is the cwnd adjusted (MSS)?
Uses 2 components:
- Slow start (exponential) doubles per RTT and continues until ssthresh reached. Whenever a timeout or 3dupACKs occurs, the ssthresh is half of the current cwnd
- cwnd increases linearly beyond the ssthresh.