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 27 Aug

intro / layers

 [ 
slides: logisticsintro
| 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)
    • wireshark interlude
Thu 29 Aug

framing

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

PD 2.1-4

  • end-to-end argument
  • direct links
    • copper, fiber, radio
  • bits as voltage, timing
    • Manchester coding
  • types of transmission errors
  • framing
    • headers and trailers
    • byte, bits, clocks
  • error detection — checksums
Quiz week01 (quiz for week 1) released, due 2024-09-03 09:15
Fri 30 Aug
Week 2
Tue 03 Sep

reliablity: ACKs / performance metrics

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

PD 2.5.1-2.5.2, PD 1.5

  • stop-and-wait
  • need for sequence numbers

  • performance
    • bandwidth, latency, jitter
Quiz week01 (quiz for week 1) due 09:15 (released 2024-08-29)
Thu 05 Sep

reliablity: sliding windows

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

PD 2.5.1-2; FS 14

  • sliding window
    • size and bandwidth-delay product
    • sequence number wraparound
    • duplicate ACKs
    • selective ACKs
Quiz week02-rejected (quiz for week 2) released, due 2024-09-10 09:15
Quiz week02 (quiz for week 2) released, due 2024-09-10 09:15
Fri 06 Sep
framing due by 11:59pm
Week 3
Tue 10 Sep

relability: TCP realities / switches

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

PD 3.1.1-3.1.2, 3.2-3.2.1, 3.2.4

Quiz week02-rejected (quiz for week 2) due 09:15 (released 2024-09-05)
Quiz week02 (quiz for week 2) due 09:15 (released 2024-09-05)
Thu 12 Sep

learning bridges, ARP + ND, subnets

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

PD 3.2.1, 3.3.6; FS 8.5

  • P4 switch architecture (start)
  • learning bridges
Quiz week03 (quiz for week 3) released, due 2024-09-17 09:15
Fri 13 Sep
reliable part 1 (zero/one) due by 11:59pm
Week 4
Tue 17 Sep

MACs and IPs

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

PD 3.3.2-3.3.7, 4.2.1-4.2.3

(Reiss out of town)

The recording is available on Canvas on the Panopto Video tab and will be copied here later.

  • IP versus MAC addresses
  • broadcast, basic multicast
    • broadcast on ethernet
    • broadcast on IP
  • ARP
  • ICMPv6 Neighbor Discovery

  • IP header
    • checksums
  • example: ICMP ping

  • autoconfiguration
    • DHCP
    • SLAAC
Quiz week03 (quiz for week 3) due 09:15 (released 2024-09-12)
Thu 19 Sep

autoconfiguration / congestion control: the problem

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

PD 6.1, 6.3

(Reiss out of town)

The recording is available on Canvas on the Panopto Video tab and will be copied here later.

  • graph of throughput versus window size
  • history: congestion collapse
Quiz week04 (quiz for week 4) released, due 2024-09-24 09:15
Fri 20 Sep
Week 5
Tue 24 Sep

congestion control: AIMD

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

PD 6.1, 6.3-4, 6.4.2, FS 16

  • observing good/bad congestion
  • steady-state and changing cross-traffic
  • slow-increase/fast-decrease
  • fair sharing
  • additive increase/multiplicative decrease
Quiz week04 (quiz for week 4) due 09:15 (released 2024-09-19)
Thu 26 Sep

congestion control: fairness, fast recovery, slow start

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

PD 6.4.1-2, 6.2, FS 16

  • min/max fairness
  • fast retransmit and fast recovery
  • slow start
Quiz week05 (quiz for week 5) released, due 2024-10-01 09:15
Fri 27 Sep
reliable part 2 (sliding window) due by 11:59pm
Week 6
Tue 01 Oct

congestion control: big buffers; high utilization is bad; ECN

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

PD 6.4, 6.2

  • quiz review

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

  • timeout management
    • why estimate variance
    • exponential backoff idea
  • alternate congestion signals (start)
    • explicit congestion notification
      • echoing back congestion signal
Quiz week05 (quiz for week 5) due 09:15 (released 2024-09-26)
Thu 03 Oct

queue disciplines

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

PD 6.4.2, 6.2,

  • alternate congestion signals (finish)
    • delay-based congestion control
  • queue discplines
    • droptail and problems
    • fair queuing
    • strict priority
    • random early detection
Quiz week06 (quiz for week 6) released, due 2024-10-08 09:15
Fri 04 Oct
Week 7
Mon 07 Oct
P4 due by 11:59pm
Tue 08 Oct

routing: forwarding errors; spanning tree

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

PD 3.3.4, 3.3.8, 3.2.3, 3.4.1, FS 8, D 3.1

  • network as a graph
    • review: routing tables
  • ICMP routing errors
    • time-to-live
    • unreachable
  • fragments

  • spanning tree protocols (start)
Quiz week06 (quiz for week 6) due 09:15 (released 2024-10-03)
Thu 10 Oct

routing: spanning tree / distance vector

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

