Week 1 Fundamentals |
1/10 | Introduction. Syllabus. Overview and motivation. The telephone network vs. the Internet. Time-division, frequency-division & statistical multiplexing. | P&D: Ch. 1.1 - 1.2 | |
1/12 | 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/14 | Internetworking basics: definitions, Internet address allocation, Internet routing basics. | Homework 1 assigned. Addressing is in P&D: Ch. 4.1.3 | ||
Week 2 Reliable Delivery |
1/17 | |||
  | 1/19 | The end-to-end argument, decentralization, layering. | ||
1/21 | Simple reliability: Stop-and-Wait, timeouts, sequence numbers. | P&D: Ch. 2.5 | ||
Week 3 Transport Level Issues and Transport Protocols |
1/24 | Pipelined reliability: Static sliding window: algorithm and performance. | ||
  | 1/26 | Sliding window example. Using sequence numbers and setting window sizes. Simple (EWMA) RTT estimation. | Homework 1 due in class. | |
  | 1/28 | Building transport protocols: UDP vs. TCP, Ports, Checksums, TCP objectives. | P&D: Ch. 5.1 - 5.2 | |
Week 4 TCP Internals |
1/31 | Using TCP & UDP: Sockets in BSD UNIX, socket system calls. | (P&D: Ch. 1.3.1) |   | 2/2 | Connection establishment, 3-way handshake, TCP state diagram. |
  | 2/4 | TCP flow control and interface with the application. In class example of flow control operation. | P&D: Ch. 6.3 | |
Week 5 TCP Internals (continued) | 2/7 | TCP flow control (cont), Better RTT estimation and setting timeout values. TCP congestion control overview: AIMD principles. | Programming Assignment 1 assigned | |
  | 2/9 | TCP congestion control: slow start vs. steady-state AIMD. Fast retransmit / fast recovery. | Homework 2 due |   | 2/11 | Congestion control wrapup. Interaction between flow control and congestion control. Intro to Packet forwarding. |
Week 6 Switching, Forwarding and Routing |
2/14 | Virtual circuits and connection-oriented forwarding. Source routing. Intro to intradomain routing algorithms. | P&D: Ch. 3.1 Homework 3 assigned |   | 2/16 | Routing algorithms: Distance-vector, routing loops, breaking loops; Link-state routing using Dijkstra's algorithm. |   | 2/18 | Metrics for computing link costs. Intro to switches: general-purpose machines vs. specialized hardware. Crossbars. | P&D: Ch. 3.4.1 - 3.4.3 |
Week 7 Internetworking I |
Tuesday 2/22 | Basic switch designs (cont): Input and output buffering. Analysis of throughput through a crossbar. Output buffer design issues, knockout switch. |   | 2/23 | From switching to internetworking. IP and its objectives. IP packet format, encapsulation. | Homework 3 Due P&D: Ch. 4.1 - 4.2 |
  | 2/25 |
IP fragmentation & reassembly, MTU. IP addressing, packet forwarding and the distinction between IP and ARP. | Programming Assignment 1 Due |
Week 8 Midterm week |
2/28 | Midterm review |   | 3/1 |   | 3/3 | Midterm answers. IP <-> Link-level mappings: ARP, RARP. |
Spring Break |
Week of 3/6
| | ||
Week 9 Internetworking II |
3/13 | ICMP error reporting, Interdomain routing: BGP, CIDR. IPv6 issues: backwards compatibility to IPv4. | P&D: Ch. 4.3. |   | 3/15 | Scalability issues: subnetting and supernetting. Tunnelling in IPv6. Autoconfiguration with DHCP. Mobile IP. |   | 3/17 | IP wrapup. Multicast motivation and introduction. | Week 10 Intro. to Multicast |
3/20 | Ethernet multicast. Intro to IP Multicast. |   | 3/22 | Multicast addressing, the MBone, tunneling between multicast-enabled routers. | P&D: end of Ch. 4 |   | 3/24 | IP Multicast (cont.): Internet Group Membership Protocol (IGMP), Multicast forwarding techniques: spanning tree, reliable flooding. | Week 11 More on multicast | 3/27 | Multicast forwarding and routing techniques (cont.): reverse-path broadcast, flood-and-prune paradigm. |   | 3/29 | Reliable multicast: issues and techniques. ACK implosion, ACKs vs. NACKs, hierarchical techniques. | Homework 4 Due. |   | 3/31 | End of reliable multicast: parity packets. Physical Layer: Manchester vs. NRZ encoding. Intro to CRC. |
Week 12 Network and MAC Layer |
4/3 | CRC. Ethernet framing. Ethernet's CSMA/CD protocol. |   P&D: Ch. 2.1, 2.2, 2.6, 2.7 | |
  | 4/5 | Analysis of CSMA/CD protocol continued. Considerations: speed of light, packet size, propagation delay. |   | 4/7 | 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/10 | Wireless MAC protocols and issues following the 802.11 standard. |
  | 4/12 | Introduction to compression. Costs and benefits of compressing. Lossless vs. lossy compression. Run-length encoding. |   | 4/14 | More lossless compression: Huffman codes, DPCM. Lossy compression of images: JPEG. |   Homework 4 Due.   P & D: Chapter 7.2 |
Week 14 Provisioning for Real-time Traffic |
4/17 |
  | 4/19 | Encoding of video streams: MPEG. | ||
  | 4/21 | Requirements of real-time applications. Quality of service guarantees, rate- and delay-adaptivity, elasticity, admission control. | Prog. Assn. 2 Due   P & D: Chapter 6.5 | |
Week 15 Integrated Services / Applications |
4/24 | Scheduling policies: class-based queuing, fairness, (weighted) fair queuing. |   P & D: Chapter 6.2 | |
  | 4/26 | Flow specification, token bucket filter characterization Resource reservation with RSVP. |   P & D: Chapter 6.2 | |
  | 4/28 | Applications and application level protcols. Mail: SMTP. Web: HTTP. |   P & D: Chapter 9.2 | |
Week 16 Review |
5/1 | Course review and last day of class. | Homework 6 Due. | |
Final Exam | Friday , May 12 |