A greedy approach for minimizing SDN control overhead

Similar documents
Malware models for network and service management

Computing and maximizing the exact reliability of wireless backhaul networks

Taking Benefit from the User Density in Large Cities for Delivering SMS

Service Reconfiguration in the DANAH Assistive System

Simulations of VANET Scenarios with OPNET and SUMO

How to simulate a volume-controlled flooding with mathematical morphology operators?

DETERMINATION OF THE TRANSDUCER VELOCITIES IN A SONAR ARRAY USING DIGITAL ACOUSTICAL HOLOGRAPHY

XML Document Classification using SVM

BoxPlot++ Zeina Azmeh, Fady Hamoui, Marianne Huchard. To cite this version: HAL Id: lirmm

Very Tight Coupling between LTE and WiFi: a Practical Analysis

Blind Browsing on Hand-Held Devices: Touching the Web... to Understand it Better

Fault-Tolerant Storage Servers for the Databases of Redundant Web Servers in a Computing Grid

NP versus PSPACE. Frank Vega. To cite this version: HAL Id: hal

Comparator: A Tool for Quantifying Behavioural Compatibility

Setup of epiphytic assistance systems with SEPIA

The optimal routing of augmented cubes.

Real-Time and Resilient Intrusion Detection: A Flow-Based Approach

Sliding HyperLogLog: Estimating cardinality in a data stream

Placement du coeur d un réseau mobile autonome

Multimedia CTI Services for Telecommunication Systems

HySCaS: Hybrid Stereoscopic Calibration Software

QuickRanking: Fast Algorithm For Sorting And Ranking Data

Traffic Grooming in Bidirectional WDM Ring Networks

KeyGlasses : Semi-transparent keys to optimize text input on virtual keyboard

Branch-and-price algorithms for the Bi-Objective Vehicle Routing Problem with Time Windows

Comparison of spatial indexes

Relabeling nodes according to the structure of the graph

Self-optimisation using runtime code generation for Wireless Sensor Networks Internet-of-Things

A Resource Discovery Algorithm in Mobile Grid Computing based on IP-paging Scheme

The Connectivity Order of Links

Tacked Link List - An Improved Linked List for Advance Resource Reservation

Reverse-engineering of UML 2.0 Sequence Diagrams from Execution Traces

lambda-min Decoding Algorithm of Regular and Irregular LDPC Codes

QAKiS: an Open Domain QA System based on Relational Patterns

Linked data from your pocket: The Android RDFContentProvider

Regularization parameter estimation for non-negative hyperspectral image deconvolution:supplementary material

YANG-Based Configuration Modeling - The SecSIP IPS Case Study

Quality of Service Enhancement by Using an Integer Bloom Filter Based Data Deduplication Mechanism in the Cloud Storage Environment

DANCer: Dynamic Attributed Network with Community Structure Generator

Robust IP and UDP-lite header recovery for packetized multimedia transmission

The Proportional Colouring Problem: Optimizing Buffers in Radio Mesh Networks

Syrtis: New Perspectives for Semantic Web Adoption

Study on Feebly Open Set with Respect to an Ideal Topological Spaces

Linux: Understanding Process-Level Power Consumption

Moveability and Collision Analysis for Fully-Parallel Manipulators

Scalewelis: a Scalable Query-based Faceted Search System on Top of SPARQL Endpoints

Mokka, main guidelines and future

Open Digital Forms. Hiep Le, Thomas Rebele, Fabian Suchanek. HAL Id: hal

A Practical Evaluation Method of Network Traffic Load for Capacity Planning

An FCA Framework for Knowledge Discovery in SPARQL Query Answers

Cloud My Task - A Peer-to-Peer Distributed Python Script Execution Service

Natural Language Based User Interface for On-Demand Service Composition

Every 3-connected, essentially 11-connected line graph is hamiltonian

A Voronoi-Based Hybrid Meshing Method

Real-time FEM based control of soft surgical robots

Synthesis of fixed-point programs: the case of matrix multiplication

Hardware Acceleration for Measurements in 100 Gb/s Networks

Fuzzy sensor for the perception of colour

From medical imaging to numerical simulations

SIM-Mee - Mobilizing your social network

X-Kaapi C programming interface

Change Detection System for the Maintenance of Automated Testing

An Experimental Assessment of the 2D Visibility Complex

Managing Risks at Runtime in VoIP Networks and Services

Spectral Active Clustering of Remote Sensing Images

Representation of Finite Games as Network Congestion Games

Efficient implementation of interval matrix multiplication

SDLS: a Matlab package for solving conic least-squares problems

LaHC at CLEF 2015 SBS Lab

RETIN AL: An Active Learning Strategy for Image Category Retrieval

