Search for contacts, projects,
courses and publications

Computer Networking

People

Carzaniga A.

Course director

Description

The high level goal of this course is to provide students with a basic, qualitative as well as quantitative understanding of computer networks, and in particular of the Internet. This means two things: first, we want to understand how common distributed applications such as the worldwide web use a computer network such as the Internet. Second, we want to understand how the network provides its services to applications. The knowledge acquired through this course should serve as a basis for the design of networked applications, and for advanced studies in computer networking.

Contents
The focus of the course is on the architecture of the Internet, its fundamental protocols, and the design principles behind them. The course will follow a top down approach. Therefore, the first topics covered will be common networkbased applications, with a particular focus on the HTTP protocol. We will then look at the two most important transport protocols of the Internet, namely TCP and UDP. In studying TCP we will discuss its provisions for reliability and congestion control. We will then look more closely at the network layer in IP networks. In this section we will study IPv4 as well as IPv6 and its most common extensions. This section of the course will cover the architecture of today's Internet, the basics of interdomain and intradomain routing, and other concepts related to the network layer, such as addressing and fragmentation. The course will also cover some very elementary notions of network and communication security.

Teaching mode
This is a lecture course. Students are expected to read the assigned readings before class. During class sessions we will discuss the material, preferably using questions as drivers in a conversational style. Homework assignments complement the readings and discussions, allowing students to practice and deepen their skills by solving concrete and focused problems.

References
Computer Networking: A Top-Down Approach by James F. Kurose and Keith W. Ross Addison-Wesley

Prerequisites
Computer Architecture and Programming Fundamentals I

Education