Home  –  Overview  –  Schedule  –  Readings  –  Resources

Schedule & Handouts

Notes

Lecture Date Topic Lecture Topic Textbook Reading Additional Reading Lab
Assignment
1 Tuesday
Sept. 12
Introduction Course overview;
an introduction to the Internet
(pptx, pdf)
1.1, 1.2, 1.7 Interesting RFCs;
Clos Networks;
Google Datacenter Networks;
ISP Backbone Maps;
 
2 Thursday
Sept. 14
Taxonomy of communication networks
(pptx, pdf)
1.3, 1.4 M/M/1 simulation;
 
3 Tuesday
Sept. 19
Statistical multiplexing
(pptx, pdf)
1.4, 1.5 Required:
The End-to-end Argument;
Alternative views:
Protocol Stack vs Heap;
GENI: A new initiative for network architecture;
Assignment One
4 Thursday
Sept. 21
Layered network architectures and the end-to-end arguments
(pptx, pdf)
1.5, 2.3 History: Design Philosophy of DARPA Internet;
5 Thursday
Sept. 26
Network Applications: Basic Overview of network apps; Email
(pptx, pdf, video: part 1, video: part 2 )
1.5, 2.3 History: Design Philosophy of DARPA Internet;

6 Thursday
Sept. 28
Email; DNS
(pptx, pdf, video: part 1, video: part 2 )
2.1, 2.3, 2.4 History: Email development;
SPF; SPF, DKIM, DMARC;
History: Development of DNS;
DNS: DNS wireshark capture; Example dig commands
DNS attack: DDoS on DNS; Syrian attack on NYTimes
 
7 Saturday
Oct. 7
Java in a nutshell; Network socket programming
(pptx, pdf, video: part 1, video: part 2)
2.7, 2.3, 2.2 m-DNS/DNS-SD: dns-sd; mDNS; DNS-SD Android NSD mDNS wireshark capture;

UDPClient.java;
UDPServer.java
Assignment Two
(Java installation tutorial)
8 Tuesday
Oct. 10
Network Applications:
FTP, HTTP and Distributed Systems
TCP socket programming; FTP
(pptx, pdf, video: part 1, video: part 2)
2.2.5, 2.6
Java Network Programming
(Ch. 12 on UDP, Ch. 2 on Enc/Dec);
EncodingDecoding.java;
TCPServer.java;
TCPClient.java;

FTP Seq. Diagram or FTP example
GridFTP


 
9 Thursday
Oct. 12
FTP; HTTP 1.0/1.1
(pptx, pdf,
video: part 1, video: part 2, video: part 3 )
2.2.5, 2.6 BasicWebServer.java;
WebRequestHandler.java;
See slides for more links to shtml, cgi, and ajax.
 
10 Tuesday
Oct. 17
HTTP 2.0; Operational Analysis
(pptx, pdf, video: part 1, video: part 2 )
HTTP/2; HTTP/2 wireshark capture (need both http2.pcapng and http2-keylog.txt)

Operational Analysis: Operational analysis
Section 2 of DAA on Akamai
11 Thursday
Oct. 19
Global Request Routing
(pptx, pdf, video: part 1, video: part 2 )
 
12 Tuesday
Oct. 24
Load-balancing Servers; Per-Thread Servers
(pptx, pdf, video: part 1, video: part 2 )
TCPServerMT.java
RequestHandler.java
13 Thursday
Oct. 26
Servers using Thread Pool and Synchronization
(pptx, pdf, video: part 1, video: part 2, video: part 3 )
Java Concurrency Tutorial; Java Concurrency Framework; Java Concurrent Programming;

ShareExample.java;

SyncOverhead.java;

ShareWelcome;
ShareQ;
WaitNotify;
Threadpool using java.util.concurrent.ThreadPoolExecutor
Chapter 11 of Java Network Programming;
Assignment Three
14 Tuesday
Oct. 31
Application Overlays (P2P)
(pptx, pdf, video: part 1, video: part 2 )
BitTorrent
optional: WebRTC
Skype;
Skype/Google+/iChat
 
15 Thursday
Nov. 2
Transport Layer Overview;
UDP
(pptx, pdf, video: part 1, video: part 2 )
3.1-3.3
16 Tuesday
Nov. 7
Reliable Data Transfer: Stop and Wait/Alternating-Bit Protocol
(pptx, pdf, video: part 1, video: part 2 )
3.4  
17 Thursday
Nov. 9
Reliable Data Transfer: Sliding Window Protocols
(pptx, pdf, video: part 1, video: part 2 )
3.4  
18 Thursday
Nov. 14
TCP: Reliability and Connection Management
(pptx, pdf, video: part 1, video: part 2 )
3.5-3.7  
19 Thursday
Nov. 16
TCP Congestion Control: AIMD
(pptx, pdf, video: part 1, video: part 2 )
3.5-3.7 Foundation: Original AIMD paper;
System: Original TCP CC paper
 
21 Thursday
Nov. 23
General Resource Allocation Framework; Nash Bargaining Solution; Primal-Dual; TCP/Reno and Vegas as Primal-Dual
(pptx, pdf video: part 1, video: part 2, video: part 3 )
Nash Bargaining Solution;
TCP as primal-dual;
optional:
TCP in 4G LTE networks
QUIC: Design; Deployment and evaluations
Assignment Four and Class Project
23 Thursday
Nov. 30
Network Layer and Link Layer Network Layer Overview;
Distance Vector Protocols
(pptx, pdf, no videos)
5.1, 4.1, 5.2 Chapter 5 of Bersekas/Gallager (Link to all chapters of the book.)
RIPv2 RFC
 
24
Tuesday
Dec. 5
Distance Vector Protocols
(pptx, pdf, video: part 1, video: part 2 )
5.2, 5.3  
25
Thursday
Dec. 7
Distance Vector revisions;
Link State Protocols
(pptx, pdf, video: part 1, video: part 2, video: part 3 )
5.2, 5.3, 5.4 DSDV OSPFv2 RFC   Assignment Five
26 Tuesday
Dec. 12
BGP Analysis; Forwarding
(pptx, pdf, video: part 1, video: part 2 )
5.4, 4.3 BGP-4 RFC fixedorbit;
Looking glass;
Arrow's Theorem Proof
 
27 Thursday
Dec. 14
DHCP; Link Layer
(pptx, pdf, video: part 1, video: part 2 )
4.3, 6.4    
28 Thursday
Dec. 21
Course Summary and Emerging Topics Course Summary;
SDN; Data Center;
(pptx, pdf, video: part 1, video: part 2, video: part 3 )
6.7  
20 Tuesday
Nov. 21
Guest Lectures Traffic Engineering
Yuchao Zhang (BUPT)
22 Tuesday
Nov. 28
Internet of Things
Yutong Liu (BUPT)


Acknowledgment: The materials of this course are heavily based on CPSC 433/533 at Yale University, by courtesy of Dr. Y. Richard Yang.

Copyright (c) 2023 Qiao Xiang, Department of Computer Science, Xiamen University