Networks and Protocols (Fall 2012)
Course: Networks and Protocols (320301)
Instructor: Jürgen Schönwälder
TA: Johannes Schauer
Monday 08:15 - 09:30 West Hall 3
Wednesday 09:45 - 11:00 West Hall 3
Start: September 3rd, 2012

The course discusses computer network and network protocols in some depth in order to enable students to understand the core issues involved in network protocol design. The fundamental algorithms and principles are explained in the context of existing IEEE / Internet protocols in order to demonstrate how fundamental principles are applied in real-world protocols. This course is recommended for all students with a strong interest in communication networks.

Course topics: Local area networks (IEEE 802), Internet protocols, routing algorithms and protocols, flow and congestion control mechanisms, data representation, application layer protocols, remote procedure calls, network security.

Course Materials:
  • A.S. Tanenbaum, "Computer Networks", 4th Edition, Prentice Hall, 2002
  • W. Stallings, "Data and Computer Communications", 6th Edition, Prentice Hall, 2000
  • F. Halsall, "Data Communications, Computer Networks and Open Systems", 4th Edition, Addison-Wesley, 1996
  • C. Huitema, "Routing in the Internet", 2nd Edition, Prentice Hall, 1999
  • W.R. Stevens, "TCP/IP Illustrated Volume 1: The Protocols", Addison Wesley, 1994.
  • D. Comer, "Internetworking with TCP/IP Volume 1: Principles Protocols, and Architecture", 4th Edition, Prentice Hall, 2000
  • J.F. Kurose, K.W. Ross, "Computer Networking: A Top-Down Approach Featuring the Internet", 3rd Edition, Addison-Wesley 2004.
2011-09-03 2012-09-05 Introduction, Internet Concepts and Principles
2012-09-10 2012-09-12 Media Access Control
2012-09-17 2012-09-19 Error Detection, Flow Control, Congestion Control
2012-09-24 2012-09-26 Local Area Networks (Ethernet, Bridges, VLANs)
2012-10-01 2012-10-03 Internet Network Layer (IPv4/IPv6)
2012-10-08 2012-10-10 Internet Routing Protocols (RIP, OSPF, BGP)
2012-10-15 2012-10-17 Internet Transport Layer (UDP/TCP)
2012-10-22 2012-10-24 Internet Transport Layer (TCP)
2012-10-29 2012-10-31 Firewalls, Network Address Translators
2012-11-05 2012-11-07 Lab Sessions
2012-11-12 2012-11-14 Internet Application Layer (DNS)
2012-11-19 2012-11-21 Internet Application Layer (ASN.1/BER, XDR, ABNF)
2012-11-26 2012-11-28 Internet Application Layer (SMTP, IMAP, PGP, S/MIME, DKIM)
2012-12-03 2012-12-05 Internet Application Layer (HTTP, FTP, WebDAV)
2012-09-24Quiz q1Media Access Control, Error Detection
2012-10-04Assignment p1Trivial File Transfer Protocol (TFTP)
2012-10-08Quiz q2IEEE 802 Local Area Networks
2012-10-22Assignment p2IP Forwarding
2012-10-31Quiz q3IP Routing Protocols
2012-11-05Assignment p3OSPF Network Lab
2012-11-14Quiz q4Transport Protocols
2012-11-28Assignment p4BGP Routing Simulation
2012-11-26Quiz q5Domain Name System
2012-12-21Final ExamEast Hall 4 (closed book)

The final grade is made up of the final exam (35 %), biweekly quizzes (35 %) and some homework assignments (30 %). It is required to submit the solution for homeworks assignments electronically. Homeworks may need to be defended in an oral interview.

Solutions must be submitted via the grader. Late submissions after the deadline will be penalized. For every hour late, you will loose 10% of the points. We account an additional bonus of 15 minutes for electronic submissions (you know how well email sometimes works). This means, a solution received 01:15 late will loose 10%, a solution received 02:15 late will loose 20% and so on. If we receive more than one submission, we will pick the last one.

Any programs which have to be written will be evaluated based on the following criteria:

  • correctness including proper handling of error conditions
  • proper use of programming language constructs
  • clarity of the program organization and design
  • readability of the source code and any output produced

Source code must be accompanied with a README providing an overview of the source files and giving instructions how to build the programs. A suitable Makefile is required if the build process involves more than a single source file.

The policy on makeup quizzes and exams is the following: To be able to get a makeup, you have to either (a) have an official excuse from the registrar's office or (b) approach me well in advance of the quiz/exam with a very good reason for not being able to participate (e.g., because you take a GRE computer science subject test at the day of a quiz). Furthermore, I require that people take action to immediately contact me when they return to campus or recover from illness so that we can fix a date for the makeup. Once a week has passed, I do not feel obliged to offer a makeup anymore.