01Overview

In 1974 Cerf and Kahn published the design of TCP, whose goal was to interconnect different networks — a network of networks. In 1978 TCP was split into TCP and IP: IP offers connectionless best-effort delivery, and TCP adds retransmission, ordering and congestion control on top.

On 1 January 1983 ARPANET switched over to TCP/IP, a date often called the Internet’s birthday. Layering lets the layers below evolve independently: Ethernet, Wi-Fi and fibre all carry IP. And end-to-end congestion control is what kept the whole network stable through exponential growth.

02History

  1. 1974

    Cerf and Kahn propose TCP

    The core protocol for internetworking.

  2. 1978

    TCP and IP split

    The layered design settles.

  3. 1981

    RFC 791 / 793

    The formal specifications of IP and TCP.

  4. 1983

    ARPANET switches to TCP/IP

    The Internet's birthday.

  5. 1988

    Congestion control

    Van Jacobson keeps the network from collapsing.

03Core concepts

Layering

Link, network, transport and application each mind their own business.

IP addressing

Addresses and routing tables carry a packet to its destination network.

Congestion control

Adjust the sending rate from packet loss and delay.

04Hands-on

Do it once — it beats reading it ten times

Implement a tiny reliable transport over UDP: sequence numbers, ACKs and retransmission on timeout

05Self-check

Say it in your own words first, then open the answer. Whatever you cannot explain is what to review next.

Can you explain "Layering"?

Link, network, transport and application each mind their own business.

Can you explain "IP addressing"?

Addresses and routing tables carry a packet to its destination network.

Can you explain "Congestion control"?

Adjust the sending rate from packet loss and delay.

What problem did it solve, and why was there nothing better at the time?

Go back to the history section: how was this done before, and what did it cost?

If you had to build it today, how would you break it down?

Use the hands-on task above: write a plan of at most three steps before you start.

06Key people

V

Vint Cerf

1943 –

Co-designer of TCP/IP.

B

Bob Kahn

1938 –

Co-designer of TCP/IP.

07Further reading

  • TCP/IP IllustratedW. Richard Stevens · 1994
  • The Design Philosophy of the DARPA Internet ProtocolsDavid Clark · 1988