An Approximation Algorithm for Path Computation and Function Placement in SDNs

被引:25
作者
Even, Guy [1 ]
Rost, Matthias [2 ]
Schmid, Stefan [3 ]
机构
[1] Tel Aviv Univ, Sch Elect Engn, Tel Aviv, Israel
[2] TU Berlin, Dept Elect Engn & Comp Sci, Berlin, Germany
[3] Aalborg Univ, Dept Comp Sci, Aalborg, Denmark
来源
STRUCTURAL INFORMATION AND COMMUNICATION COMPLEXITY, SIROCCO 2016 | 2016年 / 9988卷
关键词
D O I
10.1007/978-3-319-48314-6_24
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
We consider the task of embedding multiple service requests in Software-Defined Networks (SDNs), i.e. computing (combined) mappings of network functions on physical nodes and finding routes to connect the mapped network functions. A single service request may either be fully embedded or be rejected. The objective is to maximize the sum of benefits of the served requests, while the solution must abide node and edge capacities. We follow the framework suggested by Even et al. [5] for the specification of the network functions and routing of requests via processing-and-routing graphs (PR-graphs): a request is represented as a directed acyclic graph with the nodes representing network functions. Additionally, a unique source and a unique sink node are given for each request, such that any source-sink path represents a feasible chain of network functions to realize the service. This allows for example to choose between different realizations of the same network function. Requests are attributed with a global demand (e.g. specified in terms of bandwidth) and a benefit. Our main result is a randomized approximation algorithm for path computation and function placement with the following guarantee. Let m denote the number of links in the substrate network, epsilon denote a parameter such that 0 < epsilon < 1, and opt* denote the maximum benefit that can be attained by a fractional solution (one in which requests may be partly served and flow may be split along multiple paths). Let c(min) denote the minimum edge capacity, let dmax denote the maximum demand, and let b(max) denote the maximum benefit of a request. Delta(max) denote an upper bound on the number of processing stages a request undergoes. If c(min)/(Delta(max) . dmax) - Omega(( logm)/epsilon(2)), then with probability at least 1 - 1/m - exp(- Omega(epsilon(2) . opt*/( b(max) . d(max)))), the algorithm computes a (1 - epsilon)- approximate solution.
引用
收藏
页码:374 / 390
页数:17
相关论文
共 20 条
[1]  
Abujoda A., 2015, P COMSNETS C
[2]  
[Anonymous], 2013, NETW FUNCT VIRT NFV
[3]  
[Anonymous], J COMPUT NET COMNET
[4]  
Dietrich D., 2015, IFIP NETW C
[5]  
Even G., 2016, ABS160206169 CORR
[6]  
Even G., 2016, ABS160309158 CORR
[7]   Virtual Network Embedding: A Survey [J].
Fischer, Andreas ;
Botero, Juan Felipe ;
Beck, Michael Till ;
de Meer, Hermann ;
Hesselbach, Xavier .
IEEE COMMUNICATIONS SURVEYS AND TUTORIALS, 2013, 15 (04) :1888-1906
[8]  
Gember-Jacobson A., 2014, P ACM SIGCOMM
[9]  
Hartert R., 2015, P ACM SIGCOMM
[10]   Software-Defined Networking: A Comprehensive Survey [J].
Kreutz, Diego ;
Ramos, Fernando M. V. ;
Verissimo, Paulo Esteves ;
Rothenberg, Christian Esteve ;
Azodolmolky, Siamak ;
Uhlig, Steve .
PROCEEDINGS OF THE IEEE, 2015, 103 (01) :14-76