This course is fully in-person. Students are expected to attend the lectures and participate in class discussions. I will not record any in-person lecture this semester. In case you have to miss a lecture due to illness and need to know what was covered, you can find the past scribe notes online; I also have recordings of lectures during the pandemic era that I can share with you if necessary. For any new content that has never been covered, I will try my best to get a student volunteer to scribe the lecture and post the lecture notes.
In this semester, the syllabus will put a major emphasis on so-called network algorithmics (a.k.a.
router/switch architectures and algorithms). We will study
algorithms
and protocols used by modern routers/switches to perform data plane
functions including forwarding, address/prefix lookups, switching,
scheduling, counting,
flow classification, flow monitoring and measurement, IP traceback and
other security functions. In other words, we will study almost
everything about a router/switch except routing, which is a control
plane function and therefore out of the scope of this course.
The pre-requisite for this course is CS 4251 here or equivalent
(An undergarudate networking course that covers OSI/ISO 7 layers and
TCP/IP will suffice). I will cover advanced algorithmic techniques and will NOT have
time to refresh you on undergraduate
algorithms and data
structures. Whenever necessary, students are expected to
make up
the gap on their own.
The
course includes a group project (see below), but no exam.
Every student MUST fill in the course survey form and print out
and submit the "receipt page".
IEEE Transacting on Networking, 1993. (We
will talk about
Theorems 1 in class) WF2Q :
Worst-case Fair Weighted Fair Queueing.
J. Bennett, H. Zhang
IEEE Infocom, 1996. (We will talk about the scheduler and its
equivalence to WFQ under certain traffic conditions)
Students shall form groups of three to four people each to work on group projects. Every (group) project MUST be focused on a
Network Algorithmics topic. Project reports on unrelated or marginally related topics (e.g., TCP congestion control mechanisms or BGP routing protocols) will receive little or no credit unless it is approved by the instructor. Teams must be formed and one-page project proposal (with names of the group members specified) be submitted by mid September. A project can take one of the following three forms.
1. A research project that produces new network algorithmics solutions, e.g., new packet classfication techniques, new network data streaming and sketching algorithms, or new switching algorithms.
2. An in-depth survey of a core or emerging network algorithmics topic, e.g., on new network data sketching algorithms that have emerged in the past several years.
3. I may have some "pet projects" that I need people to work on.
A few regular homework assignments and possibly a programming assignment will
be distributed during the semester.
There is no exam this semester. Instead, the homework assignments will contain past exam questions, and as a result account for 40% of the course grade. Hence, you are strictly prohibitted from copying each other's solutions. Violators will be aggressively "prosecuted".
All work for this class (except the group project) is to be done
individually. You are strongly urged to familiarize yourselves with the
GT Student
Honor Code rules.
Specifically, the following is not allowed:
Copying, with or without modification, someone else's work
when this work is not meant to be publicly accessible (e.g., a
classmate's program or solution).
Submission of material that is wholly or substantially
identical to that created or published by another person or persons,
without adequate credit notations indicating authorship (plagiarism).
You are encouraged to discuss HW problems (only for understanding what is being asked) and papers with others as long
as this does not involve copying of code or solutions. Any public
material that you use (open-source software, help from a text, or
substantial help from a friend, etc...) should be acknowledged
explicitly in anything you submit to us. If you have any doubt about
whether something is legal or not please do check with the class
Instructor or the TA.
No late homework assignments or project reports will be accepted
beyond two lenient days total for the entire semester.