COM-407 / 8 crédits

Enseignant: Nikolopoulos Pavlos

Langue: Anglais


Summary

This advanced course in computer networks offers an in-depth exploration of how the Internet is designed and operates. Students dive into the architecture of the Internet and gain hands-on understanding of the key protocols that power it.

Content

In the lectures, students will learn and understand the main ideas underlying Internet architecture, as well as the various ways computer networks are built and operated today.

In the labs, they will gain hands-on experience using Mininet and Zebra (to exercise practical configurations and study IP, OSPF, TCP congestion control, and BGP behavior), along with other tools like Wireshark (to monitor and analyze network traffic). Additionally, students will apply socket programming for both unicast and multicast communications using Python.

In particular, the topics covered are:

Layer 2: CDMA in the context of Wi-Fi, Switched (full-duplex) Ethernet and STP, VLANs.

Layer 2.5: ARP, NDP.

Layer 3: Differences between: IPv4 and IPv6 configuration mechanisms (focusing on DHCP and SLAAC), Unicast and multicast (with emphasis on BIER), Routing principles (such as Longest-prefix match, Source and segment routing, SDN flow-based routing, Policy routing (with a focus on OSPF and BGP));
Tunneling: VPN, MPLS, VLANs over IP (similar to Cisco TRILL);
NAT: Traditional operation, full-cone and symmetric NATs.

Layer 4: The self-clocking nature of TCP, Theory of congestion control, Fairness, Congestion control algorithms (Reno, Cubic, DCTCP, BBR), QUIC.

Application Layer: DNS, Application-layer gateways and proxies (e.g., HTTP, ARP).

Keywords

TCP-IP

Computer Networks

Learning Prerequisites

Required courses

  • An undergraduate course on Computer Networks
  • A first programming course (preferably Python)

Learning Outcomes

By the end of the course, the student must be able to:

  • Run and configure networks
  • Understand the main ideas that underlie the Internet
  • Write simple communicating programs
  • Use communication primitives for internet and industrial applications

Transversal skills

  • Access and evaluate appropriate sources of information.
  • Continue to work through difficulties or initial failure to find optimal solutions.

Teaching methods

Lectures.

Online quizzes.

Labs on EPFL's VDI infrastructure.

Expected student activities

Participate in lectures

Participat in online quizzes

Make lab assignments (in the rule, every other week)

Assessment methods

Theory grade = final exam

Practice grade = average of labs

Final grade = mean of theory grade (50%) and practice grade (50%).

The research exercise may add a bonus of at most 0.5 points in 1-6 scale to the practice grade.

Supervision

Office hours Yes
Assistants Yes
Forum Yes

Resources

Bibliography

"Computer Networking: A Top-Down Approach (6th or later Edition)". James F. Kurose and Keith W. Ross. 2012. Pearson.

 

"Computer Networking : Principles, Protocols and Practice". O. Bonaventure, open source textbook, http://inl.info.ucl.ac.be/CNP3

 

Ressources en bibliothèque

Références suggérées par la bibliothèque

Moodle Link

Dans les plans d'études

  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: obligatoire
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: obligatoire
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: optionnel
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: optionnel
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: obligatoire
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: obligatoire
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: obligatoire
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: obligatoire
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: optionnel
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: optionnel
  • Semestre: Automne
  • Forme de l'examen: Ecrit (session d'hiver)
  • Matière examinée: Advanced networks
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines
  • Labo: 2 Heure(s) hebdo x 14 semaines
  • Type: optionnel

Semaine de référence

Jeudi, 12h - 14h: Cours BCH2201

Vendredi, 11h - 13h: Exercice, TP GCC330
GCA1416

Vendredi, 13h - 15h: Exercice, TP GCC330
GCA1416

Cours connexes

Résultats de graphsearch.epfl.ch.