Introduction to Computer Networks

How a message crosses links, routers and protocols to reach its destination

About this course

The Internet layer by layer — framing and error detection, IP addressing and routing, DNS, UDP and TCP reliability, flow and congestion control, HTTP, security, wireless channels and network diagnosis.

What you will be able to do

  • Detect transmission errors in a frame and explain how switches deliver frames on a local network
  • Divide an address block into subnets and forward a packet using a routing table
  • Trace reliable delivery with sequence numbers, and explain how TCP windows provide flow control
  • Explain how congestion control shares capacity among competing flows
  • Diagnose where a network request fails, from DNS lookup to HTTP response

What this course covers

  • HTTP as an application-layer protocol
  • HTTP message structure: methods, status, and content
  • Message framing and stream boundaries
  • Resource dependency and connection reuse timing
  • Multiplexing and its limits
  • Cache freshness, staleness, and validation
  • Idempotence, safety, and retry semantics
  • Statelessness, session state, and layered evidence
  • Links, routers, and protocol basics
  • Layered encapsulation and label responsibilities
  • Packetisation overhead and queuing delay
  • DNS: naming versus delivery
  • Destination-based forwarding and router behaviour
  • Store-and-forward timing: serialization, propagation, and pipelining
  • Reliable ordered delivery: gaps, acknowledgment, and retransmission
  • Service boundaries and diagnostic reasoning
  • Prefix membership and overlapping matches
  • Longest prefix matching rule
  • Model assumptions and scope boundaries
  • Boundary values and worked destination examples
  • Nested prefixes, overlap utility, and equal-specificity ambiguity
  • Fallback exposure through row removal
  • Packet destination preserved across hops
  • Correcting common forwarding misconceptions
  • Transport ports and endpoint demultiplexing
  • Application-layer request correlation with identifiers
  • UDP header structure and datagram boundaries
  • Duplicate and unknown response suppression
  • Timeouts, retries, and the limits of local evidence
  • Idempotency, duplicate suppression, and retry semantics
  • Message size, checksums, and congestion responsibility
  • Defining the Failed Operation and Conditions
  • The Six-State Diagnostic Table
  • Hypothesis Set and Consistency Elimination
  • Scope and Limits of Individual Observations
  • Hop-Limited Trace and Missing Reply Inference
  • Path MTU Size Arithmetic and Inference Limits
  • Client Timing Ledger and Correct Interval Arithmetic
  • Integrated Diagnostic Method and Reporting Discipline
  • Framing: Structuring a Byte Stream
  • Transparency and Byte Stuffing
  • Receiver State Machine for Decoding
  • Limits of Error Detection and Separation of Responsibilities
  • Framing Overhead and Serialization Time
  • Parity as a Simple Error Detector
  • Cyclic Redundancy Check (CRC) Construction and Verification
  • Stop-and-wait protocol scope and assumptions
  • Sequence numbers and acknowledgement meaning
  • Separate sender and receiver state machines
  • Duplicate suppression and repeated acknowledgement
  • Timeout as recovery under uncertainty
  • Stop-and-wait link utilisation calculation
  • Window motivation and next-lecture preview
  • DNS structure and record types
  • DNS participants and their roles
  • Referrals versus final answers
  • Message counts and serial latency in a cold lookup
  • Typed cache keys and cache-hit rules
  • Cache lifetime, expiry, and authoritative updates
  • DNS TTL versus IP TTL — same label, different objects
  • Negative outcomes: NXDOMAIN, no-data, and timeout
  • Local vs. routed delivery decision
  • Neighbor resolution and frame construction
  • Longest-prefix-match routing
  • Layered identifiers and their distinct roles
  • TCP establishment, TLS security boundary, and HTTP application layer
  • Cumulative acknowledgment, out-of-order storage, and receiver buffer accounting
  • Cold, warm, and cached request timing comparison
  • Integrated failure diagnosis across all layers
  • Endpoint Boundaries and Scope of Protection
  • Confidentiality, Integrity, Authentication, and Authorization Distinguished
  • Boolean Conjunction Model for Server Authentication
  • Scope and Limits of Authenticated Service Identity
  • Finite Application Authorization Policy
  • Authorization Enforcement Boundary vs. UI Controls
  • Intermediaries, TLS Record State Machine, and Timing
  • Layered Security Claims and Diagnostic Discipline
  • IPv4 address structure and dotted-decimal notation
  • Prefix length and fixed vs. variable bit positions
  • Block size counting from free bit positions
  • Subnet mask and bitwise AND for prefix membership
  • Conventional host address count and boundary-case prefixes
  • Aligned subnet partitioning and block boundaries
  • Next-hop selection and packet destination separation
  • TCP byte sequence numbers and segment ranges
  • Flow control: acknowledgment vs. receive capacity as separate signals
  • TCP byte stream framing vs. application record boundaries
  • Sender outstanding-data boundaries (U and N)
  • Cumulative acknowledgments and gap behaviour
  • Receiver advertised window and the right-edge calculation
  • Window-based throughput bound and bandwidth-delay product
  • Shared Medium Access and Contention
  • Backoff Counter Freeze Mechanism
  • Link-Layer Acknowledgment and Duplicate Detection
  • Collision Probability via Counter-Range Enumeration
  • Hidden Transmitter Problem
  • RTS/CTS Reservation as an Information Path
  • Airtime, Physical Rate, and Fairness Accounting
  • Two-table architecture: ARP cache and switch table
  • Switch source learning and unknown-unicast flooding
  • Bidirectional learning and selective forwarding
  • Address Resolution Protocol (ARP) for local IP-to-link mapping
  • Independent lifetimes of ARP cache and switch forwarding state
  • Gateway delivery: separating frame destination from packet destination
  • Stale entries, host movement, and filtering
  • Cumulative six-frame trace and boundary summary
  • Discrete queue model: structure and event order
  • Packet conservation accounting
  • Buffers, bursts, and persistent overload
  • Two-window constraint: receiver and congestion allowances
  • Additive increase / multiplicative decrease (AIMD) allowance dynamics
  • Queuing delay and its effect on feedback round-trip time
  • Four quantities of congestion and course synthesis

Syllabus

  1. Links and Local Delivery

    1. L1 · How a Message Travels Across the Internet
    2. L2 · Frames, Boundaries, and Error Detection
    3. L3 · IP Addresses and Subnets
    4. L4 · Switching and Local Delivery
  2. Routing and Naming

    1. L5 · Routes and Forwarding Tables
    2. L6 · DNS and Distributed Naming
  3. Transport and Reliability

    1. L7 · UDP and Application Conversations
    2. L8 · Reliable Delivery with Sequence Numbers
    3. L9 · TCP Windows and Flow Control
    4. L10 · Congestion and Shared Capacity
  4. Applications, Security and Wireless

    1. L11 · HTTP and Web Delivery
    2. L12 · Security Across Network Boundaries
    3. L13 · Wireless and Shared Channels
  5. Diagnosis and the Whole Network

    1. L14 · Diagnosing a Network Journey
    2. L15 · One Request Through the Whole Network