Controller placement problem (CPP) is a key issue for Software-Defined Networking (SDN) with distributed controller architectures. This problem aims to determine a suitable number of controllers deployed in important locations so as to optimize the overall network performance. In comparison to communication delay, existing literature on the CPP assumes that the influence of controller workload distribution on network performance is negligible. In this paper, we tackle the CPP that simultaneously considers the communication delay, the control plane utilization, and the controller workload distribution. Due to this reason, our CPP is intrinsically different from and clearly more difficult than any previously studied CPPs that are NP-hard. To tackle this challenging issue, we develop a new algorithm that seamlessly integrates the genetic algorithm (GA) and the gradient descent (GD) optimization method. Particularly, GA is used to search for suitable CPP solutions. The quality of each solution is further evaluated through GD. Simulation results on two representative network scenarios (small-scale and large-scale) show that our algorithm can effectively strike the trade-off between the control plane utilization and the network response time.
Apart from that, existing works on the CPP are based on static-binding-based controller architectures which can easily lead to controller overloading when associated switches generate high volume of requests within a short time frame @cite_44 . Although dynamic-binding-based controller architectures @cite_44 have been proposed to alleviate this issue by migrating switches from overloaded controllers to underloaded ones, the requests from one switch can still only be processed by one controller. Thus, the granularity of workload distribution is still limited to switch level. In this case, the destination controller is prone to be overloaded since its workload will increase dramatically if the switch migrated to it has accumulated a large number of pending requests.
@cite_44
2770754945 2245651317 2052220570 2034677282
Distributed controller architectures have been proposed for Software-Defined Networking (SDN) to ensure scalability and reliability. One major drawback of the existing architectures is the uneven load distribution among controllers stemming from the static binding between controllers and switches. To address this issue, several existing studies introduce dynamic binding by adopting some switch migration mechanisms that re-associate switches from overloaded controllers to underutilized controllers. However, the migration process adds a considerable amount of complexity to the system and may incur significant network latency. In this paper, we propose BLAC, a novel BindingLess Architecture for distributed Controllers (BLAC), in which load balance is achieved with the help of the proposed scheduling layer, which intercepts flow requests from switches and dispatches them to different controllers as determined by selected scheduling algorithms. The process is proceeded transparently with no extra modification required for off-the-shelf SDN switches. Besides, the scheduling layer can flexibly support various scheduling algorithms and causes neither disruption of service nor significant network delay. We build a prototype that can work with various distributed controller systems and conduct experiments to demonstrate its efficacy. The results show that our design outperforms the static-binding controller system in terms of both system throughput and response time without the complexity of the dynamic-binding controller system. The controller placement problem (CPP) is one of the key challenges of software defined networks to increase performance. Given the locations of switches, CPP consists of choosing the controller locations that minimize the latency between switches and controllers. In its current form, however, CPP assumes a fixed traffic and no existing solutions adapt the placement to the load. In this paper, we introduce the dynamic controller placement problem that consists of (i) determining the locations of controller modules to bound communication latencies, and of (ii) determining the number of controllers per module to support the load. We propose, LiDy, a solution that combines a controller placement algorithm with a dynamic flow management algorithm. We evaluate the latency and the controller utilization of LiDy on sparse and dense regions. Our results show that, in all settings, LiDy achieves a higher utilization than the most recent controller placement solution. Current capacity planning practices based on heavy over-provisioning of power infrastructure hurt (i) the operational costs of data centers as well as (ii) the computational work they can support. We explore a combination of statistical multiplexing techniques to improve the utilization of the power hierarchy within a data center. At the highest level of the power hierarchy, we employ controlled underprovisioning and over-booking of power needs of hosted workloads. At the lower levels, we introduce the novel notion of soft fuses to flexibly distribute provisioned power among hosted workloads based on their needs. Our techniques are built upon a measurement-driven profiling and prediction framework to characterize key statistical properties of the power needs of hosted workloads and their aggregates. We characterize the gains in terms of the amount of computational work (CPU cycles) per provisioned unit of power Computation per Provisioned Watt (CPW). Our technique is able to double the CPWoffered by a Power Distribution Unit (PDU) running the e-commerce benchmark TPC-W compared to conventional provisioning practices. Over-booking the PDU by 10 based on tails of power profiles yields a further improvement of 20 . Reactive techniques implemented on our Xen VMM-based servers dynamically modulate CPU DVFS states to ensure power draw below the limits imposed by soft fuses. Finally, information captured in our profiles also provide ways of controlling application performance degradation despite overbooking. The 95th percentile of TPC-W session response time only grew from 1.59 sec to 1.78 sec--a degradation of 12 . Software Defined Networking (SDN) has become a popular paradigm for centralized control in many modern networking scenarios such as data centers and cloud. For large data centers hosting many hundreds of thousands of servers, there are few thousands of switches that need to be managed in a centralized fashion, which cannot be done using a single controller node. Previous works have proposed distributed controller architectures to address scalability issues. A key limitation of these works, however, is that the mapping between a switch and a controller is statically configured, which may result in uneven load distribution among the controllers as traffic conditions change dynamically. To address this problem, we propose ElastiCon, an elastic distributed controller architecture in which the controller pool is dynamically grown or shrunk according to traffic conditions. To address the load imbalance caused due to spatial and temporal variations in the traffic conditions, ElastiCon automatically balances the load across controllers thus ensuring good performance at all times irrespective of the traffic dynamics. We propose a novel switch migration protocol for enabling such load shifting, which conforms with the Openflow standard. We further design the algorithms for controller load balancing and elasticity. We also build a prototype of ElastiCon and evaluate it extensively to demonstrate the efficacy of our design.