PD 3.4.2-3, D 13.1-3; D 13.5

  • spanning tree protocols (finish)
    • centralized
    • distributed
  • routing metrics

  • distance vector routing
    • running centrally
    • distributed protocol
Quiz week07 (quiz for week 7) released, due 2024-10-17 09:15
Fri 11 Oct
reliable part 3 (variable window) due by 11:59pm
Week 8
Tue 15 Oct
(no class)
Thu 17 Oct

routing: distance vector (finish) / link state

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

PD 4.1.2; PD 5.1-5.2

  • 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 2024-10-22 09:15
Quiz week07 (quiz for week 7) due 09:15 (released 2024-10-10)
Fri 18 Oct
packet scheduling due by 11:59pm
Week 9
Tue 22 Oct

BGP

 [ 
slides: routingdns
| screencapture (browser  or download mp4 webm audio ) ]
  • autonomous systems
    • graph structure
    • business relationships (customer/provider; content-delivery; peering)
  • BGP advertisements

  • domain names
    • hierarchy
    • zones
Quiz week08 (quiz for week 8) due 09:15 (released 2024-10-17)
Thu 24 Oct

DNS

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

PD 9.3.1; FS 11

  • recursive v authoritative
  • record types, format
    • name compression
  • DNS questions and answers
Quiz week09 (quiz for week 9) released, due 2024-10-29 09:15
Fri 25 Oct
DV routing due by 11:59pm
Week 10
Tue 29 Oct

Sockets

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

PD 1.4,1

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

  • BSD sockets
  • 5-tuples, netstat
  • listening sockets
  • conneced/unconnected sockets
  • socket / bind / connect
  • read/recv, write/send
  • server sockets — listen, accept
  • recvfrom, sendto, …
  • broadcast with sockets
  • aside: local sockets
Quiz week09 (quiz for week 9) due 09:15 (released 2024-10-24)
Thu 31 Oct

HTTP 1

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

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

  • HTTP/1.1
  • URL/URI parts
  • request headers, bodies
  • request methods (GET, HEAD, POST, …)
  • connection keep-alive, pipelining, multiple streams

  • HTTP caching
  • detecting if up-to-date
Quiz week10 (quiz for week 10) released, due 2024-11-07 09:15
Fri 01 Nov
DNS due by 11:59pm
Week 11
Tue 05 Nov
(no class)
Thu 07 Nov

HTTP 2 / wireless link-layer

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

PD 2.6, 2.7.1-2; D 2.1.5, 4

  • HTTP (finish)
    • HTTP proxies, reverse proxies
    • REST
  • carrier sense multiple access
  • collision probabilities
Quiz week11 (quiz for week 11) released, due 2024-11-12 09:15
Quiz week10 (quiz for week 10) due 09:15 (released 2024-10-31)
Fri 08 Nov
Week 12
Tue 12 Nov

wireless 2

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

PD 2.7.1-2; D 2.1.5, 4

  • collision detection
  • wireles signal propoation
  • hidden terminals
  • ready-to-send / clear-to-send
Quiz week11 (quiz for week 11) due 09:15 (released 2024-11-07)
Thu 14 Nov

wireless 3

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

PD 2.7.1-2; D 2.1.5, 4

  • collision detection revisited
  • multiple access points
  • scheduled wireless networks
Quiz week12 (quiz for week 12) released, due 2024-11-19 09:15
Fri 15 Nov
Week 13
Mon 18 Nov
webserver due by 11:59pm
Tue 19 Nov

security: firewalls

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

PD 2.8.2, PD 8.5.6

  • scheduled wireless networks
  • firewall placement
  • stateless firewalls
Quiz week12 (quiz for week 12) due 09:15 (released 2024-11-14)
Thu 21 Nov

firewalls 2 / NAT

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

PD 8.5.4, D 9.7, PD 3.3.9, PD 4.4

  • request stuffing
  • stateful firewalls
  • NAT
  • NAT traversal
  • IDS
Quiz week13 (quiz for week 13) released, due 2024-11-26 09:15
Fri 22 Nov
Week 14
Tue 26 Nov

encapsulation 1

 [ 
slides: encap
| screencapture (browser  or download mp4 webm audio ) ]
  • encapsulation motivations
  • “transparent” tunnels/proxy
  • encapsulation techniques
  • transport-layer proxies
    • SOCKS, Tor (start)
Quiz week13 (quiz for week 13) due 09:15 (released 2024-11-21)
Thu 28 Nov
(no class)
Quiz week14 (quiz for week 14) released, due 2024-12-03 09:15
Fri 29 Nov
(no class)
Week 15
Tue 03 Dec

encapuslation 2

 [ 
slides: encap
| screencapture (browser  or download mp4 webm audio ) ]
  • Tor (finish)
  • network-layer tunnels
    • TCP in TCP sidenote
  • VLANs
  • (if time) MPLS
Quiz week14 (quiz for week 14) due 09:15 (released 2024-11-28)
wireless due by 11:59pm
Thu 05 Dec

exam review

| screencapture (browser  or download mp4 webm audio )
Week 16
Tue 17 Dec

final exam

2PM-5PM (last exam slot)