
Instead, TCP groups bytes into segments and passes them to IP for delivery.
TCP offers reliability by providing connection-oriented, end-to-end reliable packet delivery through an
internetwork. It does this by sequencing bytes with a forwarding acknowledgment number that indicates to the
destination the next byte the source expects to receive. Bytes not acknowledged within a specified time period are
retransmitted. The reliability mechanism of TCP allows devices to deal with lost, delayed, duplicate, or misread
packets. A time-out mechanism allows devices to detect lost packets and request retransmission.
TCP offers efficient flow control, which means that, when sending acknowledgments back to the source, the
receiving TCP process indicates the highest sequence number it can receive without overflowing its internal
buffers. Full-duplex operation means that TCP processes can both send and receive at the same time.
Finally, TCP's multiplexing means that numerous simultaneous upper-layer conversations can be multiplexed
over a single connection.
TCP Connection Establishment
To use reliable transport services, TCP hosts must establish a connection-oriented session with one another.
Connection establishment is performed by using a "three-way handshake" mechanism.
A three-way handshake synchronizes both ends of a connection by allowing both sides to agree upon initial
sequence numbers. This mechanism also guarantees that both sides are ready to transmit data and know that the
other side is ready to transmit as well. This is necessary so that packets are not transmitted or retransmitted during
session establishment or after session termination.
Each host randomly chooses a sequence number used to track bytes within the stream it is sending and receiving.
Then, the three-way handshake proceeds in the following manner:
The first host (Host A) initiates a connection by sending a packet with the initial sequence number (X) and SYN
bit set to indicate a connection request. The second host (Host B) receives the SYN, records the sequence number
X, and replies by acknowledging the SYN (with an ACK = X + 1). Host B includes its own initial sequence
number (SEQ = Y). An ACK = 20 means the host has received bytes 0 through 19 and expects byte 20 next. This
technique is called forward acknowledgment. Host A then acknowledges all bytes Host B sent with a forward
acknowledgment indicating the next byte Host A expects to receive (ACK = Y + 1). Data transfer then can begin.
Positive Acknowledgment and Retransmission (PAR)
A simple transport protocol might implement a reliability-and-flow-control technique where the source sends one
packet, starts a timer, and waits for an acknowledgment before sending a new packet. If the acknowledgment is
not received before the timer expires, the source retransmits the packet. Such a technique is called positive
acknowledgment and retransmission (PAR).
By assigning each packet a sequence number, PAR enables hosts to track lost or duplicate packets caused by
network delays that result in premature retransmission. The sequence numbers are sent back in the
acknowledgments so that the acknowledgments can be tracked.
PAR is an inefficient use of bandwidth, however, because a host must wait for an acknowledgment before
sending a new packet, and only one packet can be sent at a time.
Summary of Contents for PIX 520 - PIX Firewall 520
Page 45: ...Copyright 2001 Cisco Systems Inc ...
Page 68: ...Copyright 2001 Cisco Systems Inc ...
Page 74: ...Copyright 2001 Cisco Systems Inc ...
Page 87: ...Copyright 2001 Cisco Systems Inc ...
Page 92: ...Copyright 2001 Cisco Systems Inc ...
Page 108: ......
Page 184: ......
Page 197: ...Copyright 2001 Cisco Systems Inc ...
Page 200: ......
Page 232: ...Copyright 2001 Cisco Systems Inc ...
Page 246: ...Copyright 2001 Cisco Systems Inc ...