← Back to teaching

CS5060 (Advanced Computer Networks)

August – December 2024 · Department of Computer Science and Engineering, IIT Hyderabad

A top-down treatment of the Internet protocol stack: application layer, transport and congestion control, the network layer in both data and control planes, and the link layer, with hands-on Wireshark and socket-programming work. Lectures in this offering were not recorded.

Course details

  • Course code: CS5060
  • Semester: August 2024 (Monsoon)
  • Level: postgraduate core
  • Credits: 3

Texts and reference material

  • Kurose and Ross, Computer Networking: A Top-Down Approach, 9th edition
  • Peterson and Davie, Computer Networks: A Systems Approach
  • Stevens, TCP/IP Illustrated
  • Classic papers listed per lecture

Evaluation

  • Two assignments and two programming assignments
  • Six tutorials
  • Three quizzes, solutions below

Lecture plan

Six lecture blocks following the top-down order of the text. Each block has the incremental decks used in class and a consolidated deck at the end.

#TopicSlidesReading materialVideo
L0Course structureL0 course structure—not recorded
L1Introduction: the Internet, edge and core, delay and lossL1-A · L1-B · L1-C · L1-D · L1 fullKurose and Ross, chapter 1not recorded
L2Application layer: HTTP, DNS, CDNs and streamingL2-A · L2-B · L2-C · L2 fullKurose and Ross, chapter 2not recorded
L3Transport layer: UDP, TCP, reliable delivery and congestion controlL3-A · L3-B · L3-C · L3 fullJacobson, Congestion avoidance and control (SIGCOMM 1988) · Floyd and Fall, Promoting the use of end-to-end congestion control (IEEE/ACM ToN 1999)not recorded
L3xHands-on: TCP with WiresharkWireshark TCP—not recorded
L4Network layer, data plane: forwarding, IP addressing, routersL4-A · L4 data planeKurose and Ross, chapter 4not recorded
L5Network layer, control plane: routing algorithms, OSPF, BGP, SDNL5 control planeKurose and Ross, chapter 5not recorded
L6Link layer: error detection, multiple access, switchingL6 link layerKurose and Ross, chapter 6not recorded

Slide links open in Google Drive. Reading material without a link is third-party work — the title is given so you can find it at its publisher.

Assignments, tutorials and project

Handouts and submissions were managed in Google Classroom; titles are listed here for reference.

  • Assignment 1: Packet capture and analysis
  • Assignment 2: A case study on CDNs, streaming services and DNS traffic management
  • Programming assignment 1: My pingers
  • Programming assignment 2: Bufferbloat analysis
  • Tutorial 2: Socket programming · Tutorial 4: TCP with Wireshark · Tutorial 5: practice questions on TCP · Tutorial 6: network layer, data plane
  • Quiz solutions: quiz 1, quiz 2, quiz 3, TCP question worked solution