background image
118
Chapter 3
Internet Protocols
The following sections describe the two protocols at this layer:
Transmission Control Protocol (TCP)
User Datagram Protocol (UDP)
Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)
takes large blocks of information from
an application and breaks them into segments. It numbers and sequences
each segment so that the destination's TCP protocol can put the segments
back into the order the application intended. After these segments are
sent, TCP (on the transmitting host) waits for an acknowledgment of the
receiving end's TCP virtual circuit session, retransmitting those that aren't
acknowledged.
Before a transmitting host starts to send segments down the model, the
sender's TCP protocol contacts the destination's TCP protocol to establish a
connection. What is created is known as a
virtual circuit
. This type of com-
munication is called
connection-oriented
. During this initial handshake, the
two TCP layers also agree on the amount of information that's going to be
sent before the recipient's TCP sends back an acknowledgment. With every-
thing agreed upon in advance, the path is paved for reliable communication
to take place.
TCP is a full-duplex, connection-oriented, reliable, and accurate pro-
tocol, but establishing all these terms and conditions, in addition to error
checking, is no small task. TCP is very complicated and, not surprisingly,
costly in terms of network overhead. And since today's networks are
much more reliable than those of yore, this added reliability is often
unnecessary.
TCP Segment Format
Since the upper layers just send a data stream to the protocols in the Trans-
port layers, I'll demonstrate how TCP segments a data stream and prepares
it for the Internet layer. The Internet layer then routes the segments as pack-
ets through an internetwork. The packets are handed to the receiving host's
Host-to-Host layer protocol, which rebuilds the data stream to hand to the
upper-layer applications or protocols.
Figure 3.3 shows the TCP segment format. The figure shows the different
fields within the TCP header.
Copyright ©2002 SYBEX, Inc., Alameda, CA
www.sybex.com