Computer networks are considered as one of the most important and influential infrastructures that exist today (imagine what the world would be like if there were no Internet!). And yet, after 50 years of Internet success, communication networks continue to evolve in size, complexity and functionality with increasingly stringent demand on robustness, scalability, efficiency, flexibility and security. CS4450 is an undergraduate level course covering the fundamental concepts of computer networking:
- Architectural principles of computer networking;
- Design principles for achieving reliability, scalability, efficiency and security;
- Core mechanisms and protocols for addressing, routing, forwarding and congestion control.
My goals for you in this course are to learn not only what computer networks are and how they work today, but also why they are designed the way they are and how they are likely to evolve in the future.
Tuesday and Thursday, 2:55PM-4:10PM, Phillips Hall 203.
CS4410, or permission of instructor. This is a 4000-level level course; so, we expect you to know material from the programming, data structures and algorithms courses. In terms of mathematics, your algebra should be very solid, you need to know basic probability stuff, and you should be comfortable with thinking abstractly. We assume that you either know the material covered in those courses, or are willing to learn the material as necessary.
Computer Networks: A Systems Approach (5th edition), by Larry Peterson and Bruce Davie. Using the 4th edition is completely alright, though the chapter/section and the corresponding content may be different. While the class has a textbook, we will not follow its order of presentation; instead, we will use the textbook as a reference when covering each individual topic. An e-version of the book is available at Cornell Library website.
There will be "advanced reading" material for several topics in the class. These readings are not compulsory. If your curiosity gets the better of you, go ahead and dive deeper into the topic using these advanced readings. Any material in advanced readings that is not covered in the class will not be in quizzes or exams.
We understand that sometimes students lose track of a course for various reasons (health, travel, personal problems, etc.) and spend the remainder of the semester catching up. We are here to help you in such scenarios. We will organize LOST sessions, where one of the TAs will spend 1-1 time with you and help you understand material that you may have missed for any of the above reasons -- no questions asked. Please use the "Secure, Private Channel to Staff" email below to request personalized LOST session at any time. Since the goal of LOST sessions is to help students get back on track in time and not to provide every student a personal TA, there will be no LOST sessions one week prior to the prelim and two weeks prior to the final.
Your course grade will be based on in-class surprise quizzes (20%), one prelim (30%), one final exam (45%) and filling out course evaluations (5%). For students who feel they do not perform well in exam settings, there will be optional projects for make up. These projects will not impact the grades for students who opt to not do take up on this option. There will be six problem sets and four projects during the course, but these will not be graded. We will provide solutions and help with all problem sets and projects, though. See the administration page for more details.
||Office Hours (Location)
||Prof. Rachit Agarwal
||Wednesday 11AM (Gates 411C)
|TA (Lead - LOST sessions, Problem Sets)
||Daniel Amir (da462)
||Tuesday noon (Rhodes 590)
||Saksham Agarwal (sa2238)
||Wednesday 2:00PM (Rhodes 572)
||Lloyd Brown (lab352)
||Friday noon (Rhodes 408)
||Max Chu (mmc278)
||Monday 2:30PM (Rhodes 400)
||Ryan Yoon (rdy23)
||Monday 4PM (Rhodes 406)
Meeting Prof. Agarwal:
If you cannot make the office hours, Prof. Agarwal will find time to meet you off-hours. You should never hesitate to ask for an appointment from him, either for discussing the course material or any other related issues. However, you must not use email for asking technical questions --- asking technical questions over emails is the easiest way for what is called a denial-of-service attack (the attacker, you :-), could send a one-liner email while the server, Prof. Agarwal, will spend hours drafting page-long answer). To avoid such attacks, Prof. Agarwal encourages you to meet him in person. The best way to reach Prof. Agarwal is e-mail; see contact details.
Secure, Private Channel to Staff:
Please use the following email to request LOST sessions: firstname.lastname@example.org.