CPEG 419 Fall 2006

  • Textbook: Kurose and Rose. Computer Networking, 2004. This book is required
  • Prerequisites: Introduction to probability, C/C++ programming
  • Grading: homework homework=20%, projects=20%, midterms=20% (each), final=20%. Homework and projects turned in late will be marked off 2.5% per day (including weekends).
  • Lab section: This class will have regular lab sections. The times and places will be announced on the web page.
  • Lab sessions and projects policy. Projects are demonstrated in lab during the week the lab is due. The lab write-up is due by Friday morning during the week that the lab is due. If you are unable to demonstrate your project during your lab session, there will be a makeup lab session on Thursday at 9pm. Failing to demonstrate your project during your lab section, but completing during the make-up lab session will result in a 10% deduction in the grade.
  • Make sure that you have access to Evans 132 and can log into the machines there.

 

Objective: To gain an understanding of how the Internet works. To be able to use sockets to exchange data on the Internet.

Tentative plan

 
Date
Book Sections
Topics and Concepts
Assessments Due
Overview
8/29 1.1, 1.2 Building blocks of the Internet, Video. End-hosts, client/server/peer, connection/connectionless service  
8/31 1.3, 1.6 The network core: Packet switching vs. circuit switching, Virtual circuit, Delay, Packet loss, Ping/Tracert, MAC basics  
9/5 1.5, 1.7, 2.1 IPSs/backbone/stubs. The protocol stack, Introduction to Applications  
Applications
9/7 2.2, 2.4 HTTP, SMTP
9/12 2.6 Peer-to-peer file sharing: Napster, Gnutella, KaZaA; expanding ring search, neighbors, overlay network, graph theory concepts
9/14 2.5 Discussion of project 2  
9/19   Discussion of project 2  
9/21 2.5 DNS
Exam I
9/26   Internet Overview and Application Layer  
Transport I
9/28   Principles of Transport: multiplexing/ports, UDP vs.TCP, reliable transport  
10/3   Reliable transport: stop-and-wait v1: ACK, NACK, drops, duplicates; Stop-and-wait v2: sequence number; pipelining.  
10/10   Reliable transport: Go-Back-N
10/12   Go-Back-N
Transport II
10/17   go-back-N, selective retransmit, project 3 discussion and review
10/20 3.7 TCP: overview; mechanics: header, ACK/sequence numbering, cumulative/selective ACK; detecting losses: RTT and triple duplicate ACK, exponential backoff;  
10/24 make up TCP: congestion control: congestion window, additive increase multiplicative decrease;
10/26 3.7, 3.5.6 TCP: congestion control: slow-start and time-out; connection management: SNY/FIN/RST, the SYN-attack.  
Routing
10/31 4.4, 4.4.1 Routing overview, IP packets, hierarchical routing/subnets, link-state vs distance vector  
11/1   Lab Project 2
11/2 4.5.2, 4.6.1 Distance vector: Dynamic programming/contractions, convergence
Routing
11/7&11/8   Review of Transport Layer
11/9

4.6.1

4.62

Distance vector: count to infinity, poison return, RIP

Link-state: Dijastra's algorithm;

HW 3
Routing
11/14

4.5.1, 4.6.2, 4.6.3

Link-state: OSPF: Link-State announcement, Hello, reliable flooding, bidirectionality. BGP

11/15   Project 3 discussion  
MAC
11/16 5.1, 5.2 MAC  
11/21 5.3 MAC HW4
11/29 5.5.2, 5.4 MAC  
11/30 6.3 802.11  
12/5 6.3 review
Final Exam
12/7