CIS 553 / TCOM 512:
Networked Systems
Spring 2012


Instructor: Boon Thau Loo (boonloo AT cis.upenn.edu)
Room: Heilmeier Hall (Towne 100)
Time: Monday and Wednesday (12-1:30pm)
Office hours: Monday 1:30-2:30pm (605 Levine Hall)

Head TA: Harjot Gill (gillh AT seas.upenn.edu).

Teaching assistants:

  • Lin Dong (lindong AT seas.upenn.edu).
  • Manthan Gandhi (manthan AT seas.upenn.edu).
  • Yiqing Ren (yiqingr AT seas.upenn.edu).
  • Saravana Soundararajan (sarsou AT seas.upenn.edu).

    Announcements

  • We will be using Coursekit this semester. The signup code will be announced via email before (and during) first day of class.
  • Undergrads interested in this course should email Professor Loo directly, cc to Mike Felker (mfelker@seas) to get permissions to enroll in this course.


    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, one midterm, and a final. 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).
  • Additional material will be drawn from selected research publications.

    Course pre-requisites:

  • CSE 121 (Programming Languages and Techniques II), or equivalent programming experience, or permission of instructor. Data structures and basic probability.


    Grading

  • Written homework assignments: 12%
  • Programming projects: 45%
  • Class participation: 3%
  • Midterm: 15%
  • Final: 25%


    Schedule

    This syllabus is tentative and subjected to change. Please visit our Coursekit website for a more up-to-date schedule, links to lecture notes, homework assignments, etc.

    Date Topic Reading Remarks
    Jan 11 Class introduction None
    Jan 16 Martin Luther King, Jr. Day
    Jan 18 Internet Architecture, layering, and end-to-end arguments Chapter 1.1-1.3; [Cla95]
    Optional: [History]; [E2E]
    Jan 23 Network performance metrics Chapter 1.4, 1.5; Homework 1 (due Feb 1)
    Jan 25 Socket programming Beej; Sockets
    Jan 30 Event-driven network programming
    Switch and router architecture
    Chapter 3.1-3.2, 3.4
    Feb 1 Subversion and code repository
    Switch and router architecture (cont)
    Project 1 (due Mar 1, checkpoints Feb 6 and Feb 17)
    TA guest lecture on subversion
    Feb 6 Network simulation and description of course projects ns-3 TA guest lecture on ns3 and project discussion
    Feb 8 IP and Intra-domain routing Chapter 4.1-4.3
    Feb 13 Intra-domain routing (cont)
    Project discussion
    Chapter 4.3; TA project discussion
    Feb 15 Inter-domain routing (cont)
    Transport protocols (UDP and TCP)
    Chapter 5.1, 5.2; [CR05]
    Feb 20 TCP, congestion control Chapter 6.3, 6.4
    Feb 22 Congestion control Chapter 6.3, 6.4
    Feb 27 Variants of TCP
    Feb 29 Multicast Chapter 4.4
    Optional: [ESM]
    Homework 2 (due Mar 12)
    Mar 3-11 Spring Break
    Mar 12 P2P networks, distributed hash tables [SMN03] [BKK+03]
    Chapter 9.4
    Mar 14 Midterm
    Mar 19 DHT-based overlays [SAZ+02]
    Optional: [RKC01] [DKK01]
    Project 2 (due Apr 19, checkpoints Mar 22 and Apr 5)
    Mar 21 Project 2 discussion, Quality of Service Chapter 6.2, 6.5
    Mar 26 Quality of Service (cont) Chapter 6.2, 6.5
    Mar 28 Resilient overlays and E2E routing behavior [Pax96] [ADK01]
    Apr 2 Buffer
    Apr 4 MAC Chapter 2.1-2.4, 2.6
    Apr 9 Mobility and wireless networking Chapter 2.8, 4.2.5
    Apr 11 Wireless networking (mobile IP and wireless TCP) Homework 3 (due Apr 18)
    Apr 16 Routing in mobile ad-hoc networks [BMJ98] [Epi]
    Apr 18 Dynamic spectrum access networks [CBL09]
    Apr 23 Advanced topics: OpenFlow, experimental testbeds