The Internet Chronicles – Part 3 of 12: A Language Everyone Can Understand

Andrei Mihai

We take it for granted nowadays, but the internet is one of the most impactful inventions of modern times – possibly even of all time. But how did it all start? The story of the internet is a fascinating journey through the minds of visionary thinkers and relentless innovators, many of them coming from mathematics and computer science. In this series, we will dive into some of the stories and contributions of the trailblazers who laid the foundations for the interconnected world we live in today.

From the initial concepts to the development of the global network we see today, each part of this 12-part series will explore the pivotal moments and key figures who turned the dream of a connected world into a reality. We will journey back to the early days of computer science and the internet, uncovering the ideas and collaborative efforts that paved the way for the digital age.

We previously looked at the vision that started the internet and packet switching, the technology that made it all possible. However, a common “language” for all networks was still missing.

Different computer networks were already emerging in the 1970s. But a unifying thread that could connect all of them was missing. AI-generated image (Midjourney).

In 1972, Bob Kahn faced a serious challenge. The American electrical engineer had joined the Defense Advanced Research Projects Agency (DARPA), which was already making waves with its innovative way of connecting computers. Yet, the concept of networking was still in its infancy and a “network of networks” was still out of reach.

Computers were large, expensive, and often operated in isolation. The idea of linking computers together to share information and resources was gaining traction, but it was still a new concept and there was no standardized way to do it. Networks were being built but were limited to specific organizations or geographic locations, with different networks often using different communication protocols. This fragmentation made it nearly impossible for these networks to communicate with each other.

There was a need to tie everything together, and this unifying effort was pioneered at ARPANET.

We’ve mentioned ARPANET before in our chronicles — a project funded by the U.S. Department of Defense’s Advanced Research Projects Agency (DARPA) that would go on to become the precursor to the modern internet. However, at the time ARPANET had a significant limitation: it was designed to connect only a small number of nodes, all using the same proprietary protocol; a protocol that was not shared by other networks.

Simply put, for the internet to truly evolve, it needed a basic, universal communication protocol that could work with both radio and satellite networks, and with all types of packet switching. This was the challenge Kahn was faced with – the challenge of creating a framework that could connect all the different networks with different architectures and protocols into a single, cohesive system.

Kahn was joined in this quest by Vint Cerf; the two would go on to be awarded the ACM A.M. Turing Award for their work. Cerf is in fact a regular attendee of the Heidelberg Laureate Forum (HLF), which celebrates the Turing Award and other prizes in mathematics and computer science, and happens to also host this Blog – but let’s not get ahead of ourselves).

Robert Elliot Kahn (ACM A.M. Turing Award – 2004). Image credits: HLFF / Badge

An Informal Group That Would Shape the Internet

To link computer networks together, Kahn and Cerf had to do a bit of human networking first. They had to draw information from different people and study groups and see what type of protocol would work best for everyone.

Cerf was excellently placed for that. As a high schooler, he was already working on the Apollo program, writing statistical analysis software for engines. After an undergraduate degree from Stanford, he oscillated between academia and the nascent computer industry, ultimately completing an M.S. degree in 1970 and his PhD in 1972 from the University of California, Los Angeles (UCLA). In the process, he joined a group called the International Network Working Group.

Vinton Gray Cerf (ACM A.M. Turing Award – 2004). Image credits: HLFF / Badge

The group was set up as an informal meet-up, but it quickly gathered many of the prominent computer science researchers of the time. It featured some of the brightest minds working in computers and networking, and Cerf chaired it. It was at that group that Cerf and Kahn would discuss ideas and make sure that their proposed protocol could include all existing networks.

In 1973, the two came up with a general formulation of the protocol. Cerf credits researchers at the CYCLADES network in France as important contributors to this protocol. Unlike ARPANET, the CYCLADES network aimed to facilitate internetworking. Several elements from CYCLADES are also incorporated into the internet (for instance, the layered architecture and the concept of a datagram).

Ultimately, the paper typically credited as the “inception” of the protocol came out in 1974. They called it TCP/IP (Transmission Control Protocol / Internet Protocol).

How TCP/IP Works

When a computer or device wants to send data over a network, TCP first breaks the data into smaller units called packets. Each packet contains not only a piece of the overall data payload but also header information, which includes metadata such as sequence numbers and port numbers. Sequence numbers are particularly important because they allow TCP to reassemble the packets in the correct order at the destination. This general principle was already becoming established as a good practice, but TCP took it further.

Before any data is transmitted, TCP initiates a “handshake” process to establish a connection between the sender and receiver. This three-step handshake ensures that both devices are ready to communicate. The sender sends a SYN (synchronize) message to the receiver, the receiver responds with a SYN-ACK (synchronize-acknowledge), and finally, the sender sends an ACK (acknowledge) message back to the receiver. This process establishes a reliable communication channel.

Depiction of the TCP “handshake”. CC BY 3.0. Slightly edited by the author from Wiki Commons.

Once the connection is established, the packets are transmitted across the network. This is where IP comes into play. The Internet Protocol is responsible for addressing and routing each packet to its intended destination. Every device on a TCP/IP network is assigned a unique IP address, which acts like a mailing address for sending and receiving packets. The IP header within each packet contains both the source and destination IP addresses.

