LINFO

TCP Definition



Transmission control protocol (TCP) is one of the main protocols in TCP/IP (transmission control protocol/Internet protocol), the suite of communications protocols that is used to connect hosts on the Internet and on most other computer networks as well.

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

TCP is a connection-oriented protocol, which means that it establishes and maintains a virtual connection between hosts until such time as the message or messages to be exchanged by the application programs running on them have been exchanged. It divides any message to be transmitted into packets, numbers them, and then forwards them individually to the IP program layer. Although each packet has the same destination IP address, it may get routed differently through the network.

TCP uses error correction and data stream control techniques to ensure that packets to arrive at their intended destinations uncorrupted and in the correct sequence, thereby making the point-to-point connection virtually error-free. Packets are the most fundamental unit of data transmission on TCP/IP networks.

TCP operates at the transport layer, i.e., the middle layer in the OSI (open systems interconnection) seven layer 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. Also operating at the transport layer are UDP (user datagram protocol), RTP (real-time transport protocol) and SCTP (stream control transmission protocol).

TCP is used by most of application protocols that require reliable transmission of all data, such as HTTP (hypertext transfer protocol), FTP (file transfer protocol), SMTP (simple mail transfer protocol) and IMAP (Internet message access protocol).






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