Implementing an Automatic Functional Test Pattern Generation for Mixed-Signal Boards in a Maintenance Context

Distributed fast loop-free transition of routing protocols

A Methodology for Improving Software Design Lifecycle in Embedded Control Systems

Catalogue of architectural patterns characterized by constraint components, Version 1.0

Comparison of radiosity and ray-tracing methods for coupled rooms

Experimental Evaluation of an IEC Station Bus Communication Reliability

A N-dimensional Stochastic Control Algorithm for Electricity Asset Management on PC cluster and Blue Gene Supercomputer

Quasi-tilings. Dominique Rossin, Daniel Krob, Sebastien Desreux

Prototype Selection Methods for On-line HWR

Learning a Representation of a Believable Virtual Character s Environment with an Imitation Algorithm

CORON: A Framework for Levelwise Itemset Mining Algorithms

Application-Aware Protection in DWDM Optical Networks

Stream Ciphers: A Practical Solution for Efficient Homomorphic-Ciphertext Compression

COM2REACT: V2V COMMUNICATION FOR COOPERATIVE LOCAL TRAFFIC MANAGEMENT

Overlay of Multicast Service in WDM-PON Based on Dynamic Wavelength Reflection Scheme

Formal modelling of ontologies within Event-B

Assisted Policy Management for SPARQL Endpoints Access Control

FIT IoT-LAB: The Largest IoT Open Experimental Testbed

Decentralised and Privacy-Aware Learning of Traversal Time Models

THE COVERING OF ANCHORED RECTANGLES UP TO FIVE POINTS

Real-Time Collision Detection for Dynamic Virtual Environments

Integration of Legacy Non-SDN Optical ROADMs in a Software Defined Network

Fast and precise kinematic skeleton extraction of 3D dynamic meshes

Kernel perfect and critical kernel imperfect digraphs structure

FStream: a decentralized and social music streamer

Multi-atlas labeling with population-specific template and non-local patch-based label fusion

YAM++ : A multi-strategy based approach for Ontology matching task

Amélioration du débit des réseaux optiques via TCP Stop-and-Wait sur les commutateurs hybrides

A Generic Architecture of CCSDS Low Density Parity Check Decoder for Near-Earth Applications

Modelling and simulation of a SFN based PLC network

Transcription:

A greedy approach for minimizing SDN control overhead Mathis Obadia, Mathieu Bouet, Jean-Louis Rougier, Luigi Iannone To cite this version: Mathis Obadia, Mathieu Bouet, Jean-Louis Rougier, Luigi Iannone. A greedy approach for minimizing SDN control overhead. CoRes 2016, May 2016, bayonne, France. CoRes 2016, 2015. <hal-01306054> HAL Id: hal-01306054 https://hal.archives-ouvertes.fr/hal-01306054 Submitted on 22 Apr 2016 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

A Greedy Approach for Minimizing SDN Control Overhead Mathis OBADIA 12 and Mathieu Bouet 2 and Jean-Louis Rougier 1 and Luigi Iannone 1 1 Télécom Paristech France 2 Thales Communications and Security L approche SDN implique une séparation entre le plan de données et le plan de contrôle centralisé. Pour des raisons de passage à l échelle et de fiabilité ce plan de contrôle centralisé doit être physiquement distribué dans le cas de déploiements de grande envergure. Dans cet article nous abordons la question de la minimisation de la surcharge de trafic que l utilisation d un plan de contrôle distribué implique. Nous résolvons ce problème de manière optimal pour de petites instances grâce à l utilisation de technique d optimisation linéaire et introduisons un algorithme glouton capable d obtenir des résultats proches de 3% de l optimal en un temps moindre et sur des topologies bien plus grandes. Keywords: SDN, Distributed Control Plane, Communication Overhead 1 Introduction The Software Defined Network paradigm advocates for a logically centralized control plane. When a physically centralized control plane is not feasible, for instance because of scalability and/or resiliency issues, physically distributed controllers needing to act like a logically centralized control plane are used. This means sharing information among themselves in order to keep a global consistent view of the network. The implication is that a lot of data is exchanged over the control plane. While this might not be an issue in a data center network, where bandwidth is cheap, in large scale WANs the issue of control overhead may become predominant, especially in constrained networks [ea14]. In this paper we focus on SDN controller placement and control plane topology adaptation so as to minimize control overhead. We first model the problem as a Mixed Integer Program (MIP), in order to get the optimal controller placement and the optimal spanning tree topology formed by active controllers. Such model is used as reference point because of its optimality. But it uses too much time and computation resources to be used on large topologies. We then introduce a greedy algorithm able to compute quasioptimal placement and control plane topology in a very short time, with a less than 3% margin from the optimal computed via the time consuming MIP approach. The controller placement problem in distributed SDN architectures has been studied mostly by trying to minimize switch-controller delay [ea12], which is a very important metric in an architecture where switches sometimes need to buffer flows while waiting for the controller reply. Other extensions of the problem have tried to address the reliability issue with different placement mechanism and related metrics [eaa] [eab]. Differently from the above-mentioned proposals, our work focuses on the problem of efficiently sharing relevant network information between controllers and how their placement can impact the overhead on the control plane. This scheme includes the controller placement but also the minimum spanning tree among controllers. The latter is a major difference from other publications where all intercontroller distance is considered. This is especially relevant in locally controlled SDN architectures [ea13] and when using constrained control links [ea14]. The rest of the paper is structured as follows. Sec. 2 introduces our model,the MIP and the greedy algorithm. Both models are then compared in Sec. 3. Sec. 4 concludes the paper.

