Computer Networking
People
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
- Bachelor of Science in Informatics, Core course, Lecture, 2nd year