CPSC 110-08: Computing on Mobile Phones
Spring 2012

How the Internet Works

CS Principles

This lecture addresses the following key concepts from the CS Principles Curriculum

Key Concept A. The Internet is a network of autonomous systems.

Learning Objective 24: The student can explain the abstractions in the Internet and how the Internet functions.

-- 24a. Explanation of how the Internet connects devices and networks all over the world.
-- 24b. Explanation of how the Internet and the systems built on it facilitate collaboration.
-- 24c. Description of evolving standards that the Internet is built on, including those for addresses and names.
-- 24d. Identification of abstractions in the Internet and how the Internet functions.

Let's Watch the Internet

Activity: Click here for some activities that measure things on the Internet.

Internet Infrastructure

The Internet is a network of independent networks -- independent in the sense that the local networks use different protocols to transmit data among their computers.

Source

Routers running the Internet Protocol (IP) connect the different local networks together, creating the Internet. The IP takes care of routing data through the Internet and translates data from a local protocol (such as Ethernet) to IP and vice versa.

Analogy: You can think of the local networks as different countries where the citizens are connected by different languages. The IP is like a translater that translates from French to English.

Example

Suppose you type the URL of my home page into your browser.

http://www.cs.trincoll.edu/~ram

It may seem like your browser (the client) is directly connected to my web page (on the server), as in the top half of the following diagram.


Source

But your request and the server's response travel through several Internet abstraction layers as shown in the bottom half of this diagram.

Tracing the Data Flow

At the application layer:

At the transport layer:

At the internet layer:

At the link layer, the hardware layer.

Packet Switching

The Internet (the IP) is based on packet switching. Data are broken into 1500 byte blocks (8 bits per byte), which are transmitted from router to router through the Internet.

This contrasts with circuit switching, the technology that land-line telephones used to use, in which a continuous circuit was set up through switches from one end of the call to the other.

IP Addresses

An IPv4 address uses a 32-bit IP address, broken into 4 8-bit segments each represented by a decimal number. An IPv6 address uses a 128-bit address, broken into 8 16-bit segments represented as Hexadecimal numbers:

Source

Question: Why do you think Hex is used in IPv6 instead of decimal?

Domain Names

An Internet domain name is organized into a number of levels as shown in the diagram:


Source

A domain name takes the following form:

  [fourth-level-domain] . [third-level-domain] . [second-level-domain]   .  [top-level domain]
         turing         .         cs           .       trincoll          .         edu

A hostname is a domain name that is associated with an IP address. For example, the following are examples of hostnames:

trincoll.edu
www.trincoll.edu
turing.cs.trincoll.edu

But top-level domain names, such as com and edu are not hostnames.

Domain Name Service

Domain names are mapped into IP address by the Domain Name System, a network of servers that keep track of the mappings.

In this example, three look-ups are need before the IP address is resolved.


Source

The World Wide Web

The World Wide Web (WWW) is not a network -- technically speaking. It is a system of interlinked hypertext documents that can be accessed via the Internet.

The Web is a service governed by the HyperText Transfer Protocol (HTTP) protocol.

It was invented by Sir Tim Berners-Lee, who, to his credit, turned his invention into an open standard.

"I just had to take the hypertext idea and connect it to the
Transmission Control Protocol and domain name system ideas
and ta-da! the World Wide Web."

Discussion Questions