Skip to main content

more options

Course Catalog

CS 5190 - Computer Networking
Spring. 4 credits.
Prerequisite: CS4410 (Operating Systems) Or permission of instructor
Instructor: Deborah Estrin, deborah.estrin@gmail.com

Focuses on architectural principles of computer networking (robustness, scalability, end-to-end), design of network mechanisms and protocols used in todays Internet, and advanced topics such as new media, software defined networking, security, and mobility.

This course is appropriate for advanced students who have none or limited networking knowledge. The homework and final project will require implementation, so students should have programming skills at the level of CS2110.

Course Description

Objectives for the course are:

  • To develop a deep understanding for the basic architectural principles of computer networking (e.g., robustness, scalability, end-to-end function placement)
  • To understand the design and behavior of key mechanisms and protocols underlying today's Internet; including data reliability, congestion control, addressing and naming, routing algorithms, local area and wireless networks.
  • To explore trends likely to influence the future of the Internet, such as new media, software defined networking, security and mobility.

We will cover the following topics in detail: Internet architecture and applications, transport layer mechanisms, network layer and routing system design, local area networks, and advanced topics such as multimedia, software defined networking, and mobility.

Student responsibilities include: attending and participating in class sessions, completing textbook and supplementary reading, completing homework assignments, taking in-class quizzes, and completing a final project and writeup. The ~weekly homework assignments will be discussed in the class after the due date. Some of these will be hands-on assignments. These will consist of network measurements (e.g., using Ethereal, ping, traceroute) and network programming. Some assignments will be done individually, and others in small 2- or 3-person groups. There will be several in-class quizzes, some closed and some open-notes. Grading will be based 50% on homework and quizzes, and 50% on the project (definition, implementation, and presentation).

Class sessions will be a combination of lecture and discussion and will be related but complementary to selected chapters from the textbook, Computer Networking, 6e, James F. Kurose / Keith W. Ross, 2012, http://wps.pearsoned.com/ecs_kurose_compnetw_6/. We will also draw on selected papers from the literature.

Industry partners will be invited to: (1) present guest lectures, and (2) provide inspiration, fodder, and feedback for student projects, including participation in an end of term design charrette.