TCP/IP

From Canonica AI

Introduction

The Transmission Control Protocol/Internet Protocol (TCP/IP) is a suite of communication protocols used to interconnect network devices on the internet. TCP/IP can also be used as a communications protocol in a private computer network (an intranet or an extranet).

Overview

The Internet Protocol Suite, also known as TCP/IP, is the foundation of all modern internet. The suite gets its name from two of the most important protocols in it: the Transmission Control Protocol (TCP) and the Internet Protocol (IP), which were also the first two networking protocols defined. Today's IP networking represents a synthesis of several developments that began to evolve in the 1960s and 1970s, namely the Internet and LANs (Local Area Networks), which emerged in the mid- to late-1980s, together with the advent of the World Wide Web in early 1990s.

A computer network showing interconnected devices using TCP/IP
A computer network showing interconnected devices using TCP/IP

Protocols in the TCP/IP stack

The TCP/IP model and related protocol suite is the foundation of the internet and, more generally, network communication. Operating at various functional layers, these protocols enable diverse types of network hardware and software to communicate.

Internet Protocol (IP)

The Internet Protocol (IP) is the principal communications protocol in the Internet protocol suite for relaying datagrams across network boundaries. Its routing function enables internetworking, and essentially establishes the Internet.

Transmission Control Protocol (TCP)

The Transmission Control Protocol (TCP) is one of the main protocols in TCP/IP networks. Whereas IP handles actual delivery of the data, TCP keeps track of 'segments' - the individual units of data transmission that a message is divided into for efficient routing through the network.

User Datagram Protocol (UDP)

The User Datagram Protocol (UDP) uses a simple connectionless communication model with a minimum of protocol mechanisms. UDP provides checksums for data integrity, and port numbers for addressing different functions at the source and destination of the datagram.

Internet Control Message Protocol (ICMP)

The Internet Control Message Protocol (ICMP) is a supporting protocol in the Internet protocol suite. It is used by network devices, like routers, to send error messages indicating, for example, that a requested service is not available or that a host or router could not be reached.

TCP/IP Architecture

The TCP/IP model is based on a five-layer model for networking. From bottom (the link) to top (the user application), these are the physical, data link, network, transport, and application layers. Not all layers are completely defined by the model, so these layers are "filled in" by other standards and protocols.

Physical Layer

The physical layer of TCP/IP describes the physical characteristics of the network, including the types of cables used to connect devices, the types of connectors used, how long the cables can be, and so on.

Data Link Layer

The data link layer is responsible for the reliability of the physical link established at the first layer. It provides a way for a device to send and receive data frames across the network.

Network Layer

The network layer is responsible for receiving frames from the data link layer and delivering them to their intended destinations based on the addresses contained inside the frame. The network layer finds the destination by using logical addresses, such as IP addresses.

Transport Layer

The transport layer is responsible for providing mechanisms for the sending of data between devices over a network. These mechanisms can be either reliable or unreliable; reliable transport includes error-checking mechanisms to ensure data is received intact and in order, and retransmission of lost or corrupted data.

Application Layer

The application layer is responsible for providing services to the user of the network. These services include things like file transfer, electronic mail, and other network software services.

TCP/IP Applications

TCP/IP has been used extensively in internet and intranet applications, and its use in industrial control applications such as SCADA is growing. Examples of applications that use TCP/IP include the World Wide Web, email, remote administration, and file transfer.

See Also