This simple idea, which we take for granted nowadays, is a core technology that enables the Internet to work. Of course, in order for all this to work, the packets also have to be arranged and sent to the right destination.

This process is handled by computers or devices we now call routers. Routers use the IP address information to determine the best path through the network, taking into account factors such as network topology, traffic congestion, and routing policies. Packets may take different paths through the network to reach the same destination, depending on current network conditions.

TCP/IP also accounted for the idea that some packets would be lost along the way. Although this wasn’t expected to happen too often in practice, it still needed to be accounted for. Each data packet was assigned a sequence number to ensure correct order and detect losses. Additionally, a checksum accompanies each data packet to verify its integrity during transmission. The above-mentioned 1974 paper reads:

“No transmission can be 100 percent reliable. We propose a timeout and positive acknowledgement mechanism which will allow TCP’s to recover from packet losses from one HOST to another. A TCP transmits packets and waits for replies (acknowledgements) that are carried in the reverse packet stream. If no acknowledgement for a particular packet is received, the TCP will retransmit. It is our expectation that the HOST level retransmission mechanism, which is described in the following paragraphs, will not be called upon very often in practice.”

Cerf says this was desirable to producing delay. In a brief interview at the 11th HLF in 2024, he mentioned that even if several packets are lost, it is still often preferable to latency.

“We had learned that that a reliable, sequenced delivery system was not enough. Our system had to use voice, video, and data. Some of the video and some of the data were more valuable if the packets got there faster even if they all didn’t get there. Radar tracking is another example – you don’t want to know where the missile was you want to know where it is.”

Why TCP Was So Instrumental in the Internet

The idea behind TCP/IP was to create a “network of networks”, something that could enable all the networks in the world to speak the same language. It was a project so ambitious that – even in hindsight – it seems audacious.

It was, additionally, not something you can complete at the first try and move on. Cerf and Kahn (along with other computer scientists) brought several upgrades in the following couple of years. The protocol was improved with the idea that networks should have no single point of failure or centralized control.

In 1977, TCP/IP was put to a major test. The protocol was used to connect three different networks: ARPANET, a packet radio network, and a satellite network (located in the US, UK, and Norway respectively). This demonstration proved that TCP/IP could effectively interconnect disparate networks and handle the complexities of routing data between them. Several other tests were carried out between 1978 and 1983, showing the robustness of TCP/IP.

To get an idea of how impactful this protocol was, in 1982, the US Department of Defense declared TCP/IP as its standard protocol for all military networking. Even major computer companies, which were working on their own competing protocols, gave up and switched to TCP/IP.

The protocol was so good that its 4th iteration, the Internet Protocol version 4 (IPv4), developed in 1983, is still in use on the Internet, alongside its current successor, Internet Protocol version 6 (IPv6).

The use of TCP/IP also facilitated the development of new applications and services. With a common networking protocol in place, developers could create applications that worked across different networks, without having to worry about the specifics of each network’s architecture. This standardization paved the way for the development of the World Wide Web, email, file transfer, and other services that are now an integral part of our daily lives.

While TCP/IP has been remarkably successful, it is not without its challenges and criticisms. One of the most significant challenges facing TCP/IP today is the issue of security. When Cerf and Kahn developed TCP/IP, the internet was a relatively small and trusted network of researchers and academics. Security was not a primary concern. However, as the internet has grown and become more open, security has become a major issue. TCP/IP was not designed with strong security features, and this has led to vulnerabilities that are often exploited by cybercriminals. Despite some updates, security is now a key concern of such protocols. Cerf himself has addressed this at the HLF several times.

“I used to feel anonymity was very important and should be preserved at all costs, and now I think I was wrong and accountability is very important. If you can’t identify the parties, you can’t keep them accountable,” he said in the same interview.

There are also ways through which this can be addressed, Cerf added.

First of all, we need to get IPv6 running everywhere, especially with the number of devices that are coming online. Secondly, we need high-quality identity and authentication. We also have weaknesses in the system that allow parties to take control where they shouldn’t, and there are reports of this all the time and we keep fighting this battle. In spite of that, I think the internet is doing constructive and useful things for a lot of people and it’s giving people a lot of work to do and information to process. So there’s a net benefit (no pun intended) to the internet, but there are also big risk factors we have to deal with. We need to work harder on the policy and security side, and we need to keep parties accountable for their actions.”

The importance of TCP/IP cannot be overstated, and the contributions of Vint Cerf and Robert Kahn were essential. Their work laid the foundation for the modern internet and transformed the way we communicate, share information, and interact with the world. Without TCP/IP, the internet as we know it today would not exist.

However, while the core of the internet was starting to take shape, numerous small things were missing. After all, could you even imagine navigating the internet without hyperlinks or a computer mouse? In the next installment, we’ll have a look at several impactful contributions that made the internet a truly workable environment.

The post The Internet Chronicles – Part 3 of 12: A Language Everyone Can Understand originally appeared on the HLFF SciLogs blog.