TCP/IP networking
Weekly outline
-
In this course you will learn and understand how computer networks are built and run. You will be able to:
- test and clarify your understanding of the networking concepts by connecting computers to form LANs, autonomous routing domains and interconnections;
- test the performance of TCP versus UDP and of traffic control settings;
- develop and test various communicating programs using sockets;
- be familiar with IPv6 as well as IPv4 and the interworking between them;
- understand congestion control, TCP and QUIC;
- run Mininet in your computer and deploy real networks in an emulated environment.
This is a master level course for master and PhD students.
Lectures
Lectures are on Thursdays 12:15-14:00 in room CM2 for those who are allowed on campus on the day of the lecture and simultaneously by zoom in room 974 5490 0991. Recordings are posted on youtube as soon as possible after the lecture.We use the speakup software for multiple choice questionnaires during the lecture. You will need speakup even if you attend the lecture via zoom. Please download the free speakup app from speakup.info. The speakup room is 60845.Lecture Notes
- "Computer Networking : Principles, Protocols and Practice" by O. Bonaventure, 1st or 2nd edition: pdf, epub, mobi
- "Rate adaptation, Congestion Control and Fairness: A Tutorial" by JY Le Boudec: pdf
Labs
There is a lab every week, on Fridays 11:15-13:00 in room INF1 and 13:15-15:00 in room INM202 for those who are allowed on campus on the day of the lab. The lab session is simultaneously streamed on zoom in room 963 9102 2783, for those of you who are not allowed on campus or prefer to work from home; parallel breakout rooms will be setup as required.
The labs are designed to be done on your own machine and do not require physical presence at EPFL. You can do them at any time. You can use the lab sessions, live and in zoom, for support; you can also use the questions and answer forum on moodle to ask questions about the lab (and about the lecture).
Every lab lasts for 2 weeks, but for the last one. The lab assignment has to be uploaded via moodle. The lab is to be uploaded at the latest on the Wednesday that follows the last lab session for the current lab.
You can do the lab in groups of two, only one report per group is required. See "Lab group self-selection" below to join a group.
A release activity has been created for each lab submission. Both group members should complete this activity so that they can access the corresponding lab submission. Only one report should be submitted per group.
In most labs, there is a more advanced section called
research exercise
, which is for bonus. Do it only if (1) you feel comfortable with all the rest of the lab and the lecture, (2) you have enough time and (3) you like the topic.Online Quizzes
There is one online quiz every week on moodle. The goal is to train your understanding of the lecture. It is also a training for the labs and for the final exam. The quizzes are mandatory, but not graded. You must be up to date with your quizzes in order to submit the lab assignment.
Exam
There is one written exam in the exam session. It is closed book. We will provide you with a printed copy of theWe recommend that you train with the exams of the last two years. The exam will be a written take-home exam. You will need to download your individual exam assignment, write your solution by hand, scan your handwritten solution (e.g. by taking a picture with a smartphone) and upload your solution to moodle. All of this will be during the time period that we will be specified. More details soon.exam booklet
, which contains formulas and material that is too tedious to be learnt by heart.Grading
The course grade is the average between the lab grades and the final exam. More exactly:
- Theory grade T = final exam
-
Lab grade = average of 7 labs ( last lab counts as one half)
Research exercise bonus = average of all lab bonuses (max bonus is 0.5 in scale 1-6)
L = min (6, Lab grade + Research exercise bonus)
- Final grade = ½ ( T+L) rounded to next quarter integer.
All grades except final grade are non-rounded.
Lab group self-selection
In order to submit lab assignments, you need to be in one and only one lab group. A group has at most 2 members, they form a team and they submit only one report for both of them. If the student would like to work alone, she still has to join a group, but she will be the only member of this group. To join a group:
- Select one of the available groups on “Lab group self-selection”
- Be sure that you and your teammate (if any) are in the same group.
In rare cases there can be collisions (when several pairs of students attempt to join the same group). If that happens, wait a bit and try again.
-
Virtual machine image:
Some labs require the use of a virtual machine. In order to make things easier for students, we prepared a preconfigured virtual machine image. It can be downloaded from here:
Virtual machine (link 1)
Virtual machine (link 2)
-
Thursday Sept 17, 12:15-14:00, CM 2 and zoom 974 5490 0991
Intro, Archi
Friday Sept 18, 11:15-13:00 INF 1,13:15-15:00 INM 202 and zoom 963 9102 2783
Lab 0
-
Receive a grade
-
Thursday Sept 24, 12:15-14:00, CM 2 and zoom 974 5490 0991
IP1
Friday Sept 25, 11:15-13:00 INF 1,13:15-15:00 INM 202 and zoom 963 9102 2783
Lab 0, continued
-
Quiz 2
-
Release lab 0 submission Assignment
-
Thursday Oct 1, 12:15-14:00, CM 2 and zoom 974 5490 0991
IP1 (end)
MAC Layer
Friday Oct 2, 11:15-13:00 INF 1,13:15-15:00 INM 202 and zoom 963 9102 2783
Lab 1
-
Submit lab 0 Assignment
-
Quiz 3
-
Thursday Oct 8, 12:15-14:00, CM 1
CM 2and zoom 974 5490 0991MAC Layer
Friday Oct 9, 11:15-13:00 INF 1,13:15-15:00 INM 202 and zoom 963 9102 2783
Lab 1, continued
-
Quiz 4
-
Release lab 1 submission Assignment
-
Submit Lab1 Assignment
-
Thursday Oct 15, 12:15-14:00, CM 1
CM 2and zoom 974 5490 0991MAC layer (end)
Transport Layer
Friday Oct 16, 11:15-13:00 INF 1,13:15-15:00 INM 202 and zoom 963 9102 2783
Lab 2
-
Quiz 5
-
Thursday Oct 22, 12:15-14:00, CM1
CM 2and zoom 974 5490 0991Transport Layer (end)
IP multicastFriday Oct 23, 11:15-13:00 INF 1,13:15-15:00 INM 202 and zoom 963 9102 2783
Lab 2, continued-
Quiz 6
-
Release lab 2 submission Assignment
-
Submit Lab2 Assignment
-
Thursday Oct 29, 12:15-14:00,
CM1 CM 2 andzoom 974 5490 0991OSPF
Friday Oct 30, 11:15-13:00
INF 1,13:15-15:00INM 202 andzoom 963 9102 2783Lab 3
-
Quiz 7
-
Thursday Nov 5, 12:15-14:00,
CM 2 andzoom 974 5490 0991OSPF (end)
Congestion ControlFriday Nov 6, 11:15-13:00
INF 1,13:15-15:00INM 202 andzoom 963 9102 2783Lab 3, continued
-
Quiz 8
-
Thu Nov 12, 12:15-14:00,
CM 2 andzoom 974 5490 0991Congestion Control
Fri Nov 13, 11:15-13:00
INF 1,13:15-15:00INM 202 andzoom 963 9102 2783Lab 4
-
Quiz 9
-
Thu Nov 19, 12:15-14:00,
CM 2 andzoom 974 5490 0991Congestion control (end)
BGP
Fri Nov 20, 11:15-13:00
INF 1,13:15-15:00INM 202 andzoom 963 9102 2783Lab 4, continued
-
Quiz 10
-
Release lab 4 submission Assignment
-
Submit Lab4 Assignment
-
Thursday Nov 26, 12:15-14:00,
CM 2 andzoom 974 5490 0991BGP (end)
Friday Nov 27, 11:15-13:00
INF 1,13:15-15:00INM 202 andzoom 963 9102 2783Lab 5
-
Quiz 11
-
Thursday Dec 3, 12:15-14:00,
CM 2 andzoom 974 5490 0991Appli
Friday Dec 4, 11:15-13:00
INF 1,13:15-15:00INM 202 andzoom 963 9102 2783Lab 5, continued
-
Quiz 12
-
Release lab 5 submission Assignment
-
Submit Lab 5 Assignment
-
Thursday Dec 10, 12:15-14:00,
CM 2 andzoom 974 5490 0991IP2
Friday Dec 11, 11:15-13:00
INF 1,13:15-15:00INM 202 andzoom 963 9102 2783Lab 6
-
Quiz 13
-
Thursday Dec 17, 12:15-14:00,
CM 2 andzoom 974 5490 0991Distance Vector
Friday Dec 18, 11:15-13:00
INF 1,13:15-15:00INM 202 andzoom 963 9102 2783Lab 6
Get prepared for the exam
- You should have taken the mock-exam (step 1, step 2) to test your technical procedure.
- Do again the quizzes of the course, in the lecture notes and in moodle.
- Take the exams of the past two years. The exams of the past two years lasted for 3 hours. This year, the volume will be similar but there will be an extra hour (for a toal of 4 hours) to allow for the technical time required for downloading, preparing your files and uploading.
- The exam is open book, but it is a bad idea to count too much on looking up the documentation during the exam. We recommend that you train for the exam using only the exam booklet.
-
Quiz 14
-
Release lab 6 submission Assignment
-
Submit Lab 6 Assignment
-
Wednesday 2021 January 06, 14:00 - 16:00
Review session, Zoom ID 844 7911 0416
-
Thursday 2021 January 14, 8:15 to 12:15
Final Exam
- At home.
- You must participate in the zoom session given below until you submit your solution on moodle. Please join the zoom session given below a bit before the exam starts. The download link opens exactly when the exam starts.
- All documents that exist before the exam are allowed. You may use printed and online resources that were printed or put online before the exam started.
- It is forbidden to communicate with anyone during the exam. You are not allowed to use email, social media etc except for communicating with us. Any communication with other people during the exam is considered cheating.
- If we find hints of cheating, we are allowed to require an additional individual oral exam and to modify the final grade based on the results of the oral exam. Furthermore, if we find evidence of cheating, we will report the case to EPFL central who might apply the sanctions described here. Malicious manipulation of the exam submission process is also considered cheating.
- Your solution must be hand-written by you. You can write the answers
- on papers and scan/take photos (PDF or images)
- or on a tablet and generate electronic files of your handwritten answers (PDF or images)
- Please write the Problem/Question numbers in your answer.
- You can generate a single file or multiple ones, whatever is more convenient for you (20 files max).
- Submit the electronic file(s) of your answers through the submission activity.
- on papers and scan/take photos (PDF or images)
- Before leaving the zoom session, it is your responsibility to (1) check that the correct number of files is visible and (2) that you see your submission as "submitted for grading", as illustrated below.
- For any problem during the exam, use the zoom chat or a breakout room to discuss with us. If this does not work, you can call us by phone (see Hotline below). If you call from abroad we will call you back.