Week 1 Fundamentals |
1/11 | Introduction. Syllabus. Overview and motivation. The telephone network vs. the Internet. Time-division, frequency-division & statistical multiplexing. | Keshav: Ch. 1 - 3 (skim Chapter 2) or P&D: Ch. 1 |
1/13 | Telephone network vs. Internet continued: virtual circuits, packetization, store & forward, packet-switching vs. circuit-switching, end-to-end delay, bit-rate, bandwidth-delay product. | ||
1/15 | Latency & bandwidth continued, Internet address allocation, Internet routing basics. | Homework 1 assigned | |
Week 2 Reliable Delivery |
1/18 | ||
  | 1/20 | The end-to-end argument, decentralization, layering, Simple reliability: Stop-and-Wait. | Keshav: Ch. 13 or P&D: Ch. 3.5 |
1/22 | Pipelined reliability: Static sliding window: algorithm and performance. Using sequence numbers and setting window sizes. | ||
Week 3 Transport Level Issues and Transport Protocols |
1/25 | Intro to congestion: effects on BW and RTTs, detecting congestion, DECbit approach, Additive Increase Multiplicative Decrease. | |
  | 1/27 | Building transport protocols: UDP vs. TCP, Ports, Checksums, TCP objectives. | Homework 1 due in class. |
  | 1/29 | Connection establishment, 3-way handshake, TCP state diagram, TCP flow control. | P&D: Ch. 6.1 - 6.2 |
Week 4 TCP Internals |
2/1 | TCP flow control (cont), RTT estimation: smoothing, measuring RTT variation, Setting timeout values. | |
  | 2/3 | TCP congestion control implementation: congestion window, slow start, fast retransmit/recovery. | P&D: Ch. 8.3 |
  | 2/5 | Using TCP & UDP: Sockets in BSD UNIX, socket system calls. | Homework 2 assigned |
Week 5 Routing and Switching | 2/8 | Virtual circuit routing vs. datagram routing. Packet forwarding. Routing algorithms: Distance-vector routing. | P&D: Ch. 4.1 |
  | 2/10 | Routing algorithms: Distance-vector routing example, Link-state routing using Dijkstra's algorithm. | P&D: Ch. 4.2 |   | 2/12 | Metrics for computing link costs, Intro to switching hardware and fabrics. Throughput of a switch. Input buffering vs. output buffering. |
Week 6 Advanced Switching |
Tuesday, 2/16 | Switch complexity. Crossbars, Banyan networks, Batcher sorting networks. | Project 1 assigned |   | 2/17 | Sunshine switches, Discussion of Project 1. | P&D: Ch. 4.4 |   | 2/19 | From switching to internetworking. IP packet format, encapsulation. | Homework 2 due in class. |
Week 7 Internetworking I |
2/22 | IP fragmentation & reassembly. IP packet forwarding. | P&D: Ch. 5.2 |   | 2/24 | IP <-> Link-level mappings: ARP, RARP. ICMP error reporting. | P&D: Ch. 5.3 |   | 2/26 | Scalability issues: subnetting and supernetting. Intradomain routing protocols: RIP, OSPF. |
Week 8 Internetworking II |
3/1 | Interdomain routing: BGP, CIDR. IPv6 issues: backwards compatibility to IPv4. | P&D: Ch. 5.4 - 5.5 |   | 3/3 | Tunnelling in IPv6. Autoconfiguration with DHCP. Mobile IP. | More info about DHCP and Mobile IP is available
here. Homework 3 assigned. |
  | 3/5 | DNS basics. Putting all the pieces together -- Example: invoking FTP. |   P&D: Ch. 5.6 |
Spring Break |
Week of 3/8 | ||
Week 9 Intro. to Multicast |
3/15 | Midterm Review. |   | 3/17 | Ethernet multicast. Intro to IP Multicast: Addressing, the MBone, tunneling between multicast-enabled routers. | Required supplemental reading on IP Multicast is available
here. |
  | 3/19 | IP Multicast (cont.): Internet Group Membership Protocol (IGMP), Multicast forwarding techniques: spanning tree, reliable flooding. | Homework 3 due. |
Week 10 Midterm week |
3/22 | MIDTERM: 9:30 - 11:00 | |
  | 3/24 | Class cancelled. |   | 3/26 | Multicast forwarding and routing techniques (cont.): reverse-path broadcast, flood-and-prune paradigm. | Week 11 More on multicast |
3/29 | Answers to questions on the midterm. |
  | 3/31 | Reliable multicast: issues and techniques. ACK implosion, ACKs vs. NACKs, hierarchical techniques. |   | 4/2 | End of reliable multicast: parity packets. Physical Layer: Manchester vs. NRZ encoding. Ethernet framing issues. |   Homework 4 assigned. |
Week 12 Network and MAC Layer |
4/5 | Ethernet's CSMA/CD protocol. Throughput analysis. |   P&D: Ch. 3.1, 3.2, 3.6, 3.7 |
  | 4/7 | Analysis of CSMA/CD protocol continued. Considerations: speed of light, packet size, propagation delay. |   | 4/9 | FDDI. Configuration, fault-tolerance and frame formats. Token-based access, synchronous vs. asynchronous traffic, bidding for token rotation time. | Week 13 Channel coding and compression |
4/12 | Description of Project 2. Discussion of link-layer CRC. |   Project 2 assigned.   Homework 4 due. |
  | 4/14 | CRC revisited. Introduction to compression. Costs and benefits of compressing. Lossless vs. lossy compression. Run-length encoding. |   | 4/16 | More lossless compression: Huffman codes, DPCM. Lossy compression of images: JPEG. |   P & D: Chapter 7.1 - 7.2 | Week 14 Provisioning for Real-time Traffic |
4/19 |
  | 4/21 | Encoding of video streams: MPEG. | |
  | 4/23 | Requirements of real-time applications. Quality of service guarantees, rate- and delay-adaptivity, elasticity, admission control. |   P & D: Chapter 9.3 |
Week 15 Integrated Services / Security |
4/26 | Scheduling policies: class-based queuing, fairness, (weighted) fair queuing. |   P & D: Chapter 8.2 |
  | 4/28 | Flow specification, token bucket filter characterization Resource reservation with RSVP. |   Homework 5 assigned |
  | 4/30 | Intro to cryptography. Shared-key vs. public key cryptosystems. RSA. |   P & D: Chapter 7.3 |
Week 16 Review |
5/1 | Cryptographic applications. File transfer with PGP. Kerberos authentication. |   P & D: Chapter 8.2 |
  | 5/3 and 5/5 | Comprehensive course review. | |
Final Exam | Sat, May 15 | Final Exam, 9-11AM |