CS536: Data Communication And Computer Networks (Spring 2023)

Basic Course Information

Lecture Notes

Bonus Projects:

Evening Midterm Exam and Class Off

There will be an evening midterm at 20:00 PM - 21:00PM on Wed March 8th in MATH 175. To make up for the exam, we will not have class Friday, March 10th.

Contact US (cs536-ta@cs.purdue.edu)

If you have questions about course materials, we encourage you to ask questions at Campuswire (which will be seen by other students) or at PSO or before/after the class.

If you want to contact us via an email, we encourage you to use our mailing list (cs536-ta@cs.purdue.edu). If you send to this TA mailing list, all the TAs and Prof Peng will receive the email.

If you want to contact Prof Peng only, please send the email to chunyi AT purdue DOT edu.

Note that you are always welcome to contact us in person or at Campuswire.

Course Description

CS536 is a graduate-level course in Computer Networks at the Department of Computer Science at Purdue University. In this course, we will learn why and how to build the Internet, arguably the largest engineered system ever created by mankind. In particular, we will take a top-down approach to go through main network protocols (aka, TCP/IP protocols). We will also use the Internet protocol stack to understand networking principles, the rational or trade-off behind today's Internet and ongoing efforts to innovate next-generation Internet.


Grading Policy

Late Policy

There is no partial credit for late assignments; you must submit by the deadline. However, each student is granted three grace days (24-hour periods) that can be used for any homework or lab assignment. The three days can be applied to a single assignment or one day can be applied to each of three assignments.


If you feel that you have been unfairly graded on a lab assignment, homework or exam, you should petition the appropriate TA or Professor in writing within two weeks of distribution of the graded work. After two weeks, NO regrade requests will be honored. For lab assignments, you are allowed to change a few lines of code if that makes your program work, but there will be a penalty per change.


Course Topics (tentative):

Note: the selection of topics and the order may change to accomodate assignments (we have not yet finalized the set of homeworklabbonus-project assignments).


Students are expected to be present for every meeting of the classes in which they are enrolled. Only the instructor can excuse a student from a course requirement or responsibility. When conflicts or absences can be anticipated, such as for many University-sponsored activities and religious observations, the student should inform the instructor of the situation as far in advance as possible and plan to make up for missed work.

Course Policy

You need to obey course polices for all the courses in the department of Computer Science, Purdue University. Here, I higlhight some important ones.

Changes For Emergencies

In the event of a major campus emergency, course requirements, deadlines and grading percentages are subject to change that may be necessitated by a revised semester calendar or other circumstances. If an emergency occurs, you can consult the CS web page for details.

Students with Disabilities

Purdue University is required to respond to the needs of students with disabilities as outlined in both the Rehabilitation Act of 1973 and the Americans with Disabilities Act of 1990 through the provision of auxiliary aids and services that allow a student with a disability to access and participate fully in the programs, services, and activities at Purdue University. If you have a disability that requires special academic accommodation, please make an appointment to speak with the instructor within the first three (3) weeks of the semester in order to discuss any adjustments. It is the student’s responsibility to notify the Disability Resource Center of an impairment/condition that may require accommodations and/or classroom modifications. We cannot arrange special accommodations without confirmation from the Disability Resource Center.

Academic Integrity

You are expected to read and follow Purdue’s guide to academic integrity: the link. To foster an open and collegial class environment, we are vigorously opposed to academic dishonesty because it seriously detracts from the education of honest students.

It is permissible to discuss a GENERAL METHOD of solution with other students, or to make use of high-level reference materials in the library or online. If you do this, you will be expected to CLEARLY DISCLOSE with whom you discussed the method of solution, or to cite the references used. Failure to do so will be considered cheating or plagiarism. The use of “method of solution” means a GENERAL discussion of technique or algorithm, such as one would reasonably expect to occur standing in front of a whiteboard, and precludes the detailed discussion of code or written assignments.

Specifically, looking at another student's code on his/her computer monitor or copying code from an online source is NOT allowed.

Unless otherwise explicitly specified, all written assignments or code that is submitted is to be ENTIRELY the student's own work. Using any code or copying any assignment from others or from an online source is strictly prohibited without advance prior permission from the instructor. This includes but not limited to the use of code others have submitted in the past, or solutions found on the Internet.

All students work is their own. Students who do share their work with others are as responsible for academic dishonesty as the student receiving the material. Students are not to show work to other students, in the class or outside. Students are responsible for the security of their work.

Students who encourage others to cheat or plagiarize, or students who are aware of plagiarism or cheating and do not report it are also participating in academically dishonest behavior.

Be aware that we will use a software tool called MOSS to check for copying among submitted assignments. Additionally, the instructor and TA will be inspecting all submitted material to ensure honesty.

The course policy is that students who are found guilty of dishonesty will not only receive a zero for the work in question but also receive a severe grade penalty (at least double grades assigned to the work and even FAILURE in this course). Moreover, the Dean of Students will be notified for possible further action.


If you are experiencing stress or personal problems, Purdue provides counseling services through the Purdue CAPS Center. Please see CAPS for more details.