ELEG651/CISC650

Spring 2016

  • Textbook: Kurose and Rose. Computer Networking, 2013. 6th edition. This book is required
  • Prerequisites: Introduction to probability, C/C++ programming
  • Grading (subject to change): homework homework=20%, projects=20%, midterm=25%, final=35%, class discussion, 5%.
  • 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.
  • 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 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.

Tentative plan

 
Date
Book Sections
Topics and Concepts
Assessments Due
Overview
2/8 1.1, 1.2 Building blocks of the Internet, Video. End-hosts, client/server/peer, connection/connectionless service  
2/10 1.3, 1.6 The network core: Packet switching vs. circuit switching, Virtual circuit, Delay, Packet loss, Ping/Tracert, MAC basics  
2/15 1.5, 1.7, 2.1

IPSs/backbone/stubs. The protocol stack, Introduction to Applications

Help on Project 1

 
Applications

2/15-2/17

2.2, 2.4 HTTP, SMTP

2/22

2.6 Peer-to-peer file sharing: Napster, Gnutella, KaZaA; expanding ring search, neighbors, overlay network, graph theory concepts
2/24 2.5 Discussion of project 2
3/1 2.5 DNS
3/3   DHT  
Transport I
3/3   Principles of Transport: multiplexing/ports, UDP vs.TCP, reliable transport  
3/3   Reliable transport: stop-and-wait v1: ACK, NACK, drops, duplicates; Stop-and-wait v2: sequence number; pipelining.  
3/8   Reliable transport: Go-Back-N
3/8   Go-Back-N
Transport II
3/10   go-back-N, selective retransmit

3/15

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

4/5-4/7

4.4, 4.4.1 Routing overview, IPv4, Fragmenting, ICMP, NATs, DHCP, addressing hierarchical routing/subnets Project 2
4/12   IPv6 HW 3
4/12   link-state vs distance vector  
4/14-4/19 4.5.1, 4.6.2, 4.6.3 Link-state: OSPF: Link-State announcement, Hello, reliable flooding, bidirectionality, Dijkstra's Algorithm  
4/21 4.5.2, 4.6.1 Distance vector: Dynamic programming/contractions, convergence, count to infinity, poison return
4/26   Project 3 Discussion  
4/28   Hierarchical routing  
MAC
5/3 5.1, 5.2 link layer services HW4
5/5-5/10 5.3 MAC - ALOHA, CSMA
5/12   MAC - Self-learning, ARP  
       
5/17   review of homeworks Project 3 HW5
Final Exam