Computers on networks need to agree on how to establish connections, and then how to maintain the connection and exchange data in ways that can be understood. In the early days of computer networking several methods for doing this were invented, but the one that saw widespread adoption and that is now universal on the Internet is known as TCP/IP. This is an acronym for Transmission Control Protocol/Internet Protocol. It was invented and developed by the USA Department of Defense in the late 1970s and chosen in 1983 to be the standard networking protocol for ARPANET, which was the forerunner of the Internet.
What are TCP and IP?
TCP/IP is made up of two protocols that operate in a 4-layer networking stack. While the two protocols are separate, they are nearly always used together, and the term TCP/IP is used to refer to them as a combined entity. The two protocols are:
Internet Protocol (IP) - this is the protocol that allows nodes on the network to be uniquely identified. It is also responsible for the delivery of data packets from source nodes (devices, servers, etc.) to destination nodes. Each node on a network that needs to communicate with others is given a unique IP address that can be used to identify it, and also to route data to it. IP is responsible for adding target IP address information to data packets and for sending the packets out over the network. The Internet using TCP/IP is a packet-switched network, and data packets travel via multiple routes to their destination. IP does not check that packets arrived at the destination (TCP does - see below). Packets sent using IP do not arrive at the destination in the same order they were sent, due to different times taken to traverse different network routes. The design of the IP protocol to send over multiple network paths was done to make the ARPANET highly resilient to attacks and damage.
Transmission Control Protocol (TCP) - this is the protocol that is responsible for maintaining a connection between communicating network nodes, and for ensuring that data transfers are completed successfully. TCP uses a request-response sequence to establish a connection between network nodes using IP addresses. Upon successful connection setup, TCP uses the information contained in the IP header of data packets to check that all the packets that were sent have been received, and then to reassemble the transmitted data on the receiving device. If any packets are missing at the destination, then TCP sends a request to the sender asking for additional copies of the missing data packets to be resent.
Progress, Telerik, Ipswitch, Chef, Kemp, Flowmon, MarkLogic, Semaphore and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See
Trademarks for appropriate markings.