Networks and Protocols (Fall 2008)
Course: Networks and Protocols (320301)
Instructor: Jürgen Schönwälder
TA: Nikolay Melnikov
Lectures:
Monday 08:15 - 09:30 East Hall 1
Wednesday 14:15 - 15:30 East Hall 1
Start: September 3rd, 2008
Contents:

The course builds on the course Operating Systems and Networks (320202) and discusses protocol designs in more 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 results are used in real-world protocols. This course is recommended for EECS students with a strong interest in communication networks.

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

Course Materials:
Books:
  • 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.
Links:
Schedule:
DateDateTopics
2008-09-03 Introduction, Socket API
2008-09-08 2008-09-10 Fundamental Principles
2008-09-15 2008-09-17 Local Area Networks (Ethernet, Bridges, VLANs)
2008-09-22 2008-09-24 Internet Network Layer (IPv4/IPv6)
2008-09-29 2008-10-01 Internet Routing Protocols (RIP, OSPF, BGP)
2008-10-06 2008-10-08 Lab Sessions
2008-10-13 2008-10-15 Internet Transport Layer (UDP/TCP)
2008-10-20 2008-10-22 Firewalls, NATs, Mid-Term Examination
2008-10-27 2008-10-29 Internet Application Layer (DNS, ASN.1)
2008-11-03 2008-11-05 Internet Application Layer (BER, XDR, ABNF)
2008-11-10 2008-11-12 Internet Application Layer (SMTP, IMAP, PGP, S/MIME, DKIM)
2008-11-17 2008-11-19 Internet Application Layer (HTTP, FTP)
2008-11-24 2008-11-26 Security Protocols (TLS, DTLS, SSH)
2008-12-01 2008-12-03 Remote Procedure Calls (ONC RPC, XML-RPC), Exam Preparation
Grading:

The final grade is made up of the mid-term exam (30 %), the final exam (30 %), biweekly quizzes (20 %) and some homeworks / mini projects (20 %). It is required to submit the solution for programming problems electronically and solutions for homeworks on paper. Homeworks and project work 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.

The overall percentage will be converted into Jacobs University grades as follows:

PercentageGradeDescription
[95-100]1.00Excellent
[90-95)1.33Very Good
[85-90)1.67Very Good
[80-85)2.00Good
[75-80)2.33Good
[70-75)2.67Satisfactory
[65-70)3.00Satisfactory
[60-65)3.33Satisfactory
[55-60)3.67Sufficient
[50-55)4.00Sufficient
[45-50)4.33Sufficient
[41-45)4.67Failing
[ 0-40)5.00Failing

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

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 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.

Assignments:
Exams:
  • Midterm Exam (closed book) (2008-10-22 14:15)
    Campus Center Eastwing
  • Final Exam (closed book) (2008-12-17 13:00)
    Conrad Naber Lecture Hall