TCP/IP

Video: MPEG-1 file (30MB)

The Internet Protocol, or IP, packet forms the basis of the operation of the entire Internet. Each packet contains the data to be transmitted, plus an address field whose contents include the sender's and recipient's IP addresses. These numbers correspond to the post code and street number on a post card, i.e. the packet is delivered using the IP number. As with a postcard, an IP packet can take different routes and, especially during busy periods, get delayed or lost on the way.
Such data packets, which can be compared to unregistered mail, are also called datagrams or connectionless-network-layer packets. The success of the Internet is founded on the way that IP packets are simple and fast to pass on, i.e. route, from one network to another, because there is no need to keep a record of each packet, or to stop and wait for acknowledgements at each intermediate node.

For most purposes, however, it is necessary that all the data chopped up into packets arrive at its destination unchanged and in the right order. For this, TCP (Transport Control Protocol) has been defined. With TCP, the receiver tells the sender if it got all the consecutively numbered packets, or whether some should be sent again. If nothing is heard from the receiver, it may be that the acknowledgements have simply got lost, or the connection has broken. In this situation, the sender performs retransmissions at increasingly long intervals, until finally, usually after several minutes, it decides to break the connection. TCP is so highly developed on the Internet that it can be used to establish functioning, but slow, connections that work even if half the packets get lost on the way.

Not all applications, for instance Internet phone calls, can wait for retransmission of lost packets, and so they are designed to use unreliable datagrams. Alongside TCP, Unreliable Datagram Protocol (UDP) has been defined, which allows, for example, speech information to be sent in RTP (Real Time Protocol) packets with time stamps.

Because a computer can have several connections at once, the connection protocol generally uses the port numbers of the sender and receiver. These can be compared to post boxes inside a building. The receiving program looks at the messages received by its post box and sorts them into separate piles according to their sender, to wait for a reply, e.g. a web page.

The predecessor to the Internet, the ARPANET set up in 1969, originally used the NCP protocol instead of TCP/IP. Nevertheless, the year of its inception is considered to mark the birth of the Internet, because it was in the ARPANET that the IP address mechanism and the most important basic applications, such as file transfer (FTP), terminal connections (TELNET) and electronic mail, were developed. Also, TCP/IP was developed in response to the need to link the ARPANET with other networks into a network of networks, i.e. the Internet.

The development of the Internet can be followed from the RFC document collection. In 1980, TCP/IP became the US Defense Department's (DoD) officially approved standard (RFC 760). In 1983, the ARPANET adopted TCP/IP, and the Internet's conquest of the world began.