STUDY GUIDE · GKU 5
Networking study guide (Computer Science)
This unit follows one request from a laptop to a server and back. It starts with the shape of the Internet — end systems and access networks at the edge, routers and providers in the core — and the four delays every packet pays. It then explains why the Internet switches packets rather than circuits and why its software is built in layers, walks down to the cables, switches and frames of the physical and link layers, and back up through IP addressing, routing and the Domain Name System. The last four sections are about getting data across reliably and building applications on top: sliding-window protocols, TCP's flow and congestion control, client-server and peer-to-peer applications, and the socket interface that programs use. Each section opens with a quick-revision card; the worked examples run from easy to exam level, and their numbers were recomputed before they were written.
Structured by the official ETEC subject standard for this topic: every listed topic and learning outcome, with formulas, figures and worked examples. The full sections are available to members in the app.
SKU 5.1 · Networking fundamentals and networked applications
Organisation of the Internet: edge, core, delay and throughput
What sits at the edge and what forms the core of the Internet, how providers are arranged in tiers, the four components of the delay a packet sees at each router, and why end-to-end throughput is set by the slowest link.
Switching techniques and layering
Circuit switching against packet switching, store-and-forward timing and statistical multiplexing; then why network software is layered, the OSI and TCP/IP models, and what encapsulation costs in headers.
Physical components and the link layer
Transmission media and the devices that join them — NIC, hub, switch, router, access point, modem — what each forwards and by which address; how a switch learns; MAC addresses and ARP; error detection with CRC; and how wired and wireless links share the medium.
IP addressing, subnetting and forwarding
IPv4 addresses, masks and CIDR prefixes; finding a subnet's network, broadcast and host range; splitting a block with VLSM; how a host decides to deliver directly or through its gateway; longest-prefix forwarding; NAT, DHCP, fragmentation and a glance at IPv6.
Routing: link-state and distance-vector
Forwarding against routing; how link-state routers compute shortest paths with Dijkstra, how distance-vector routers converge with the Bellman-Ford equation, why bad news travels slowly, and how OSPF, RIP and BGP divide the Internet into intra- and inter-domain routing.
Naming and resource location: DNS, URLs and ports
How a name becomes an address: the DNS hierarchy, iterative and recursive queries, caching and TTL, record types and multiple addresses; how a URL locates a resource on a server; and how port numbers name the processes at each end.
Reliable data transfer: stop-and-wait and sliding windows
How checksums, acknowledgements, sequence numbers and timers turn a lossy channel into a reliable one; why stop-and-wait wastes a long link; how go-back-N and selective repeat fill it; and how to size the window and the sequence-number field for a given link.
TCP: connections, flow control and congestion control
How TCP opens a connection, numbers bytes, delivers a byte stream without message boundaries, sets its retransmission timer, and limits its sending window by both the receiver's buffer and its estimate of the network's capacity; and when UDP is the better choice.
Distributed applications: client-server, peer-to-peer, the web, e-mail and RPC
The two architectures of networked applications and how their distribution time scales; HTTP requests, responses and connection timing; how e-mail moves between servers; remote procedure calls and estimating a clock offset over the network.
The socket interface: building a client-server application
The calls a TCP server and client make and in what order, how UDP differs, why a TCP reader must loop and frame its messages, and how to turn a set of requirements into a small working client-server program.
MORE COMPUTER SCIENCE GUIDES
- Programming languages study guideGKU 7 · 11 sections
- Algorithms, computability and complexity study guideGKU 1 · 11 sections
- Discrete structures study guideGKU 3 · 9 sections
- Software engineering study guideGKU 8 · 6 sections
- Computer architecture and organization study guideGKU 2 · 12 sections
- Operating systems study guideGKU 6 · 13 sections
- Information management: database systems and data modelling study guideGKU 4 · 10 sections