Resource Allocation in Scalable Software-defined Networks


Student thesis: Doctoral Thesis

View graph of relations


Related Research Unit(s)


Awarding Institution
Award date5 Sep 2018


Software-defined networks (SDN) decouples the control plane from the data plane inside networking devices such as switches. The control plane is centralized and implemented in an external controller, which keeps a global view of the whole network and make routing decisions of the networking devices. SDN has been adopted in cloud data center networks and private WAN to achieve fine-grained traffic engineering. In a large-scale network, it is crucial for the SDN to be scalable to managing hundreds of network devices. This dissertation explores the scalability of SDN in three aspects: (1) scalable control plane, (2) scalable data plane and (3) scalable SDN management.

Scalable control plane discusses achieving a scalable logical controller by placing multiple physically distributed controllers. The controller placement problem tries to place k controllers in a given network to optimize performance metrics such as propagation latency, load distribution, network reliability and failure resilience. However, the quality of service (QoS) is always a primary concern of the network operators in the placement of SDN controllers, which is ignored in state-of-the-art studies. Thus, we propose the QoS-Guaranteed Controller Placement problem: Given a network topology and a response time bound, how many controllers are needed, where to place them, and which switches are assigned to each of the controller. We propose three heuristic algorithms: incremental greedy algorithm, primal-dual-based algorithm and network-partition-based algorithm. Simulation results show that the proposed incremental greedy method slightly outperforms the other two methods.

Scalable data plane concerns fitting large amount of traffic flows in the limited flow tables of OpenFlow switches. SDN-based load balancing schemes propose weighted flow distribution across the available multiple paths. The controller implements the flow splitting ratio by creating multiple rules in the flow table of OpenFlow switches. However, since the number of rules in TCAM-based flow table is limited, it is not scalable to implement the ideal traffic splitting ratio for every flow group. State-of-the-art solutions, WCMP and Niagara, ignores the flow group transmission time, which measures the quality of cloud services. We propose and implement NAMP, a multipathing scheme considering the network heterogeneity, to optimize the flow group transmission time efficiently. Experimental results show that NAMP improves the transmission time by at most 45.4% than Niagara, at most 50% than WCMP, and at most 60% than ECMP.

Scalable SDN management is achieved by efficiently and quickly monitoring all the link state information at the controller as the number of switches increases. Hybrid SDN is a network where legacy routers and SDN-enabled routers coexist during the incremental deployment of SDN. Existing methods on network monitoring assume the controller obtains the load information of all links by peering with all legacy routers using distributed protocols such as OSPF-TE. However, the latency of collecting the load information of all links can be prohibitively long for the controller to perform realtime traffic engineering, which is not scalable in a wide area network. Inspired by the sparsity of link load information in ISP networks, we propose compressive traffic monitoring, a real-time method for collecting a near-accurate load information of all links. The controller only needs to collect the load information of a small subset of important links and then estimates the rest of link load. NS3 simulation results show that compressive traffic monitoring can achieve a nearly good traffic engineering performance as pure SDN network does with fewer SDN routers.

    Research areas

  • Computer networks, Resource allocation, Software-defined networks