Expressions like cloud computing and Software Defined Networking are really trending these days, with the OpenFlow standard being the most widely known implementation of SDN.
The motivation for SDN is the fact that manufacturers do not publish the algorithms they use in their network devices, so the owner cannot modify them. OpenFlow solves this problem elegantly by making switches programmable, thus giving the programmer total control over packet processing. By being an open system, OpenFlow enables us to try new packet forwarding algorithms as well.
One of the most important aspects of cloud based services is that service providers must be able to provide guaranteed service quality to customers, while using SDN in their datacenters. This thesis demonstrates the Quality of Services capabilities of OpenFlow, and proposes an OpenFlow based system in datacenters, that can provide QoS guarantees using traffic engineering. Besides planning I have implemented most of the components of the system, which enables us to test them in emulators and on hardware components.
The thesis also contains test results of the implementation, and the description of an advanced network emulator for OpenFlow to enhance the functionality of the existing Mininet emulator.