NOTE: Using software to mass-download the site degrades the server and is prohibited.
If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.

The Book is Here... and Now On Sale!

The whole site in one document for easy reference!
The TCP/IP Guide

Google
Web TCP/IP Guide






Table Of Contents  The TCP/IP Guide
 9  TCP/IP Lower-Layer (Interface, Internet and Transport) Protocols (OSI Layers 2, 3 and 4)
      9  TCP/IP Transport Layer Protocols
           9  Transmission Control Protocol (TCP) and User Datagram Protocol (UDP)
                9  TCP/IP Transmission Control Protocol (TCP)
                     9  TCP Overview, Functions and Characteristics

Previous Topic/Section
TCP Overview, History and Standards
Previous Page
Pages in Current Topic/Section
1
2
Next Page
TCP Characteristics: How TCP Does What It Does
Next Topic/Section

TCP Functions: What TCP Does
(Page 2 of 2)

Functions Not Performed By TCP

TCP does so much that sometimes it is described as doing “everything” an application needs to use an internetwork. I may even have been guilty of this myself. However, the protocol doesn't do everything. It has limitations and certain areas that its designers specifically did not address. Among the notable functions TCP does not perform include:

  • Specifying Application Use: TCP defines the transport protocol. It does not describe specifically how applications are to use TCP.

  • Providing Security: TCP does not provide any mechanism for ensuring the authenticity or privacy of data it transmits. If these are needed they must be accomplished using some other means, such as IPSec, for example.

  • Maintaining Message Boundaries: TCP sends data as a continuous stream, not as discrete messages. It is up to the application to specify where one message ends and the next begins.

  • Guaranteeing Communication: Wait a minute… isn't the whole point of TCP supposed to be that it guarantees data will get to its destination? Well, yes and no. J TCP will detect unacknowledged transmissions and re-send them if needed. However, in the event of some sort of problem that prevents reliable communication, all TCP can do is “keep trying”. It can't make any guarantees because there are too many things out of its control. Similarly, it can attempt to manage the flow of data, but cannot resolve every problem.

This last point might seem a bit pedantic, but is important to keep in mind, especially since the tendency is to think of TCP as somewhat “bulletproof”. The overall success of communication depends entirely on the underlying internetwork and the networks that constitute it. A chain is as strong as its weakest link, and if there is a problem at the lower layers, nothing TCP can do will guarantee successful data transfer.

Key Concept: TCP provides reliable communication only by detecting failed transmissions and re-sending them. It cannot guarantee any particular transmission, because it relies on IP, which is unreliable. All it can do is keep trying if an initial delivery attempt fails.



Previous Topic/Section
TCP Overview, History and Standards
Previous Page
Pages in Current Topic/Section
1
2
Next Page
TCP Characteristics: How TCP Does What It Does
Next Topic/Section

If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support!
Donate $2
Donate $5
Donate $10
Donate $20
Donate $30
Donate: $



Home - Table Of Contents - Contact Us

The TCP/IP Guide (http://www.TCPIPGuide.com)
Version 3.0 - Version Date: September 20, 2005

© Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.