Syllabus

cs450-textbook Instructor: Balajee Vamanan
Lecture hours: MWF 3-3:50 PM Thomas Beckham Hall 180G
Office hours: M 4-5 PM, W 1-2 PM at SEO 1310
TA: Muhammad Usama Chaudhry
Office hours: TW 12-1 PM at SEO 1232
Textbook: Computer Networking: A Top-Down Approach by Kurose and Ross, 6th or 7th edition

Course Content

The goal of this course is to give you a good understanding of the various layers of the network protocol stack. Being a hands-on course, you will get exposure to a few network diagnostic tools and simulators. We will also breifly explore recent trends in networking research which would help those interested in networking research.

The course would cover the following topics:

  • TCP/IP layering model of the Internet
  • Domain Name Services (DNS)
  • Networking APIs for application developers
  • Network performance - throughput, delay and packet loss
  • TCP - Reliability and Congestion Control
  • IPv4/IPv6 Addressing / Routing
  • Inter/intra domain routing protocols
  • Network address translation
  • Mobility and the Internet
  • Network Security - Botnets, DoS/DDoS, Viruses and Worms
  • Multicast and Anycast mechanisms
  • Physical layer: modulation and coding

Prerequisites

A substantial portion of this class involves programming; please be prepared to write and debug a lot of code.

Grading

  • Grading is relative (i.e, grade cut-offs are not defined ahead of time).
  • Grading is done separately for graduate and undergraduate students.

These are the weights of the individual components.

Component Weightage
Programming assignments 40%
Midterm exam 25%
Final exam 35%

Programming assignments

  • Six to eight Programming assignments equally spaced throughout the semester;
  • Late submissions will be penalized. There is a 50% penalty if your submission is within 24 hours and 100% penalty after that.

Take-home assignments

Think of these as take-home exams. The problems would test deeper understanding of the subject and will help in preparing for exams. I plan to distribute three to five sets after each major topic.These are not graded and serve to enhance the understanding of course material.

Class Participation (bonus only)

Participation is incredibly important!

  • Bonus 2% for exceptional participation at the dicretion of instructor and TA. This extra credit will be highly selective (i.e., < 1% of the class might get it).
  • Expectional participation includes but not limited to answering questions in Piazza, reporting errors (if any) in assignments, asking good questions in class, and contributing testcases and scripts code for the common good.

Academic Integrity

Discussion with your peers is encouraged. However, copying code is plagiarism. If you don’t know how the code that you implemented for an assignment works, then its likely a problem. To be safe, please cite your your sources in all your turn-ins. When in doubt, please ask the instructor or the TA.