previous |
start |
next
TCP Operation
In order to provide reliable, connection oriented service, TCP
breaks the incoming application byte stream into
segments. The maximum size of a segment is called
the MSS.
A segment consists of a header, and some data.
The last data byte in each segment is identified with a 32-bit
byte count field in the segment header.
- When a segment is received correct and intact, a special
acknowledgement segment is returned to the sending
TCP containing the byte count of the last byte correctly
received.
- The network service can fail to deliver a segment. If the
sending TCP waits for too long[2] for an acknowledgment, it times out and
resends the segment, on the assumption that the datagram has been
lost.
- The network can potentially deliver duplicated segments, and
can deliver segments out of order. TCP buffers or discards out of
order or duplicated segments appropriately, using the byte count
for identification.
[2] The TCP
timeout algorithm uses observed round trip times,
and measures of their variability, to calculate a continuously
updated best estimate of when to resend. See the tutorial for a discussion on this.
previous |
start |
next