Mathis OBADIA and Mathieu Bouet and Jean-Louis Rougier and Luigi Iannone FIGURE 1: Flow requests and installations in distributed SDN networks. 2 Mixed Integer Program Model and Greedy heuristic Hereafter we first provide the general network model and then define the cost function used to formally quantify the control overhead. We then present our greedy heuristic that aims at minimizing overhead. 2.1 Network Model The network graph is G = (S,E) : composed by SDN-enabled switches S and the physical links between them E. Controllers can be placed on C S. We introduce the following binary decision variables : x i = 1 if controller i is active. The network can be seen as split in different control domains, each domain representing the set of network elements controlled by the same controller, represented by y i,m = 1 if switch i is assigned to controller m. Since most of the data sent by a controller has to be sent to all the other controllers, the most efficient way to share information over the overlay is a spanning tree, modeled as follows : u m,h = 1 if the distance in the spanning tree between m and the root is equal to h. If n is the predecessor of m in the spanning tree then p m,n = 1. Whenever a packet arrives at a switch, if the packet does not match any entry in the flow table, a packet_in is sent to the controller of this switch and the flow is buffered until a rule is installed. The number of packet_in sent to the controller highly depends on the way the network is operated and what is the flows traffic matrix. We indicate by T = T i, j the flows traffic matrix (in flow/s). Where T i,i is the number of flows without a match coming from the hosts connected on switch i, while T i, j is the number of flows without a match coming from switch i to switch j. 2.2 MIP We shall define the overhead traffic as composed by all the traffic in the control plane, that is all switchcontroller communications and controller-controller communications. It is composed by (in order of appearance in the long sum for the MIP problem) : Data collection cost :SDN switches make available a number of statistics, the controller has to periodically (with f dc bit-rate) ask switches to send the relevant data. Cost of route request and route installation : A number of different control plane communications need to happen when a new flow is generated to install the right rules on all the switches where the flow will transit, those communications are represented in Fig.1. When a new flow coming from an host arrives at a switch, a packet_in (size f p ) is generated and sent to the controller of this switch. When a flow arrives from another domain, the controller discovers this flow, so the same process has to be applied. Finally the controller needs to install rules on all the switches in its domain via a flow_mod (size f f m ) packet. Synchronization cost : The data collected by a controller m (with f syn bit-rate) that needs to be sent to all the other controllers is proportional to the number of switches inside the domain of m and to the size of the spanning tree between all controllers. We obtain the following MIP problem : Minimize : F = f dc i S d i,m y i,m + f p i S T i,i d im y i,m + f p i S j S n C,m n T j,i y i,m y j,n d i,m + f f,m i S j S T j,i d i,m y i,m + f syn N n C p m,n d m,n with the following constraints :

