Course: Modern Trends of Computer Networks

« Back
Course title Modern Trends of Computer Networks
Course code KST/NNTPS
Organizational form of instruction Lecture + Tutorial
Level of course Master
Year of study 2
Semester Winter
Number of ECTS credits 5
Language of instruction English
Status of course Compulsory-optional
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Holík Filip, Ing. Ph.D.
Course content
1. Introduction of software-defined networking (SDN) 2. Emulation of SDN, Mininet 3. Creating custom network topologies, remote controller, graphical tool MiniEdit 4. Tools for manual management of flow rules (dpctl, ofctl) 5. OpenFlow protocol 6. Introduction to Python 7. Architectures of SDN controllers 8. RYU controller, application of a simple L2 switch 9. Customization of existing modules for the RYU controller 10. Floodlight controller, GUI, Eclipse environment 11. REST interface of the Floodlight controller 12. Creating new modules for the Floodlight controller 13. Advanced SDN controllers OpenDaylight and ONOS

Learning activities and teaching methods
Monologic (reading, lecture, briefing), Dialogic (discussion, interview, brainstorming), Skills training
  • Term paper - 68 hours per semester
  • Preparation for an exam - 20 hours per semester
  • Participation in classes - 13 hours per semester
  • Practical training - 39 hours per semester
  • Home preparation for classes - 10 hours per semester
Learning outcomes
The main goal of the course is to introduce advanced technologies in the area of modern computer networks. The course is focused on software-defined networking. Motivation for using this concept are mostly data centres, industrial networks, and intelligent IoT (Internet of Things) networks. In the practical tasks, students will create their own applications for RYU and Floodlight controllers, using OpenFlow protocol.
Students will acquire knowledge of modern trends in computer networks - mostly of software-defined networking technology. Students will be able to create emulated network topologies, manage SDN devices supporting OpenFlow protocol, and implement software applications for SDN controllers RYU and Floodlight.
Prerequisites
Prerequisites of the course are basic knowledge of Linux operating system, basics of programming and skills of computer networks corresponding to the CCNA level - switching, routing (static and dynamic), basic networking protocols (ICMP, ARP), configuration of IPv4 and IPv6, principles of firewalls and ACLs. These skills have to be proved by certificates of Cisco Networking Academy courses completion (CCNA R&S 1 - 4), or a corresponding Cisco certification. Students without these prerequisites have to successfully complete assigned practical laboratory task.

Assessment methods and criteria
Oral examination, Home assignment evaluation

Prerequisites of the course are basic knowledge of Linux operating system, basics of programming and skills of computer networks corresponding to the CCNA level - switching, routing (static and dynamic), basic networking protocols (ICMP, ARP), configuration of IPv4 and IPv6, principles of firewalls and ACLs. These skills have to be proved by certificates of Cisco Networking Academy courses completion (CCNA R&S 1 - 4), or a corresponding Cisco certification. Students without these prerequisites have to successfully complete assigned practical laboratory task.
Recommended literature
  • AZODOLMOLKY, Siamak a Kenneth GRAY. Software defined networking with openflow: software defined networks. 2013. ISBN 978-184-9698-726.
  • GORANSSON, Paul a Chuck BLACK. Software Defined Networks : A Comprehensive Approach. 2014. ISBN 9780124166844.
  • Learnpython.org. Learn Python: Free Interactive Python Tutorial. 2017.
  • NADEAU, Thomas D. a Kenneth GRAY. SDN: software defined networks. Beijing, 2013. ISBN 978-1449342302.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester