CSL 374 Computer Networks (Semester I 2007-2008)
The purpose of this course is to introduce fundamental principles and concepts of computer networks. We will use a top-down approach to study the Internet Protocol stack. We will first study popular network applications such as Web, email, FTP, and P2P, then study communications services required to support these applications, and finally study how these communication services are implemented. Throughout this course, we will use the Internet's architecture and protocols to reinforce fundamental computer networking principles.
This page provides information on the following:
- Announcements
- Administrative Details
- Textbooks and Reading List
- Syllabus (Outline, Notes)
- Interesting URLs
- Evaluation: Assignments, Midterm, and Final
Announcements
26/11/07: BitTorrent Modeling paper by Srikant et al. available on moodel.
21/11/07: Grades available moodles. Contact me on Monday,
26 November 2007 if there are issues with your grades for this class.
28/10/07: Assignment 4 released.
10/10/07: Course notes (in PPT format) available from moodle.
24/09/07: Assignment 3 deadline extended; please see below.
17/09/07: Assignment 3 released.
10/09/07: Please use Moodle to submit Assignment 2. Moodle
can be accessed at: http://jaijaivanti.cse.iitd.ac.in/courses/.
Please register yourself and submit assignment.
10/09/07: Assignment 2 deadline extended. See below.
26/08/07: Assignment 2 released.
22/08/07: Initial list of networking papers released. See
here.
15/08/07: Ethereal is available on the Linux machines in
the general computing lab; it's installed at
/usr/local/ethereal-0.99.0; please edit your $PATH settings accordingly.
15/08/07: Assignment 1 will now be due in-class on Tuesday, August 21.
31/07/07: Room change: From today (Tuesday, July 31st) and
until further notice, we will
meet in Room IIA201 (first floor), Bharti building.
Administrative Information
Here you will find administrative information for the CSL 374.
- Instructor: Professor Anirban Mahanti, Bharti Building, 310.
- Session/Lectures: Mon, Tues, Wed: 12:00 - 13:00 hours, IIA201, Bharti building (please note the change)
- Office Hours: By appointment.
- Prerequisites: Please refer to the curriculum.
- Tutorials/Labs: Details coming soon.
Textbook, References, and Reading List
The recommended textbook for this course is:
- Computer Networking: A Top-Down Approach Featuring the Internet (Third Edition), James F. Kurose and Keith W. Ross, Addison Wesley, 2005.
- Computer Networks (Fourth Edition), Andrew S. Tanenbaum,Prentice Hall, 2003.
Lectures will be drawn from both textbooks, as well as from the research literature. I will also be pointing you to relevant research literature; some will be optional reading while others will be compulsory reading (i.e., material you may be tested upon). There will be some emphasis on self learning, so please be prepared to read.
I have released a preliminary list of papers from the networking research literature. Follow this link to access the list:
Also, you might want to read this very nice 2-page tutorial called How to Read a Paper by Prof. S. Keshav at U Waterloo.Outline (tentative)
- Introduction (1.5 weeks)
Overview of the Internet, client/server paradigm, circuit switching, packet switching, physical media, queuing delay and packet loss, TCP/IP and OSI reference models, Internet Protocol Stack
Readings: Chapter 1 (Kurose and Ross); Sections 1.1 - 1.9, 2.2 (Tanenbaum)
Notes: Introduction (PDF, PPT) - Application Layer (2 weeks)
Service requirements, WWW, HTTP, Electronic Mail, Domain Name System, Socket programming, DNS, Peer-to-Peer
Readings: Chapter 2 (Kurose and Ross); Sections 7.1 - 7.3 (Tanenbaum)
Notes: Overview & HTTP (PDF, PPT), FTP & SMTP (PDF, PPT), DNS (PDF, PPT) - Transport Layer (2 weeks)
Service models, Multiplexing/Demultiplexing, Connection-less transport (UDP), Principles of reliable data transfer, Connection-oriented transport (TCP), TCP congestion control, TCP Variants, Checksum IP/UDP, Reliable Data Transfer, Transmission Control Protocol
Readings: Chapter 3 (Kurose and Ross); Chapter 6 (Tanenbaum)
Notes: UDP (PDF, PPT), Reliable Data Transfer (PDF, PPT), TCP (PDF, PPT) - Network Layer Addressing (1 week)
NIC addressing, IP addressing, IPv4, IPv6, ICMP, Network layer addressing, Link Layer Addressing
Readings: Section 4.4, 5.4 (Kurose and Ross); Section 5.6 (Tanenbaum)
Notes: Addressing (PDF) - Network Layer Routing (1.5 weeks)
Routing and forwarding, Routing algorithms, Routing in the Internet, Multicast
Readings: Chapter 4 (Kurose and Ross); Chapter 5 (Tanenbaum)
Notes: Routing (PDF) - Link Layer and Local Area Networks (1.5 weeks)
Link layer services, Error detection and correction, Multiple Access Protocols, Link layer addressing, Ethernet, Hubs and switches, Point-to-Point Protocol
Readings: Chapter 5 (Kurose and Ross); Sections 3.1, 4.1 - 4.3 (Tanenbaum) - Wireless and Mobile Networks (1.5 weeks)
Wireless links and network characteristics, Wi-Fi: IEEE 802.11 Wireless LANs, Cellular Internet Access, Mobility management and Mobile IP
Readings: Chapter 6 (Kurose and Ross); Sections 4.4 - 4.5 (Tanenbaum) - Multimedia Networking (1 week)
Networked multimedia applications, best-effort service and multimedia delivery requirements, Multimedia protocols (RTSP, RTP, RTCP, SIP), Content Distribution Networks
Readings: Sections 7.1 - 7.5 (Kurose and Ross); Section 7.4 (Tanenbaum) - Security (1 week)
Principles of cryptography, symmetric key algorithms, public key algorithms
Readings: Sections 8.1 - 8.5 (Kurose and Ross); Sections 8.1 - 8.3 (Tanenbaum)
Interesting URLs (?)
- Standards Group MAC Addresses: A Tutorial Guide, IEEE Standards Assoc.
- IEEE Registration Authority
- File Transfer Protocol, RFC 959.
- Vinton Cerf and Robery Kahn are winners of the 2004 Turing Award, for thier pioneering work on internetworking. For more details, visit the ACM Turing Award page.
- For fun ... Pigeon-powered Internet takes Flight.
- Read about Marc Andreessen co-developer of Mosaic; Tim Berners-Lee inventor of the WWW; Sabeer Bhatia co-founder of Hotmail.
- Peer-to-Peer
- Charles Spurgeon's Ethernet Web Site
- DNS Resource Directory
- RFC 1035 - Domain names - implementation and specification
- RFC 1034 - Domain names - concepts and facilities
- RFC 2616 - Hypertext Transfer Protocol - HTTP/1.1
- Internet Assigned Numbers Authority (see the section on protocol number assignment and IP address services)
- Internet Corporation for Assigned Names and Numbers
Another link to RFC 1035 (Well-formatted Web page)
Evaluation
As per institute regulations, there will be two mid-semester and one end-semester examinations. In addition, there will be approximately 5 assignments; the assignments will be a mix of paper and pencil exercises, and programming projects. You will also be expected to write a survey of a recent research topic. The topic must broadly fit within the purview of the course and must be agreed to a priori between the instructor and the student.
The total for the course will be calculated using the weights given below. The weighted total will be converted to a letter grade according to IIT-D's grade point system.
- Assignments (30%)
- Assignment 1,
due in-class by 21 August 2007.
Download the tracefile: simpletrace.cap (~38MB)
More information on Ethereal can be found here. - Assignment 2, due by 21:00 hours on 12 September 2007.
- Assignment 3, due by 21:00 hours on 27 September 2007.( New Deadline!)
- Assignment 4, due by 23:55 hours on 8 November 2007.
- Mid-semester examination I (12%)
- Mid-semester examination II (13%)
- End-semester examination (45%)