Advanced Networking - Spring 2021
Instructor: Antonio Carzaniga
Assistant:
Ali Fattaholmanan
Type of course: lecture
Lecture schedule: Monday 8:30-10:30, Wednesday 12:30-14:30
See
the
course
weekly schedule for details and updates
Instructors' Office Hours: by appointment
Assistants' Office Hours: by appointment
Objectives and Contents
This course covers advanced topics in computer networks, with a blend
of theoretical and practical topics. On the theoretical side, the
syllabus will cover mathematical foundations of networking, including
discussions of queuing theory, information theory, simulation, and
optimization. Each theoretical topic will be presented together with
an application in networking (e.g., random walks, network design,
traffic engineering). On the practical side, the syllabus will cover
concepts and designs related to modern network architectures and
technologies (e.g., data-center networks, software-defined networks,
data plane programming), and protocols at various levels (e.g.,
HTTP/2, IPSec, MPLS, DCTCP). Students will gain hands-on experience
with topics discussed in class through a series of exercises using
network simulators and emulators.
Textbooks
Links
Additional information is available through the following links and
pages.
Lectures and Material
-
Introduction to Advanced Networking
-
Recap on Basic Networking Concepts:
Network architecture, application protocols, TCP, datagram network
service, router architecture, forwarding, routing, and in particular
link-state routing.
-
Network Emulation and Mininet: Network namespaces; basic network
configurations using direct manipulation of interfaces, links, and
routing tables; mininet. Automatic creation of a complex network
topology.
-
Traffic Engineering:
Flow problems; linear programming; whole-flow optimization; integer
linear programming; randomized routing schemes.
-
Random Walks and Sampling:
Graph model; Monte-Carlo simulation; analytic solutions; design and
optimization.
-
Network Modeling and Simulation:
Packet-level modeling and simulation. Discrete-event simulation.
-
Queuing Models and Theory:
Basics of queueing models; basic results in queuing theory; Little's
theorem and applications; Poisson processes; analysis of an M/M/1
queue and applications; statistical multiplexing.
-
Network and Communication Security:
Basics of communication security; modern cryptography and provable
security; basics of symmetric cryptography; basics of public-key
cryptography; concrete protocols and systems: IPSec.
-
Advanced Architectures and Protocols:
The modern Web: HTTP/2; the future Web: HTTP/3? Data-center
networking: architectures and protocols; DCTCP; Timely.
-
Programmable Networks: SDN: programming the control plane: the
OpenFlow interface. Programmable data plane: P4.
-
Advanced Topics in Networking:
Student seminars.