Please Whitelist This Site?

I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :)

If you like The TCP/IP Guide, please consider the download version. It's priced very economically and you can read all of it in a convenient format without ads.

If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on tcpipguide.com". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||tcpipguide.com^$document". Then just click OK.

Thanks for your understanding!

Sincerely, Charles Kozierok
Author and Publisher, The TCP/IP Guide


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!

Read offline with no ads or diagram watermarks!
The TCP/IP Guide

Custom Search







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, Functions and Characteristics
Previous Page
Pages in Current Topic/Section
1
23
Next Page
TCP Functions: What TCP Does
Next Topic/Section

TCP Overview, History and Standards
(Page 1 of 3)

Between them, layers three and four of the OSI Reference Model represent the interface between networking software (the applications that need to move data across networks) and networking hardware (the devices that carry the data over networks). Any protocol suite must have a protocol or set of protocols that handles these layer three and layer four functions.

The TCP/IP protocol suite is named for the two main protocols that provides these capabilities, allowing software to run on an internetwork: the Transmission Control Protocol (TCP) and the Internet Protocol (IP). IP deals with internetwork datagram delivery and routing, while TCP handles connections and provides reliability. What's interesting, however, is that in the early days of the protocol suite, there was, in fact, no “TCP/IP” at all.

TCP History

Due to its prominent role, the history of TCP is impossible to describe without going back to the early days of the protocol suite as a whole. In the early 1970s, what we know of today as the global Internet was a small research internetwork called the ARPAnet, named for the United States Defense Advanced Research Projects Agency (DARPA or ARPA). This network used a technology called the Network Control Protocol (NCP) to allow hosts to connect to each other. NCP did approximately the jobs that TCP and IP do together today.

Due to limitations in the NCP, development began on a new protocol that would be better suited to a growing internetwork. This new protocol, first formalized in RFC 675, was called the Internet Transmission Control Program (TCP). Like its predecessor NCP, TCP was responsible for basically everything that was needed to allow applications to run on an internetwork. Thus, TCP was at first both TCP and IP.

As I explain in detail in the topic describing the history of TCP/IP as a whole, several years were spent adjusting and revising TCP, with version 2 of the protocol documented in 1977. While the functionality of TCP was steadily improved, there was a problem with the basic concept behind the protocol. Having TCP by itself handle both datagram transmissions and routing (layer three functions) as well as connections, reliability and data flow management (layer four functions) meant that TCP violated key concepts of protocol layering and modularity. TCP forced all applications to use the layer four functions in order to use the layer three functions. This made TCP inflexible, and poorly-suited to the needs of applications that only need the lower-level functions and not the higher-level ones.

As a result, the decision was made to split TCP into two: the layer four functions were retained, with TCP renamed the Transmission Control Protocol (as opposed to Program). The layer three functions became the Internet Protocol. This split was finalized in version 4 of TCP, and so the first IP was given “version 4” as well, for consistency. Version 4 of TCP was defined in RFC 793, Transmission Control Protocol, published September 1981, and is still the current version of the standard.

Even though it is more than 20 years old and is the first version most people have ever used, version 4 was the result of several years work and many earlier TCP versions tested on the early Internet. It is therefore a very mature protocol for its age. A precocious protocol, you could say. (To be fair, many additional features and modifications to how TCP works have been described in other standards, rather than upgrading the main document.)


Previous Topic/Section
TCP Overview, Functions and Characteristics
Previous Page
Pages in Current Topic/Section
1
23
Next Page
TCP Functions: What TCP 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.