Schedule of the class:


Introductory Materials and class organization:

Part I - Overview


Date
Title
Important notions covered
Reading and Slides
Tuesday, January 17th
Overview (1): The Internet, Its Edge and Its Core
end-host, access network, packet switching
Kurose-Ross (p. 1-36, s 1.1-1.4.1)

Thursday, January 19th
Overview (2): Performance, Protocol Layering, Network security
delay, loss, throughput,
layers, encapsulation
Kurose-Ross (p.36-81, s 1-4.2-1.6)


Documents for this part:


Part II - Application



Date
Title
Important notions covered
Reading and Slides
Tuesday, January 24th
Application (1): Principles, Web
(client,server), port, application layer protocol,
header, cookies, web proxy
Kurose-Ross (p. 85-118, s. 2.1-2.2)

Thursday, January 26th
Application (2):DNS,
Top-level domain, authoritative servers,
hierarchical database, scalability
Kurose-Ross (p.132-146, s.2.5)

Tuesday, January 31st
Application (3): CDN, FTP, Email
mirroring, redirection, SMTP, POP, IMAP
Kurose-Ross (p. 626-629, s.7.3.4), more in
Tanenbaum-Wetherall (p.743-748, s.7.5.3),
Kurose-Ross (p.118-132, s.2.3-2.4)

Thursday, February 2nd
Application (4): P2P
Swarm (bittorrent), Gnutella, DHTs
Kurose-Ross (p.146-159, s. 2.6)

Tuesday, February 7th
Application (5): Socket programming
End of DHTs, Skype + socket
Kurose-Ross (p.160-178, s. 2.7-2.8)
Kurose-Ross (p.197210, s. 3.1-3.2)

Thursday, February 9th
Application (6): Review & CatchUp
end of socket + whatever useful!
Review of everything
For C socket and programming
Tanenbaum-Wetherall (p.500-507, s. 6.1)


Documents for this part:

Part III - Transport



Date
Title
Important notions covered
Reading and Slides
Tuesday, February 14h
Transport (1) Error Detection,
Reliable Data Transmission
UDP, checksum,ACK/NACK,
Sequence Number
Kurose Ross (p. s 3.3, 3.4 rdt1-2)

Thursday, February 16th
Transport (2) follow up of Reliable Data Transmission
Timeout, Utilization,
Pipelining, Go Back N
Kurose Ross (p. s 3.4 rdt3)

Tuesday, February 21th
Transport (3) End of Reliable Data Transmission, TCP
Selective Repeat, Segment,
Exponential moving average
Kurose Ross (p. s 3.4-3.5)

Thursday, February 23th
Transport (4) TCP Reliable Data, Flow Control,
Cumulative ACK, Delayed ACK,
Duplicate ACK, Fast Retransmit, RcvWindow
Kurose Ross (p. s 3.5)

Tuesday, February 28th
Transport (5) Congestion Control Principle
CongWindow, TCP Slow start,
AIMD
Kurose Ross (p. s.3.6)

Thursday, March 1st
Transport (6): TCP Congestion Control, Review and Catch-up
TCP Fairness, Max-min Fairness,
Prop. Fairness
Kurose Ross (p. s.3.6)

Documents for this part:
  • Writing Assignment 3 (due March 6th)
  • If you want to read more about max-min fairness, I recommend this very good tutorial. It contains obviously much more materials than needed for the class (the definition of max-min fairness is all that is required for midterm etc.), but you might be curious and have a look at it:
    Jean-Yves Le Boudec (EPFL Lausanne) "Rate adaptation, Congestion Control and Fairness: A Tutorial" Nov 2005

Part IV - Network



Date
Title
Important notions covered
Reading and Slides
Tuesday, March 6th
Network (1): Forwarding & Router design
Input/Output Port, Switching Fabric,
Input/Output Queue
Kurose Ross (s. 4.3)

Tuesday, March 20th
Network (2): Addressing
Fragmentation, IP Address
Hierarchical addressing, Subnets
DHCP
Kurose Ross (s. 4.4-4.4.2)

Thursday, March 22th
Network (3): End Adressing
NAT, ICMP, IPv6, Tunneling
Kurose Ross (s. 4.4.3-4.5.2)

Tuesday, March 27th
Network (4): Routing algorithms
Link state, Greedy
Distance Vector, Relaxation
Kurose Ross (s. 4.5.3-4.6.2)


Network (5): Routing Protocols
Poison Reverse,
Hierarchical Routing, ASes
RIP, OSPF, Intra-domain
Kurose Ross (s. 4.6.3)

Tuesday, April 3rd
Network (6): Inter-domain,
+Broadcast
BGP, Policy Routing
Broadcast, Flooding, PI, PIF
Kurose Ross (s. 4.7)

Thursday, April 5th
Network (7) : Multicast + Review and Catch-up
Spanning tree, Center-Based tree,
Prim-Dijkstra, Steiner Tree
DVMRP, PIM


Documents for this part:

Part V - Link


Date
Title
Important notions covered
Reading and Slides
Tuesday, April 10th
Link (1): Generality, Intro to MAC
Link layer, CRC bits,
TDMA, FDMA, CDMA,
intro to Random Access Protocol
Kurose-Ross (s.5.1-5.3.1)

Thursday, April 12th
Link (2): Primer on Queueing Theory-Perf. Analysis
Slotted ALOHA,
Poisson Process, Exponential Distribution
Bertsekas-Gallager (p.149-173)

Tuesday, April 17th
Link (3): More on MAC
Slotted Aloha, Pure Aloha, CSMA
Kurose-Ross (s.5.3.2-5.3.4)
Bertsekas-Gallager (p. 275-288)

Thursday, April 19th
Link (4): Link-Layer Addressing, Switches, Ethernet, 802.11
MAC addresses, ARP, VLANS
Ethernet, 802.11
Kurose-Ross (s.5.4-5.6, s.6.3)

Tuesday, April 24th
Link (5): Review and Catch-up
Synthesis
A bit of queueing:
Single Server Queue, Little's law
Kurose-Ross (s. 5.9)
Bertsekas-Gallager (p. 149-173)

Thursday, April 26th
Midterm review:
how to avoid the most common mistakes?
how to ace the final?
Doing the assignment early,
Coming to office hours,
Ensuring previous mistakes understood

Documents for this part:
  • Writing Assignment 5 (due April 26th):

Other references


  • Tanenbaum-Wetherall refers to:
    Computer Networks, 5th edition, S. Tanenbaum, 
David J. Wetherall, Prentice Hall, 2011
    ISBN-10: 0132126958,
 ISBN-13: 978-132126953
  • Peterson-Davie refers to:
    Computer Networks, A Systems Approach, 5th edition, L. Peterson, Bruce Davie, Morgan Kaufmann, 2011
    ISBN: 9780123850591
  • Bertsekas-Gallager refers to:
    Data Networks, 2th edition, D. Bertsekas, R. Gallager, Prentice Hall, 1992
    ISBN-10: 0132009161, ISBN-13: 978-0132009164