CPEG 419/CISC 450 Fall 2015

  • Textbook: 6th editioon of Kurose and Rose. Computer Networking. This book is required
  • Prerequisites: Introduction to probability, C/C++ programming, abaility to use VMware or cloud
  • Grading (subject to change): homework homework=20%, projects=25%, midterm=20%, final=25%, forum and class discussion, 10%. .
  • Homework must be turned on online
  • While not required, a laptop is useful.
  • Most lectures are also availabe in video online. But these videos are fast paced. See video on how to watch videos lectures. Also, the material covered in class is not exactly the same as the material covered in the videos.
  • All homework and projects should be turned in via email and include your name in the file name and on the homework and projects.

 

 

Objective: To gain an understanding of how the Internet works. Understand a select set of protocols from the OSI (or TCP/IP) protocol stack, understand the principles of protocol, understand basic protocol performance analysis. To be able to use sockets to exchange data on the Internet. To gain preliminary understanding of distributed systems.

Tentative plan (dates and topics might change)

 
Date
Book Sections
Topics and Concepts
Overview
9/2 1.1, 1.2 Building blocks of the Internet. End-hosts, client/server/peer, The protocol stack. Multiplexing
89/4 1.3, 1.6 The network core: Packet switching vs. circuit switching, Virtual circuit, Delay, Packet loss, Ping/Tracert, MAC basics
9/9 1.5, 1.7, 2.1 ISPs/backbone/stubs. Introduction to Applications. TCP and UDP. Discussion of Project 1
Applications

9/11

2.2, 2.4 HTTP
9/14 2.4, 8.6 HTTP, SSL, FTP, SMTP

9/16 9/18

2.6 Peer-to-peer file sharing: Napster, Gnutella, KaZaA; expanding ring search, neighbors, overlay network, graph theory concepts
9/21 2.6 Discussion of project 2
9/23 2.5 DNS
9/30 2.5 DNS details
10/2 Notes Components of a modern web servering systems. HTTP performance
10/5 2.6 DHT
Transport I
10/7 3.1, 3.2 Principles of Transport: multiplexing/ports, UDP vs.TCP. UDP. Checksum
10/9 3.3 UDP//Review
10/19   Midterm - Chapter 1 and 2
10/14 3.4 Reliable transport: stop-and-wait v1: ACK, NACK, drops, duplicates; Stop-and-wait v2: sequence number; pipelining.
10/16 3.4 Go-Back-N and selective retransmit
10/19 3.5 Principles of congestion control
Transport II

10/21 10/23

3.6 TCP: overview; mechanics: header, ACK/sequence numbering, cumulative/selective ACK; detecting losses: RTT and triple duplicate ACK, exponential backoff;
10/26 3.7 TCP: congestion control: congestion window, additive increase multiplicative decrease;
10/28 3.7, 3.5.6 TCP: congestion control: slow-start and time-out; connection management: SNY/FIN/RST, the SYN-attack.
Routing

10/30

11/2

4.4, 4.4.1 Routing overview, IPv4, Fragmenting, ICMP, NATs, DHCP, addressing hierarchical routing/subnets
11/4, 11/6 4.5.1, 4.6.2, 4.6.3 Link-state: OSPF: Link-State announcement, Hello, reliable flooding, bidirectionality, Dijkstra's Algorithm

11/9

11/11

4.5.2, 4.6.1 Distance vector: Dynamic programming/contractions, convergence, count to infinity, poison return
11/13 4.6 Project 3 Discussion, Hierarchical routing
11/16 4.6 Hierarchical routing
MAC
11/18 5.1, 5.2 link layer services
11/20, 11/23 5.5 VLAN
11/30, 12/1 5.4 ARP
12/4, 12/7 5.4 link layer routing
12/9 5.6 Data center networking and network architectures
12/11 5.7 notes end-to-end packet delivery
Final Exam