Introduction to Software-defined Networking (Winter 2014/2015)
Details
Workload/ECTS Credits: | 150h, 5 ECTS |
Module: | AI: M.Inf.1130: Software-defined Networks (SDN); ITIS: 3.31 |
Lecturer: | Dr. David Koll |
Teaching assistant: | --- |
Time: | March 16-20; 09.00-17.00 |
Place: | IfI 2.101 |
UniVZ | [1] |
Course Overview
Software-defined networking (SDN) has recently attracted both researchers in academia and big players in communication technologies, and is currently probably the 'hottest' topic in computer networking. In this course, we will discuss the basics of SDN.
The course is organized as a block course as follows (for the detailed structure, please see this table): Initially, two lectures introducing the main motivation, concepts and state-of-the-art of SDN will be given. Afterwards, we will have a short peak into the most recent research from both industry and academia, which is going to define the future of SDN. In this session, students will select one paper of interest that they will present towards the end of the course. The course then continues with an introduction to Mininet [2], and students are expected to perform some basic experiments on creating and using a virtual network based on Mininet. After the experimentations, students will present the paper they selected earlier.
For all parts of the course, exercises will be provided, in which students must obtain at least 50% of the total points to be admitted to the examination of this course. The exam is taken by submitting a report of 10-15 pages summarizing the lessons learned during the lectures and exercises as well as the research papers investigated (a LaTeX template will be provided). Depending on the number of attendees, several parts will be conducted in teams of students.
The course Advanced Software-defined Networking (M. Inf.1230) will follow a similar structure to provide a more profound knowledge of SDN.
Schedule
Please bring along your laptop to all sessions!
Date | Morning Session | Type | Afternoon Session | Type |
16.03.2015 | Software-defined Networking I | Lecture (Slides) | Introduction to Python I (and exercises) | Lecture (Slides) / Practical |
17.03.2015 | Software-defined Networking II | Lecture (Slides) | Introduction to Python II (and exercises) | Lecture (Slides) / Practical |
18.03.2015 | Current Research in SDN / Paper Reading | Lecture | Hands-On SDN I / Paper Reading | Practical |
19.03.2015 | Hands-On SDN II | Practical | Hands-On SDN III | Practical |
20.03.2015 | Practical Tutoring / Presentation Preparation | Practical | Presentations | Seminar |
Exercises
Number | Topic |
Exercise 1 | Introduction (pdf) |
Exercise 2 | Python Basics (pdf) |
Exercise 3 | SDN Control Plane (pdf) |
Exercise 4 | An SDN Simulator in Python (pdf) |
Exercise 5 | Mininet Setup (pdf) |
Exercise 6 | Mininet Topologies |
Exercise 7 | Mininet and SDN Controllers |
Exercise 8 | Mininet and FlowVisor |
Due Dates for Documents (E-Mail to David)
Date | Exercises Due | Identifier |
10.04.2015 | Exercise 1 (Introduction), Exercise 2 (Python Basics) | SDN-EX-104 |
17.04.2015 | Exercise 3 (SDN II), Exercise 6 (Mininet Topologies) | SDN-EX-174 |
30.04.2015 | Final Report | SDN-FR |
NOTE: Please submit multiple files compressed in one ZIP archive by E-Mail to David. For text documents, submit in PDF format. The subject line of your email should be the corresponding identifier from the table above followed by your name.
Example: Alice wants to submit Exercises 3 and 6. She compresses all the files she created for the exercise into one ZIP archive and sends the archive to David before April 17. She uses the subject line SDN-EX-174 Alice
NOTE: Your final report should include:
- Exercise 4 (Python SDN Simulator), Exercise 7 (Mininet Controllers), Exercise 8 (FlowVisor)
- One review form for each paper you were assigned during the course.
- The slides you used for presenting your papers in class.
Paper Reading Groups
- SDN Infrastructures
- Group 1: Building a Software-defined Internet Exchange (assigned to Thomas and Siddharta)
- Group 2: USING SDN in Wide Area Networks - Microsoft vs Google: (assigned to Pranay and Gurjinder)
- Separation of Control and Data Plane
- Group 3: Performance of the Control Plane (assigned to Omar and Khawar)
- Group 4: Hybrid Software-defined Networks I (assigned to Mehedi, Asif and
- Sivamaram et al, "No Silver Bullet: Extending SDN to the Data Plane" (ACM HotNets 2013) (pdf)
- Schiff et al, "Reclaiming the Brain: Useful OpenFlow Functions in the Data Plane" (ACM HotNets 2013) (pdf)
- Vissicchio et al, "Sweet Little Lies: Fake Topologies for Flexible Routing" (ACM HotNets 2013) (pdf)
- Group 11: Hybrid Software-defined Networks II (assigned to Mehedi, Asif and
- Group 5: Update Consistency (assigned to Sameer)
- Controllers
- Group 6: Distributed Controllers (assigned to Amit, Athiq and Supriya)
- OpenFlow
- Group 7: Measurement of OpenFlow (assigned to Chris and Martin)
- Group 8: Challenging OpenFlow (assigned to Rajib)and Hadi
- Hu et al, "Explicit Path Control in Commodity Data Centers: Design and Applications", (USENIX NSDI 2015) (pdf)
- Network Virtualization
- Group 9: Virtualization in Datacenters (assigned to Georg and Alex)
- Group 10: Advances in Network-Slicing (assigned to Hari and Sheshagiri)
Requirements
- Basic knowledge in computer networking (e.g., successfull completion of the course "Computer Networks") and object oriented programming is required.
- Students will benefit from knowledge in Python (however, the skills required for the course will be taught).
- Each participant is required to actively attend the course and earn 50% of the points of the exercise.
- Written report at the end of the course.
Reading List
If you are interested in reading into some material before the course starts, NEC maintains a somewhat up-to-date reading list.