Computer Science A-Level · Networks

How your computer reaches
www.bbc.co.uk

From the moment you press Enter to the moment the page appears — a journey across five protocols and thousands of miles of fibre.

Step 01

DNS — Finding the Address

Before any data can travel, your computer needs to know where to send it. That's DNS's job.

When you type www.bbc.co.uk, your browser doesn't know what that means at the network level — computers communicate using numeric IP addresses like 151.101.0.81, not domain names. The Domain Name System (DNS) translates one into the other, working like a distributed phone book for the internet.

First your browser checks its local cache — it may have looked up bbc.co.uk recently and remembered the answer. If not, it asks a recursive resolver (usually run by your ISP). The resolver then works up a hierarchy: from the root nameservers (13 clusters worldwide) to the .uk TLD server, and finally the authoritative nameserver for bbc.co.uk itself, which holds the definitive answer.

The whole lookup usually takes under 50 milliseconds. The result — an IP address — is cached at each level with a TTL (Time To Live) so the chain isn't repeated on every visit.

🖥️
BrowserChecks local DNS cache first
▼
📡
Recursive ResolverYour ISP's DNS server
▼
🌍
Root Nameserver"Try the .uk TLD server"
▼
🇬🇧
.uk TLD Server"Try bbc.co.uk's nameserver"
▼
📺
BBC Authoritative NSHolds the definitive record
✓ www.bbc.co.uk → 151.101.0.81 TTL 300s

Step 02

Hosting — Where the Page Lives

The IP address DNS returned belongs to a server. But a site like bbc.co.uk isn't just one machine.

The BBC runs its website from data centres — buildings filled with thousands of servers, connected to the internet via multiple high-speed fibre links. To handle millions of simultaneous visitors, traffic is spread across many servers using a load balancer, which routes each incoming request to a server with spare capacity.

For static assets (images, CSS, JavaScript), the BBC uses a CDN (Content Delivery Network) — a global network of cache servers placed close to users. When you request an image, it comes from a CDN node in London rather than from a distant data centre, cutting latency significantly.

The server that responds to your request processes it, retrieves the relevant content from a database if needed, and assembles an HTTP response containing the HTML, which travels back across the network to your browser.

🌐 CDN Edge Nodes
London · Paris · Frankfurt · …
Static assets cached globally
↓
⚖️ Load Balancer
🖥️
Web Server 1
● Active
🖥️
Web Server 2
● Active
🖥️
Web Server 3
● Active
↓
🗄️ Database Cluster
News articles · media metadata · user sessions

Step 03

TCP/IP — The Protocol Stack

All data on the internet travels according to a layered set of rules. Each layer handles a specific job and only talks to the layers directly above and below it.

The TCP/IP model has four layers. When you send a request, data is encapsulated — each layer wraps the data in its own header before passing it down. At the destination, layers are unwrapped in reverse, each reading only its own header.

The Application layer contains the actual content — your HTTP request. TCP (Transport layer) breaks this into segments, numbers them, and guarantees they all arrive and are reassembled in order. If a segment is lost, TCP requests it again. IP (Internet layer) assigns source and destination addresses and decides the route. The Network Access layer handles the physical transmission — over Wi-Fi radio waves or Ethernet electrical signals.

Before any data flows, TCP performs a three-way handshake: your computer sends SYN, the server replies SYN-ACK, you confirm with ACK. Only then does the actual request travel.

Hover each layer to see its role
Data travels DOWN →
4
Application
What you're sending
HTTP / HTTPS
+ TCP header ↓
3
Transport
Reliable delivery
TCP · port 443
+ IP header ↓
2
Internet
Routing & addressing
IP · 151.101.0.81
+ frame header ↓
1
Network Access
Physical transmission
Ethernet / Wi-Fi
← Data travels UP
Three-way handshake:  SYN → SYN-ACK → ACK  (establishes connection before data flows)

Step 04

HTTP / HTTPS — The Request

Once the TCP connection is open, your browser sends an HTTP request and the server replies with the page content.

→ Request (browser to server)
GET / HTTP/1.1 Host: www.bbc.co.uk User-Agent: Chrome/120 (Windows) Accept: text/html,application/xhtml Accept-Language: en-GB,en Connection: keep-alive
← Response (server to browser)
HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8 Content-Length: 89412 Cache-Control: max-age=30 Strict-Transport-Security: max-age=31536000 <!DOCTYPE html> <html lang="en">…

HTTP (HyperText Transfer Protocol) is the language browsers and servers use. A request specifies a method (GET to fetch, POST to submit data), a path, and headers with metadata. The server replies with a status code (200 OK, 404 Not Found, 301 Redirect) and the response body.

HTTPS is HTTP over an encrypted TLS (Transport Layer Security) connection. Before the HTTP request travels, TLS performs a handshake to agree on encryption and authenticate the server's identity using a certificate issued by a trusted Certificate Authority.

Browser→Client Hello (supported cipher suites)
Server→Server Hello + Certificatecert
BrowserVerifies certificate with CA
BothExchange keys, derive session key
BothAll further data encrypted🔒 secure

Step 05

Packet Switching — The Journey

Data doesn't travel as one continuous stream. It's broken into small chunks called packets, each finding its own way across the network.

Each packet is typically up to 1,500 bytes. A packet has two parts: a header (source IP, destination IP, sequence number, TTL) and a payload (the actual data chunk). The BBC's 89 kB HTML response is split into roughly 60 packets.

Unlike circuit switching (where old telephone calls reserved a dedicated path end-to-end), packet switching lets each packet take any available route through the network. Routers at each hop read the destination IP and forward the packet toward its destination — different packets from the same page may travel via different cities or even countries.

At your computer, TCP collects all arriving packets, uses the sequence numbers to reorder them correctly (even if they arrived out of order), and requests any that went missing. Only once all packets are accounted for does your browser receive the complete page.

One HTTP response → three packets
HDR
89,412 bytes of HTML
↓ fragmented
HDR
seq:1
Bytes 1 – 1,460  ·  <!DOCTYPE html>…
HDR
seq:2
Bytes 1,461 – 2,920  ·  <head>…
HDR
seq:3
Bytes 2,921 – 4,380  ·  <meta>…
…and ~57 more packets
Packets may take different routes
PC R1 R2 R3 R4 R5 R6 R7 BBC pkt #1 pkt #2
━━ Packet 1 route    ━━ Packet 2 route    Both arrive, TCP reorders

// The complete journey

0 ms
You press Enter. Browser parses www.bbc.co.uk and starts a DNS lookup.
~5 ms
DNS resolves. Recursive resolver returns 151.101.0.81. Result cached for 300 seconds.
~15 ms
TCP handshake. Three messages (SYN → SYN-ACK → ACK) establish a reliable connection to the server on port 443.
~20 ms
TLS handshake. Server presents its certificate. Browser verifies it with a Certificate Authority. Encryption keys exchanged.
~25 ms
HTTP GET request sent. Encrypted HTTP/1.1 request travels through the TCP/IP stack, fragmented into IP packets, routed across the internet.
~40 ms
Server responds. Load balancer routes to an available web server. HTML assembled, HTTP 200 OK sent back. 89 kB split into ~60 packets.
~55 ms
Packets arrive. TCP reassembles all 60 packets in sequence order. Any lost packets are re-requested automatically.
~80 ms
Page renders. Browser parses HTML, makes further requests for CSS, JavaScript, and images (many served from CDN edge nodes nearby).
Ignat · Computer Science · GCSE → A-Level transition