This weekend I was working on a project with my children who wanted to understand how the internet started and I thought would post part of the answers on here as well.
The Internet protocol suite resulted from research and development conducted by the Defense Advanced Research Projects Agency (DARPA) in the late 1960s. It’s useful to understand the backdrop of what was happening at the same time to contextualise the work developed at that time. The Cold War was at its height and huge tensions existed between North America and the Soviet Union. There was fear that if war broke out then communications could be disrupted. The US realised it needed a communications system that could not be affected by a Soviet nuclear attack. The conditions at the time drove the research and ultimately the iterative steps that led to the web as we know it today.
In 1965, Lawrence Roberts was able to conduct an experiment that allowed two computers in different places to communicate. This experimental link used a telephone line with an acoustically coupled modem, and transferred digital data using packets.
TCP/IP stands for Transmission Control Protocol/Internet Protocol. The term is used to describe a set of protocols that govern how data moves through a network. The Internet protocol suite is the conceptual model and set of communications protocols used online.
The four layers of the TCP/IP model are as follows:
- Datalink layer: The data link layer defines how data should be sent, handles the physical act of sending and receiving data, and is responsible for transmitting data between applications or devices on a network.
Typical devices on this layer are your ethernet cable, a network interface card (NIC), or a wireless network.
This layer can also be referred to as the link layer, network access layer, network interface layer, or physical layer. - Internet layer: The internet layer is responsible for sending packets from a network and controlling their movement across a network to ensure they reach their destination.
- Transport layer: This is the latter that divides data into individual packets and is responsible for the reliable connection between two devices. It ensures that data packets are sent without errors and in sequence and obtains the acknowledgment that the destination device has received the data packets.
- Application layer: This is the level that users typically interact with, such as email systems and messaging platforms.
The diagram below illustrates what happens at each layer: