This schedule is an estimate. It may be updated based on the actual pacing of the course material.

“Readings” reference one of:

DateTopicAssignment
Week 1
Tue 25 Aug

intro / layers

 [ 
slides: logistics(pdf)intro(pdf)
| screencapture (browser  or download mp4 webm audio ) ]
Reading:

PD 1.2-1.4; FS 1.1-1.3.2, 1.4

  • requirements, terminology
    • nodes, links, flows
    • frames/packets/segments
    • link types: point-to-point, multiple access
    • internetworks
    • (de)multiplexing
    • channel types: streams, datagrams, others?
  • building with layers
    • API between layers
    • layering models
      • Internet
      • OSI model (briefly)
Thu 27 Aug

reliablity: checksums / ACKs / performance

 [ | screencapture (browser  or download mp4 webm audio ) ]
Reading:

PD 2.1, 2.4-2.5.2, 1.5

Fri 28 Aug
Week 2
Tue 01 Sep

reliablity: performance metrics / sliding window

 [ | screencapture (browser  or download mp4 webm audio ) ]
Reading:

PD 2.5.1-2.5.2, PD 1.5

  • performance
    • bandwidth, latency, jitter
  • sliding window
    • duplicate ACKs
    • selective ACKs
    • logic at sender, recevier (start)
Thu 03 Sep

reliablity: sliding window / TCP realities / switching

 [ | screencapture (browser  or download mp4 webm audio ) ]
Reading:

PD 5.2-5.2.2; FS 14; PD 2.6.1-2.6.2, 3.1.1-3.1.2, 3.2-3.2.1, 3.2.4

Quiz week02 (quiz for week 2) released, due 2026-09-08 12:15
Fri 04 Sep
reliable part 1 (zero/one) due by 11:59pm
Week 3
Tue 08 Sep

switches

 [ 
slides: switches
 ]
Reading:

PD 3.2-3.2.1, 3.2.4

  • P4 switch architecture
  • P4 controllers
Quiz week02 (quiz for week 2) due 12:15 (released 2026-09-03)
Thu 10 Sep

Ethernet briefly / ARP + ND, subnets, MACs and IPs

 [ 
slides: arp
 ]
Reading:

PD 2.6.2, 3.2.1-3.3.7, 4.2.1-4.2.3

  • learning bridges

  • IP header
    • checksums
  • IP versus MAC addresses

  • broadcast, basic multicast
    • broadcast on ethernet
    • broadcast on IP
  • ARP
Quiz week03 (quiz for week 3) released, due 2026-09-15 12:15
Fri 11 Sep
reliable part 2 (sliding window) due by 11:59pm
Week 4
Tue 15 Sep

IPs con't / autoconfiguration / congestion control: the problem

 [ 
slides: arp
 ]
Reading:

PD 3.3.2-3.3.7, 4.2.1-4.2.3

  • example: ICMP ping

  • ICMPv6 Neighbor Discovery

  • autoconfiguration

    • DHCP
    • SLAAC
Quiz week03 (quiz for week 3) due 12:15 (released 2026-09-10)
Thu 17 Sep

congestion control: AIMD, fairness

 [ 
slides: congest
 ]
Reading:

PD 6.1, 6.3-4, 6.4.2, FS 16, D 19.1, 20.2-20.3

  • graph of throughput versus window size
  • history: congestion collapse

  • observing good/bad congestion
  • steady-state and changing cross-traffic
  • slow-increase/fast-decrease
  • additive increase/multiplicative decrease

  • actual TCP outline
  • fair sharing
  • min/max fairness
Quiz week04 (quiz for week 4) released, due 2026-09-22 12:15
Fri 18 Sep
P4 part 1 (no submission) (tentative writeup) due by 11:59pm
Week 5
Tue 22 Sep

congestion control: fairness, slow start, fast recovery

 [ 
slides: congest
 ]
Reading:

PD 6.3.2-3, FS 16, D 19.2-4

  • fast retransmit and fast recovery

  • queuing theory interlude:
    • randomized arrivals means no 100% utilization
    • high variance from long queues
  • bufferbloat: congestion makes queues deep

  • slow start
Quiz week04 (quiz for week 4) due 12:15 (released 2026-09-17)
Thu 24 Sep

congestion control: alternate congestion signals / simulators

 [ 
slides: congestsim
 ]
Reading:

PD 6.3.4, 6.4.1-6.4.2; (D 19-20); D 32

  • CUBIC

  • alternate congestion signals
    • explicit congestion notification
      • echoing back congestion signal
    • delay-based congestion control
  • discrete event simulators
Quiz week05 (quiz for week 5) released, due 2026-09-29 12:15
Fri 25 Sep
P4 part 2 (tentative writeup) due by 11:59pm
Week 6
Tue 29 Sep

simulating TCP / queuing

 [ 
slides: simqueuing
 ]
Reading:

PD 6.2, D 32, D 23.5.1-23.5.3

  • discrete event simulators

  • queue discplines

    • droptail and problems
    • fair queuing (start)
Quiz week05 (quiz for week 5) due 12:15 (released 2026-09-24)
Thu 01 Oct

ECN; queue disciplines / routing : start

 [ 
slides: queuingrouting
 ]
Reading:

PD 6.2, 6.4.1, 3.4.1, 3.3.4, 3.3.8, D 23.5.1-3, 21.5.4, 9.4, 10.4, 12.2

  • queue discplines (con’t)
    • fair queuing (finish)
    • strict priority
    • random early detection
  • network as a graph
    • review: routing tables
  • ICMP routing errors
    • time-to-live
    • unreachable
Quiz week06 (quiz for week 6) released, due 2026-10-08 12:15
Fri 02 Oct
NS-3 / AIMD part 1 (tentative writeup) due by 11:59pm
Week 7
Tue 06 Oct
(no class)
Thu 08 Oct

routing: spanning tree

 [ 
slides: routing
 ]
Reading:

PD 3.3.8, 3.2.3, FS 8, D 3.1

  • ICMP routing errors (finish)

  • spanning tree protocols

    • centralized
    • distributed
Quiz week07 (quiz for week 7) released, due 2026-10-13 12:15
Quiz week06 (quiz for week 6) due 12:15 (released 2026-10-01)
Fri 09 Oct
NS-3 / AIMD part 2 (tentative writeup) due by 11:59pm
Week 8
Tue 13 Oct

routing: metrics / distance vector

 [ 
slides: routing
 ]
Reading:

PD 3.4.4, 3.4.2, D 13.1-3

  • routing metrics

  • distance vector routing

    • running centrally
    • distributed protocol
Quiz week07 (quiz for week 7) due 12:15 (released 2026-10-08)
Thu 15 Oct

routing: distance vector (finish) / link state

 [ 
slides: routing
 ]
Reading:

PD 3.4.2, 3.4.3, 4.1.1; D 13.5, 13.7

  • distance vector (con’t)
    • handling link removal
    • count-to-infinity problem
  • link state routing
    • running centrally
    • distributed protocol
Quiz week08 (quiz for week 8) released, due 2026-10-20 12:15
Fri 16 Oct
packet scheduling (tentative writeup) due by 11:59pm
Week 9
Tue 20 Oct

BGP

 [ 
slides: routingdns
 ]
Reading:

PD 4.1.2; D 15

  • autonomous systems
    • graph structure
    • business relationships (customer/provider; content-delivery; peering)
  • BGP advertisements
Quiz week08 (quiz for week 8) due 12:15 (released 2026-10-15)
Thu 22 Oct

DNS

 [ 
slides: dns
 ]
Reading:

PD 9.3.1; FS 11

  • domain names
    • hierarchy
    • zones
  • recursive v authoritative
  • record types, format
    • name compression
  • DNS questions and answers
Quiz week09 (quiz for week 9) released, due 2026-10-27 12:15
Fri 23 Oct
DV routing (tentative writeup) due by 11:59pm
Week 10
Tue 27 Oct

DNS misc / sockets 1

 [ 
slides: dnssockets
 ]
Reading:

PD 9.3.1, 1.4; FS 11

  • IDNs
  • reverse lookups
  • preview: cache poisoning, DNSSEC

  • BSD sockets
  • 5-tuples, netstat
  • listening sockets
  • conneced/unconnected sockets
  • socket / bind / connect
  • read/recv, write/send
Quiz week09 (quiz for week 9) due 12:15 (released 2026-10-22)
Thu 29 Oct

sockets 2 / HTTP 1

 [ 
slides: socketshttp
 ]
Reading:

PD 1.4, 9.1.2-3; MDN’s section on HTTP

  • server sockets — listen, accept
  • recvfrom, sendto, …
  • broadcast with sockets
  • aside: local sockets

  • HTTP/1.1
  • URL/URI parts
  • request headers, bodies
  • request methods (GET, HEAD, POST, …)
  • connection keep-alive, pipelining, multiple streams
Quiz week10 (quiz for week 10) released, due 2026-11-05 12:15
Fri 30 Oct
Week 11
Tue 03 Nov
(no class)
Thu 05 Nov

HTTP 2

 [ 
slides: http
 ]
Reading:

PD 1.4, 9.1.2-3; MDN’s section on HTTP

  • HTTP caching
  • detecting if up-to-date
  • HTTP proxies, reverse proxies
  • REST
Quiz week11 (quiz for week 11) released, due 2026-11-10 12:15
Quiz week10 (quiz for week 10) due 12:15 (released 2026-10-29)
Fri 06 Nov
webserver (tentative writeup) due by 11:59pm
Week 12
Tue 10 Nov
Quiz week11 (quiz for week 11) due 12:15 (released 2026-11-05)
Thu 12 Nov

wireless 1

 [ 
slides: multiaccess
 ]
Reading:

PD 2.7.1-2; D 2.1.5, 4

  • carrier sense multiple access
  • collision probabilities
  • collision detection
  • wireles signal propoation
Quiz week12 (quiz for week 12) released, due 2026-11-17 12:15
Fri 13 Nov
smtp due
Week 13
Tue 17 Nov

wireless 2

 [ 
slides: multiaccess
 ]
Reading:

PD 2.7.1-2; D 2.1.5, 4

  • hidden terminals
  • ready-to-send / clear-to-send
  • collision detection revisited
  • multiple access points
  • scheduled wireless networks
Quiz week12 (quiz for week 12) due 12:15 (released 2026-11-12)
Thu 19 Nov

security: firewalls

 [ 
slides: multiaccessfire
 ]
Reading:

PD 2.8.2, PD 8.5.6

  • scheduled wireless networks
  • firewall placement
  • stateless firewalls
Quiz week13 (quiz for week 13) released, due 2026-11-24 12:15
Fri 20 Nov
Week 14
Wed 25 Nov

firewalls 2 / NAT

 [ 
slides: fire
 ]
Reading:

PD 8.5.4, D 9.7, PD 3.3.9, PD 4.4

  • request stuffing
  • stateful firewalls
  • NAT
  • NAT traversal
  • IDS
Thu 26 Nov
(no class)
Fri 27 Nov
(no class)
Week 15
Tue 01 Dec

encapsulation 1

 [ 
slides: encap
 ]
  • encapsulation motivations
  • “transparent” tunnels/proxy
  • encapsulation techniques
  • transport-layer proxies
    • SOCKS, Tor (start)
Thu 03 Dec

encapuslation 2

 [ 
slides: encap
 ]
  • Tor (finish)
  • network-layer tunnels
    • TCP in TCP sidenote
  • VLANs
  • (if time) MPLS
Quiz week15 (quiz for week 15) released, due 2026-12-08 12:15
Fri 04 Dec
wireless (tentative writeup) due by 11:59pm
Week 16
Tue 08 Dec

exam review

Quiz week15 (quiz for week 15) due 12:15 (released 2026-12-03)
Sat 12 Dec

final exam

2PM-5PM