|
Notes
Lecture | Date | Topic | Lecture Topic | Textbook Reading | Additional Reading | Lab Assignment |
---|---|---|---|---|---|---|
1 | Tuesday Sept. 3 |
Introduction | Course overview; an introduction to the Internet (pptx, pdf video: part1 video: part2) |
1.1, 1.2, 1.7 |
Interesting RFCs; Clos Networks; Google Datacenter Networks; ISP Backbone Maps; |
|
2 | Thursday Sept. 5 |
Taxonomy of communication networks (pptx, pdf video: part1 video: part2) |
1.3, 1.4 |
M/M/1 simulation; |
||
3 | Tuesday Sept. 10 |
Statistical multiplexing (pptx, pdf video: part1 video: part2 ) |
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. 12 |
Layered network architectures and the end-to-end arguments (pptx, pdf video: part1 video: part2 ) |
1.5, 2.3 |
History: Design
Philosophy of DARPA Internet;
|
||
5 | Thursday Sept. 19 |
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. 24 |
Email; DNS (pptx, pdf video: part 1, video: part 2 ) |
2.1, 2.3, 2.4 |
SPF;
SPF,
DKIM, DMARC; DNS: Example dig commands DNS attack: DDoS on DNS; Syrian attack on NYTimes |
||
7 | Saturday Sept. 26 |
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 |
|
8 | Tuesday Oct. 8 |
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. 10 |
FTP; HTTP 1.0/1.1 (pptx, pdf, video: part 1, video: part 2 ) |
2.2.5, 2.6 |
BasicWebServer.java; WebRequestHandler.java; See slides for more links to shtml, cgi, and ajax. |
||
10 | Tuesday Oct. 15 |
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 |
Assignment Three | ||
11 | Thursday Oct. 17 |
Global Request Routing (pptx, pdf, video: part 1, video: part 2 ) |
||||
12 | Tuesday Oct. 17 |
Load-balancing Servers; Per-Thread Servers (pptx, pdf, video: part 1, video: part 2 ) |
TCPServerMT.java RequestHandler.java |
|||
13 | Thursday Oct. 22 |
Servers using Thread Pool and
Synchronization (pptx, pdf, video: part 1, video: part 2 ) |
Java Concurrency Tutorial;
ShareExample.java; SyncOverhead.java; ShareWelcome; ShareQ; WaitNotify; Threadpool using java.util.concurrent.ThreadPoolExecutor Chapter 11 of Java Network Programming; |
|||
14 | Tuesday Oct. 24 |
Application Overlays (P2P)
(pptx, pdf, video: part 1, video: part 2 ) |
BitTorrent optional: WebRTC Skype; Skype/Google+/iChat |
|||
15 |
Thursday Oct. 29 |
Transport Layer |
Overview; UDP (pptx, pdf, video: part 1, video: part 2 ) |
3.1-3.3 | ||
16 |
Tuesday Oct. 31 |
Reliable Data Transfer: Stop and Wait/Alternating-Bit Protocol (pptx, pdf, video: part 1, video: part 2 ) |
3.4 | |||
17 |
Thursday Nov. 5 |
Reliable Data Transfer: Sliding Window Protocols (pptx, pdf, video: part 1, video: part 2 ) |
3.4 | |||
18 |
Thursday Nov. 7 |
TCP: Reliability and Connection Management (pptx, pdf, video: part 1, video: part 2 ) |
3.5-3.7 | Class Project | ||
19 |
Thursday Nov. 12 |
TCP Congestion Control: AIMD (pptx, pdf, video: part 1, video: part 2 ) |
3.5-3.7 | System: Original TCP CC paper | ||
20 |
Thursday Nov. 14 |
General Resource Allocation Framework; Nash Bargaining Solution; Primal-Dual; TCP/Reno and Vegas as Primal-Dual (pptx, pdf video: part 1, video: part 2 ) |
optional: TCP in 4G LTE networks QUIC: Design; Deployment and evaluations |
Assignment Four | ||
21 |
Tuesday Nov. 19 |
General Resource Allocation Framework; Nash Bargaining Solution; Primal-Dual; Transport-cc-reno-cubic (pptx, pdf, video: part 1, video: part 2 ) |
optional: TCP in 4G LTE networks QUIC: Design; Deployment and evaluations |
|||
22 |
Thursday Nov. 21 |
General Resource Allocation Framework; Nash Bargaining Solution; Primal-Dual; Transport-cc-num-framework (pptx, pdf, video: part 1, video: part 2 ) |
optional: TCP in 4G LTE networks QUIC: Design; Deployment and evaluations |
|||
23 | Tuesday Nov. 26 |
Network Layer and Link Layer | Network Layer Overview; Distance Vector Protocols (pptx, pdf) |
5.1, 4.1, 5.2 |
(Link to all chapters of the book.) RIPv2 RFC |
Assignment Five |
24 |
Thursday Nov. 28 |
Distance Vector Protocols (pptx, pdf, ) |
5.2, 5.3 |
Acknowledgment: The materials of this course are heavily based on CPSC 433/533 at Yale University, by courtesy of Dr. Y. Richard Yang.