OpenFlow based dynamic load balanced switching, the aim would be to imitate a Software Defined Network (SDN) with technologies like OpenFlow and SDN using tools Mininet and Open Daylight Controller and perform load balancing over it.
Our aim is to emulate a Software Defined Network (SDN) with emerging technologies like OpenFlow and SDN using tools Mininet and Open Daylight Controller. There is need for dynamic management of network resources for high performance and low latency of data transmission in a network. SDN with OpenFlow is an emerging technology in networking, and with this project it is like cherry on the cake, cake being the traditional networking concepts of our class.
Our main inspiration for this project was from a paper “OpenFlow based Load Balancing for Fat-Tree Networks with Multipath Support” by Yu Li and Deng Pan. But this paper had some issues like not handling 2-way traffic control (upcoming and incoming). So, our approach to it with this issue taken into consideration, lead us in understanding the importance of controllers.
In this project, we propose to use the fat-tree topology, which contains multiple paths among hosts so it can provide higher available bandwidth than a single-path tree with the same number of nodes. It is typically a 3-layer hierarchical tree that consists of switches on the core, aggregation and top-of-rack (ToR) layers. The hosts connect to theswitches on the ToR layer. The multipath feature of fat-tree networks enables chances to distribute data traffic on different network components. It is a practical task to achieve load balancing to help schedule traffic in fat-tree networks.
Why Other Approach isn’t that good & why our proposed work is better?
Traditional network of TCP or UDP, use static switches, i.e. load balancing across paths are based on hash calculations of packets. Issue with this approach is that each packet of such a flow follows the single pre-defined path through the network. In case of discrepancy in the path, like a switch breakdown or physical layer damage, packets tend to drop or the other switches need to be manually configured for choosing a different path. This becomes a cumbersome task, as the network grows. Also, disadvantage of hashing is that all links gets the same percentage of hash values or to say, all paths have the same capacity (ECMP -Equal Cost MultiPath).
Even if the network is hard coded to work in as multipath network, because of the equal capacity issue, efficient load balancing might not be achieved. An alternative solution for this issue is Software Defined Networking (SDN). SDN is a concept where a central controller makes the decision for packet traversal and not the switches. Controller dynamically detects the topology by listening to the switches and calculates available path with less load. Controller then directs the switches with forwarding entries needed for the paths thus efficiently balancing the load with every flow. Although SDN is a bit slower than traditional networking, there are added advantages of its own
Consideration of end-to-end path
Dynamic adaptation to topological changes
Data center networks are designed for satisfying the data transmission demand of densely interconnected hosts in the data center. The network topology and switching/routing mechanism can affect the performance and latency significantly. Nowadays, the fat-tree network is one of the most widely used topologies for data center networks. The main reason is the lack of efficient ways to obtain network traffic statistics from each network device. As a solution, the OpenFlow protocol enables monitoring traffic statistics by a centralized controller.
To achieve high performance and low latency, we propose a load balancer for OpenFlow based data center networks. We would like to implement a dynamic traversal algorithm in the load balancer. The task of the algorithm is to distribute traffic of upcoming and incoming network flows and make each alternative path receive equal amounts of traffic load. It can be further applied to large scale networks and schedule data flows dynamically. Our plan for implementation is to use the OpenFlow controller OpenDaylight and network emulator Mininet. We would also like to demonstrate that our dynamic load balancing routing algorithm is superior over the static load balancing algorithm.
Even though SDN seems to the perfect solution to today’s huge data networking problems, it has disadvantages of its own. As we are moving from traditional distributed networking to centralized approach, there is a lot of load on the controller itself. Any packet losses between the controller and switches have bigger consequences, unlike in traditional approach, where one single packet loss doesn’t affect the performance so much. Making the whole SDN architecture modular and scalable is a network design challenge when there are dense networks. Changing network architecture from the current distributed model to the SDN model, while feasible within a datacenter is not possible beyond organizational boundaries.