TCP/IP Definition

TCP/IP (transmission control protocol/Internet protocol) is the suite of communications protocols that is used to connect hosts on the Internet and on most other computer networks as well. It is also referred to as the TCP/IP protocol suite and the Internet protocol suite.

A protocol is a mutually agreed-upon format for doing something. With regard to computers, it most commonly refers a set of rules (i.e., a standard) that enables computers to connect and transmit data to one another; this is also called a communications protocol.

TCP/IP was originally designed for the UNIX operating system, and it is built into all of its descendants (i.e., Unix-like operating systems), including Linux and Mac OS X. Network operating systems that have their own networking protocols, such as Novell's Netware, also support TCP/IP.

TCP/IP is designed to make a network robust and automatically recover from the failure of any device on the network. Moreover, it allows the construction of very large networks that require little central management.

TCP/IP takes its name from its two main protocols: transmission control protocol (TCP) and Internet protocol (IP). TCP operates at the transport layer, i.e., the middle layer in the seven layer OSI (open systems interconnection) reference model. This layer is responsible for maintaining reliable end-to-end communications across the network. IP, in contrast, is a network layer protocol, which is the layer just below the transport layer.

Whereas the IP protocol deals only with packets (i.e., the most fundamental unit of TCP/IP data transmission), TCP enables two hosts to establish a connection and exchange streams of data. TCP guarantees delivery of data and also guarantees that packets will be delivered in the same order in which they were sent.

The great success of TCP/IP is the result of the advantages that it offers over other network protocols and protocol suites, including the following:

(1) It is a freely available protocol and not a secret protocol that is owned by a single company. This makes it possible for anyone with sufficient technical knowledge to improve it.

(2) It is compatible with virtually all modern operating systems, and thus it enables almost any system to communicate with any other system.

(3) It is also compatible with virtually all types of computer hardware and network configurations.

(4) It is a routable protocol, which means that it can determine the most efficient path for every packet as it moves through the network. This makes TCP/IP highly scalable and thus the size of the network virtually unlimited (e.g., the Internet).

(5) It provides reliable data delivery. Reliable means that it can guarantee that the data is delivered to its intended destination (e.g., through the use of error checking and the retransmission of corrupted or missing packets).

(6) The use of a single (and relatively simple) addressing scheme, referred to as IP addressing, allows administrators to transfer their knowledge of TCP/IP to any TCP/IP network without the need to learn a new addressing scheme.

The roots of TCP/IP can be traced back to a 1974 article by two Internet pioneers, Vint Cerf and Bob Kahn, titled A Protocol for Packet Network Interconnection, which described TCP. At that time, a communications language called network control protocol (NCP) was used by hosts on the ARPANET (Advanced Research Projects Agency Network), the precursor to the Internet. NCP had numerous limitations, including lack of sufficient robustness, for the still small, but rapidly expanding, supernetwork.

Created October 30, 2005.
Copyright © 2005 The Linux Information Project. All Rights Reserved.