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. This course is a continuation of the "Introduction to SDN" course and we will focus on gaining an advanced knowledge of SDN.
The course is organized as a block course. Please see the following "Schedule" table for a detailed structure. The course will focus on reading and understanding recent papers in the SDN field to gain an in depth understanding of the current state of the art and potential research topics. We will also do a lot of exercises to familiarize ourselves with SDN tools.
For all parts of the course, exercises will be provided, in which students must obtain at least 50% of the total points and active participation in the group discussions 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.
Schedule
Note: The exercises were changed from the originally planned ones based on the student's experience and difficulty level. See the "Exercises" section for the final exercises that one needs to submit.
Date
Morning Session I
Morning Session II
Afternoon Session I
Afternoon Session II
Time
9:15 - 10:45
11:00 - 12:30
14:00 - 15:30
15:30 -
23.03.2015
Lecture I: Enhancing Data Plane
Exercise I: Data Center topology
Group Discussion I
Exercise II: Simple load balancer
24.03.2015
Lecture II: Northbound API
Exercise III: Pox Firewall
Group Discussion II
Exercise IV: Pyretic Firewall
25.03.2015
Lecture III: Enhancing Data Plane - II
Exercise V: Kinetic Firewall
Group Discussion III
Exercise VI: Kinetic-pox loadbalancer
26.03.2015
Preparation for final presentation
Exercise VII: kinetic, pyretic debugging
Group Discussion IV
Exercise VIII: Service Chaining I
27.03.2015
Group Discussion V
Exercise IX: Service Chaining II
Final presentations I
Final presentation II
Requirements
Basic knowledge in computer networking (e.g., successful completion of the course "Computer Networks") and object oriented programming is required.
Completion of the course "Introduction to SDN", exceptions can be obtained on a case by case basis.
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. The report should include the following:
Exercises results + code
Short report on the group discussion papers
Report on the paper presented by team-X for the final presentation
We have done kinetic firewall in exercise VII and imitated the same firewall using pox in exercise VIII. Now, we will imitate the same firewall using pyretic.
The basic solution is taken from the Internet [9], test if it is able to block h1 when "infected". Note that we will only use the "infected == True" for this exercise.
start controller (in /home/mininet/pyretic folder): pyretic.py pyretic.examples.gardenwall_internetcode