A Greedy Approach for Minimizing SDN Control Overhead y i,m = 1 i S Every switch is controlled by one controller exactly y i,m <= x m i Sm C Switch i is controlled by m only if m is active x i,m delay i,m <= δ i Sm C Maximum switch-controller distance is less than δ H l=1 u m,l = x i m C Single loop free path from each controller to root u m,0 = 1 Root uniqueness p m,n = x j u j,0 n C Active controllers have one predecessor except for root p m,n <= 1 u j,l + u i,l 1 n Cm Cl = 0..L m predecessor of n if his distance to root is 1 less Where d i,m is the distance (in hops) between node i and node m, f p is the packet size (in bytes) of the packet_in, f f m is the average size (in bytes) of a flow_mod packet. 2.3 Algorithm To solve the problem formalized in the previous paragraph, we propose to use a greedy heuristic. The algorithm starts with all possible controllers activated, on each iteration it tries to turn off one of the controllers and computes the associated overhead cost. The first step of this calculation is choosing controller domains : each switch is controlled by the closest (in term of delay) activated controller. Each time a switch is associated with an active controller, the algorithm checks that the switch-controller delay is less than the maximum delay tolerated by the model. If it is true costs calculations can continue, the configuration is skipped otherwise. The cost of data collection and route requests and installation can be computed. The minimum spanning tree between controllers is calculated using Prim s algorithm and the cost of synchronization can also be computed [ead]. If the calculated cost is less than the previous minimum this new configuration is saved. The algorithm tries to shut down each possible controller on every iteration and uses the configuration with the minimum cost as a starting point for next iteration. The algorithm stops when stopping any controller causes the cost of overhead to grow. 3 Evaluation 3.1 Implementation and Experimental Setup In order to compute cost function defined in our model, we need realistic cost weights for as well as a realistic topology and the related traffic matrix. f p and f f m are openflow packets with size 80 bytes. The data collection cost highly depends on how much monitoring controllers need to react quickly to have a responsive network we used 40 KB/s in this simulation. The synchronization traffic includes reachability information, heart beat messages for failure detection [eac] and route quality information. The synchronization traffic sent by a controller to all the other controllers is an aggregation of the collected data f syn = f dc /10 = 4KB/s. We used the GEANT [ea06] topology as the network topology, assuming that each router is replaced by a SDN switch, there is one new flow every 100 000 KB exchanged, and C = S. 3.2 Evaluation Results The baseline costs we chose are an example of a realistic setup, but can widely change according to network applications running on the controllers. To show the influence of those costs we evaluated the variation of the costs and of the optimal number of controllers according to those parameters. Fig. 2a shows the impact of data collection cost F dc on the overall cost. When the data collection cost grows because of a higher weight f dc, the impact of switch-controller distance is stronger and the optimal placement needs controllers close to the switches, which causes the optimal number of controllers in the

Mathis OBADIA and Mathieu Bouet and Jean-Louis Rougier and Luigi Iannone (a) Effect of a data collection cost (b) Effect of synchronization cost (c) Effect of flow installation cost FIGURE 2: Effect of a flow installation cost on the overhead cost and the number of controllers on the GEANT topology network to grow. On the contrary, when the cost of synchronization F syn grows, the size of the spanning tree between controllers becomes the predominant factor in the total overhead cost, thus, the number of controllers has to be reduced, as shown in Fig. 2b. The cost of flow requests and installation grows like the cost of data collection, with the exception that instead of having a fixed per-switch cost, the cost depends of the traffic coming from other domains and hosts directly connected to the switch. When the traffic generates more new flows, the switch-controller distance has greater impact and has to be smaller, hence, the number of controllers higher. To test the effect of the network size on the overhead cost and optimal number of controllers, we generated random graphs using the Barabasi Algorithm [Bea02]. In all experiments, results showed that our greedy algorithm is very close to the optimal for the number of nodes tested, with a deviation from the optimal of less than 3% for all evaluated topology and at least 10 times quicker. Results are not available for topology bigger than 60 nodes because the CPLEX solver ran out of it s 4GB allowed memory. Our algorithm provides a near-optimal solution in less than a minute even for topologies of a hundred nodes. 4 Conclusions and perspectives In this paper we tackle the issue of minimizing communication overhead in the control plane of distributed SDN networks Such goal is achieved by control plane topology adaptation (i.e., carefully placing the controllers) including a building minimal spanning tree between controllers. We developed a MIP based linear formulation that can be used to find the optimal solution on topologies with a moderate size. We also presented an heuristic based on a greedy algorithm to find a near optimal controller placement and its associated spanning tree topology. We showed numerically that this algorithm gives results very close the optimal in a reasonable time on real world as well as random topologies of different sizes. Références [Bea02] A. Barabási et al. Statistical mechanics of complex networks. RMP, 74(1) :47, 2002. [eaa] Hock et al. Pareto-optimal resilient controller placement in sdn-based core networks. In ITC, 2013 25th International. [eab] Hu et al. Reliability-aware controller placement for software-defined networks. In Integrated Network Management (IM 2013) IFIP/IEEE. [eac] Mathis Obadia et al. Failover mechanisms for distributed SDN controllers. In SCNS 14. [ead] Moret et al. An empirical assessment of algorithms for constructing a minimum spanning tree. in proc of DIMACS 1994. [ea06] Uhlig et al. Providing public intradomain traffic matrices to the research community. ACM SIG- COMM CCR, 2006. [ea12] Heller et al. The controller placement problem. In Proc. ACM HotSDN, 2012. [ea13] Schmid et al. Exploiting locality in distributed sdn control. In Proc. ACM HotSDN, 2013. [ea14] Phemius et al. DISCO : Distributed multi-domain SDN controllers. In IEEE/IFIP NOMS, 2014.