Networked Systems
Instructor: Boon Thau Loo (boonloo AT cis.upenn.edu)
Course Description
This course provides an introduction to fundamental concepts in the design and implementation of networked systems, their protocols, and applications. Topics to be covered include: Internet architecture, network applications, addressing, routing, transport protocols, network security, and peer-to-peer networks. The course will involve three homework assignments, two programming projects, and two written exams. This course is open to all undergraduate and graduate students in the CIS, ESE, and TCOM departments.Course textbook:
- Computer Networks: A Systems Approach (5th Edition). Larry L. Peterson and Bruce S. Davie. (E.g. Amazon). You can use the 4th edition too if you prefer to buy a used copy.
- Additional material will be drawn from selected research publications.
Course pre-requisites:
CIS 121 (Programming Languages and Techniques II), or equivalent programming experience, or permission of instructor. Data structures and basic probability. Course projects require knowledge of C/C++.
Grading
- Written homework assignments: 12%
- Programming projects: 45%
- Class participation: 3%
- Midterm 1: 20%
- Midterm 2: 20%
Schedule
The schedule here is tentative and subjected to change.
Date | Topic | Reading | Remarks | |
---|---|---|---|---|
Jan 9 | Class introduction | None | ||
Jan 14 | Internet Architecture, layering, and end-to-end arguments | Chapter 1.1-1.3; [Cla95] [History]; [E2E] |
||
Jan 16 | Network performance metrics | Chapter 1.4, 1.5; | Homework 1 | |
Jan 21 | Martin Luther King, Jr. Day | |||
Jan 23 | Socket programming | Beej; Sockets | ||
Jan 28 | Event-driven network programming Switch and router architecture |
Chapter 3.1-3.2, 3.4 | ||
Jan 30 | Subversion and code repository Switch and router architecture (cont) |
Project 1 (due Feb 27, checkpoints Feb 5 and 13. Demo on Feb 28.) TA guest lecture on subversion |
||
Feb 4 | Network simulation and description of course projects | ns-3 | TA guest lecture on ns3 and project discussion | |
Feb 6 | IP and Intra-domain routing | Chapter 4.1-4.3 | ||
Feb 11 | Intra-domain routing (cont) | Chapter 4.3; | ||
Feb 13 | Inter-domain routing (cont) Transport protocols (UDP and TCP) |
Chapter 5.1, 5.2; [CR05] | ||
Feb 18 | TCP, congestion control | Chapter 6.3, 6.4 | ||
Feb 20 | Congestion control | Chapter 6.3, 6.4 | ||
Feb 25 | Variants of TCP | Homework 2 (due Mar 11) | ||
Feb 27 | Buffer | |||
Mar 2-10 | Spring Break | |||
Mar 11 | Multicast | Chapter 4.4 Optional: [ESM] |
||
Mar 13 | Midterm 1 | |||
Mar 18 | P2P networks, distributed hash tables | [SMN03] [BKK+03] Chapter 9.4 |
||
Mar 20 | DHT-based overlay networks | [SAZ+02] | Project 2 (due Apr 17, checkpoints Mar 22 and Apr 5, demo on Apr 18) | |
Mar 25 | Project 2 discussion, Quality of Service | Chapter 6.2, 6.5 | ||
Mar 27 | Quality of Service (cont) | Chapter 6.2, 6.5 | ||
Apr 1 | MAC | Chapter 2.1-2.4, 2.6 | ||
Apr 3 | Mobility and wireless networking | Chapter 2.8, 4.2.5 | Homework 3 (due Apr 10) | |
Apr 8 | Class cancelled. | Instructor out of town | ||
Apr 10 | Software-defined networks. | OpenFlow | Instructor out of town | |
Apr 15 | Wireless networking (mobile IP and wireless TCP). | |||
Apr 17 | Routing in mobile ad-hoc networks | [BMJ98] [Epi] | ||
Apr 22 | Midterm 2 |