COMP/ELEC 556 -
Introduction to Computer Networks (Graduate)
Rice University
Fall
2024
Instructor
Email:
eugeneng at cs.rice.edu
Office: DCH 3005
Office hour: By appointment
Teaching
Assistants
Name
|
Email
|
Office
|
Office hour
|
Jiayi Yuan
|
jy101 at rice.edu
|
DH 2090 or Zoom
|
Wed 1pm-2pm
|
Lucas Judys
|
ljj3 at rice.edu
|
Symonds II Lab
|
Tue 8:30pm-9:30pm
|
Hariharan Sezhiyan
|
hs86 at rice.edu
|
DCH 3036
|
Thu 2pm-3pm
|
Meeting
9:25am
- 10:40am, Tue & Thu, HRZ 212
Course web page
(this page)
Course schedule, lecture notes, readings, assignments, etc
Description
Computer
networking is a rapidly advancing field. New technologies such as
software-defined networking and optical switching continue to
transform computer network infrastructures. Everyday computer systems
critically rely on the Internet for communication, data access, and
information dissemination. Building scalable networked computer
systems and effectively solving hard computational and data analytics
problems using distributed, data-intensive, and parallel-computing
techniques will require an intimate knowledge of the underlying
computer networks' performance characteristics. It is therefore
important for computer scientists and computer engineers to be
familiar with the fundamentals of computer networking. This course
will emphasize on the architecture, algorithms, and protocols of the
Internet. Topics include local area networking, routing, congestion
control, network security, and applications such as peer-to-peer and
content distribution networks. Students will work on hands-on projects
to learn how to build Internet applications as well as network
protocols. Within these projects, students are challenged to solve
advanced problems beyond the scope expected for
undergraduates.
Prerequisite
COMP 321
Textbook
Computer Networks - A Systems Approach, 5th Edition by Larry L. Peterson and Bruce S. Davie
Other
references
Computer Networking:
A Top-Down Approach, by James F. Kurose and Keith W. Ross
Computer Networks by Andrew Tanenbaum and David J. Wetherall
UNIX Network
Programming, Volume 1: The Sockets Networking API by W. Richard Stevens, Bill Fenner and Andrew M. Rudoff
Grading
Homeworks |
20% |
Projects |
40% (the projects are weighted equally)
|
Midterm exam |
20% |
Final exam |
20% |
Any requests
for
grade changes or regrading must be made within 7 days of when the work
was returned. To ask for a regrade, attach to your work a page that
specifies:
- The problem(s) you want to be regraded
- For each of these problems specify clearly why do you think the
problem was misgraded.
Homework
Assignments
Homework
assignments are to be done by each student individually.
Projects
You may form
groups of up to 4 people to do the projects. You may also work alone.
It is up to you to form and
regulate
your own group. To collaborate effectively, your group members should
be
involved
in all of the major design decisions. You should also determine a
partitioning of responsibilities so that your group can work
effectively
in parallel.
The TAs have
been instructed to grade in part on design and implementation style and
to be increasingly strict about this as the semester proceeds. In other
words, it is not enough to get a working solution; you must implement
the solution in an organized way that would simplify making further
enhancements. It will really benefit you in the long run to work on
your
software engineering skills.
Computing Facilities
You will be using
your CLEAR computer account for programming projects in this course. You can remotely login to a CLEAR server by using the secured shell (ssh) to connect to "ssh.clear.rice.edu"
Late Policy
Written homework
assignments have strict deadlines. Homework handed in late will
be marked off 20% per day. Homework more than 2 days late will not be
accepted. Extensions will not be granted.
For projects, we will use flexible slip dates. Each student
is given an automatic extension of 4 calendar days for the semester.
You
can use the extension on any project during the semester in increments
of a day. For instance, you can hand in one project 4 days late, or one
project 2 days late and two projects 1 day late. The slip time will be
deducted from each team member's remaining slip time. This should let
you schedule due dates around the due dates for other courses. After you have used
up your slip time, any project handed in late will be marked off 20%
per
day. Projects more than 2 days late will not be accepted. Additional extensions
will not be granted.
Honor Code and Issue of Cheating
First and foremost, when in doubt of whether a specific behavior is acceptable, ask the instructor for a written clarification. Broadly speaking, for homework and project assignments, it's acceptable to ask
someone about the concepts, algorithms, or approaches needed to do
the homework and project assignments. We encourage you to do so; both giving and taking
advice will help you to learn. However, what you turn in must be your
own, or for projects, your group's own work; copying other people's
code, solution sets, or from any other sources is strictly prohibited. For exams, you are strictly prohibited from receiving any form of outside aid.
Do not go on GitHub or use any other Internet search tools or Chatbots to search for solutions. Do not publicly share your own solution to GitHub or any other sites. Any such act is considered a violation of the Honor Code.
Suspected honor code violations will be reported to the Honor Council. For further information about the honor system at Rice, visit honor.rice.edu.
Accomodations for Students with Special Needs
Student with a
disability requiring accommodations in this course is encouraged to
contact me and Disability Support Services in the Allen Center, Room 111.
Title IX
Rice University cares about your wellbeing and safety. Rice encourages any student who has experienced an incident of harassment, pregnancy discrimination, gender discrimination, or relationship, sexual, or other forms interpersonal violence to seek support through The SAFE Office. Students should be aware when seeking support on campus that most employees, including myself, as the instructor/TA, are required by Title IX to disclose all incidents of non-consensual interpersonal behaviors to Title IX professionals on campus who can act to support that student and meet their needs. For more information, please visit http://safe.rice.edu or email titleixsupport@rice.edu.