6.3 TCP

 <  Day Day Up  >  

TCP is a connection-oriented protocol that provides reliable, stream-oriented connections in an IP environment. TCP corresponds to the transport layer (Layer 4) of the OSI reference model.

TCP guarantees delivery of packets to the application layer. This reliable delivery feature is based on sequence numbers that coordinate which data has been transmitted and received. TCP can retransmit any lost data. In addition, TCP senses network delay patterns and dynamically throttles data to prevent bottlenecks. Faster-sending hosts can be slowed down to let slower hosts catch up. TCP uses a number of control flags to manage the connection.

6.3.1 TCP Features

Features of TCP include the following:


Stream data transfer

TCP delivers data as a continuous stream of bytes identified by sequence numbers. This saves time, since applications do not have to break data into smaller bits before sending. Instead, TCP groups bytes into segments and passes them to IP for delivery. The segments are later assembled at the destination according to the packet sequence numbers.


Reliability

TCP ensures reliability by sequencing bytes with a forwarding acknowledgment number. Bytes that are not acknowledged within a specified time period are retransmitted.


Efficient flow control

TCP provides efficient flow control: 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

Full-duplex operation allows TCP to both send and receive data at the same time.

6.3.2 TCP Packet Field Descriptions

The following descriptions summarize the TCP packet fields illustrated in Figure 6-2:


Source port and destination port

Indicates the ports on the sending and receiving end of the connection


Sequence number

Indicates the unique number assigned to the first byte of data in the segment


Acknowledgment number

Provides the sequence number of the next byte of data expected on the receiving end


Data offset

Indicates the number of 32-bit words in the TCP header


Reserved

Reserved for future use


Flags

Provide control markers such as the SYN, ACK, and FIN bits used for connection establishment and termination


Window

Indicates the size of the receiving window (buffer) for incoming data


Checksum

Verifies the integrity of received data


Urgent pointer

Marks the start of urgent data


Options

Includes numerous TCP options


Data

Includes the information payload

Figure 6-2. A representation of TCP packet fields
figs/sw_0602.gif
 <  Day Day Up  >  


Security Warrior
Security Warrior
ISBN: 0596005458
EAN: 2147483647
Year: 2004
Pages: 211

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net