Queue-allocation optimization for adaptive video streaming over ...

5 downloads 33370 Views 757KB Size Report
Software Defined Networking (SDN) is a powerful paradigm. that separates the ... resource management. Given the ... levels in addition to the best-effort for multimedia services. This will ..... cal and Metropolitan Area Networks (LANMAN), 2015.
QUEUE-ALLOCATION OPTIMIZATION FOR ADAPTIVE VIDEO STREAMING OVER SOFTWARE DEFINED NETWORKS WITH MULTIPLE SERVICE-LEVELS K. Tolga Bagci, Kemal E. Sahin, A. Murat Tekalp College of Engineering, Koc¸ University, Istanbul, Turkey {kbagci, ksahin, mtekalp}@ku.edu.tr ABSTRACT Internet service providers (ISP) are deploying software defined networking (SDN), which enables them to better utilize their resources and increase their revenues by offering ondemand differentiated services. In particular, SDN makes provisioning of dynamically managed video services with multiple levels of service viable, since the controller has complete vision of network resources and can change flow paths dynamically by continuously optimizing routes for each flow according to network state. This paper proposes a new method for flow-path computation by queue allocation with the objective of maximizing ISP revenues under perflow service-level constraints. We formulate the optimization problem and implement its solution in the path computation unit of an SDN controller. Our experiments support that customers requesting improved quality video service receive significantly better QoE compared to best effort services to justify their paying extra for these services. Index Terms— SDN, path computation optimization, queue allocation, quality of service, video streaming 1. INTRODUCTION Networked multimedia applications need a certain level of end-to-end (e2e) quality of service (QoS) performance to provide a sufficient level of quality of experience (QoE) to users. For example, ultra high definition video streaming services require high e2e throughput while real-time communication services desire low e2e delay. However, in the current Internet, all traffic flows are treated equally with the best-effort service, since existing network architectures, protocols, and vertically-integrated equipment make the process of on-demand network configuration and resource allocation difficult. Over the years, there have been many traffic engineering (TE) proposals to improve network performance and provide QoS over classical IP networks, including integrated services This work has been funded by TUBITAK project 115E299. A. Murat Tekalp also acknowledges support from Turkish Academy of Sciences (TUBA).

‹,(((

(IntServ) [1], differentiated services (DiffServ) [2], multiprotocol label switching (MPLS) [3], and application layer traffic optimization (ALTO). MPLS is a label switching paradigm, where labels are assigned and distributed between routers to support explicit routing between a source and destination, which provides flexibility for routing optimization. ALTO allows a network to publish network information, such as a group of nodes, costs between them, and end host properties (e.g. connection type ADSL or Fiber) to network applications. However, plethora of protocols to be supported and amount of computation to be performed at each router make QoS provisioning over the current Internet highly complicated and dependent on router vendors. Software Defined Networking (SDN) is a powerful paradigm that separates the control and forwarding planes of routing and moves the routing control logic from network devices to a logically centralized controller [4]. This way, switches become simple forwarding devices, where flow-based forwarding decisions are made at the controller and mapped to flow tables at each switch. SDN has already proven its success in data-center networks by enabling reconfiguration of network resources dynamically every time a virtual server has been moved. It is anticipated that SDN will have a similar impact on content-provider and ISP networks. As an SDN controller has complete view of network-wide resources, it becomes practical for ISPs to perform traffic engineering and resource management. Given the ability of dynamic resource management, we foresee ISPs to offer improved servicelevels in addition to the best-effort for multimedia services. This will enable ISPs to increase their revenues by offering on-demand differentiated services to its customers through real-time flow-based service provisioning. Dynamic adaptive streaming over HTTP has become the default streaming approach for most content providers such as Netflix, Youtube and Hulu. In the literature, path assignment frameworks for improving the performance [5] [6] and fairness [7] [8] of adaptive HTTP streaming over SDN have been proposed. However, queue allocation to support multiple users with different service-levels in the context of dynamic adaptive video services has not been studied. Multiple user-defined service levels and operator-defined traffic classes (e.g., high bandwidth, low delay) require new



,&,3

traffic engineering algorithms and optimization frameworks in order to jointly optimize multiple types of service and allow them to co-exist on the same network. This paper proposes a generic framework for queue-based dynamic path computation for adaptive video streaming for different service-levels where source and destination reside in a single operator SDN. The main contributions of this paper are: i) propose more than two classes of service differentiation in the context of adaptive video streaming services, ii) provide a new formulation for optimization of queue allocation problem for these multiple service classes. We note that the path computation framework proposed in this paper can be employed as a module in the more general framework, which we proposed in [9], of e2e service provisioning over multi-operator network of SDNs, with the ingress and egress gateways to a particular operator network considered as source and destination. In Section 2, we describe the proposed optimization framework and formulate the optimal path computation problem. Experimental setup and evaluation of the proposed queue allocation optimization are presented in Section 3. We draw conclusions in Section 4. 2. OPTIMIZATION OF PATH COMPUTATION BY QUEUE ALLOCATION Dynamic allocation of required network resources for multiple service flows is not a straightforward task. Path computation unit of the SDN controller should consider already existing service flows when deciding the route for new incoming service requests and satisfy requirements of all service flows. In the following, we propose an optimization framework for path computation of flows with multiple service-levels over SDN. 2.1. Multiple Service Levels We define improved-quality (IQ) and best-effort-plus (BE+) flows in addition to the traditional best effort service (BE). Customers demanding IQ service grade has higher priority over BE+ grade and BE+ grade has priority over BE service. It is well-known that there exists a nonlinear relationship between network QoS parameters and application QoE often characterized by utility curves [7]. Customers often specify QoE requirements which are mapped into QoS requirements by service providers. Network resources are allocated considering constraints on QoS parameters that precisely define service-level differentiation. For example, customers requesting IQ grade are allocated a minimum required bandwidth. The controller of the network provider allocates minimum resources for IQ customers based on all constraints. BE+ customers are not guaranteed a minimum bandwidth, but they have priority over BE customers in resource allocation. Customers are served at the highest bitrate the video service supports provided that sufficient network resources exist. An IQ

S3 S2 S4

S1

S7

S6

S8

S5

S9

Fig. 1: Directed weighted multi-graph representation of an exemplary network topology with 9 switches and 3 queues at each port. customer is downgraded to BE+, and BE+ customers are downgraded to BE if the network resources are not sufficient to meet all service requirements. In this service model, customers with IQ pay a fixed fee plus incremental fee per extra bandwidth assigned, while there is no fixed cost for BE+ customers and no cost for BE service. 2.2. QoS provisioning by Queue Allocation SDN switches support queues, which provide per-flow ratelimiting ability; hence, make QoS implementations possible. Switch ports can be configured with multiple queues using OVS commands [10] so that different queues can be utilized for packet egress at each port. OpenFlow [11] also supports queuing action and packets of a particular traffic flow can be assigned to an appropriate queue through flow modification. In this way, special traffic flows can be routed to satisfy the related QoS requirements. A model for queue management is to create queues ondemand per-flow at specific rates and delete them once the flow expires [12]. However, creation of an unlimited number of queues may not be supported by all hardware switches. Alternatively, a fixed number of queues with fixed capacities for each port can be configured once, and different flows can be assigned to these queues. Consequently, the path computation unit at the controller performs the queue allocation process for all switches and for each flow to optimize path computation subject to QoS constraints. This process uses the near real-time per-queue traffic estimates that are collected through queue statistics request and reply messages of OpenFlow. 2.3. Problem Formulation Let G(S, Q) be a directed weighted multi-graph depicted in Figure 1, where S is the set of nodes (switches) and Q is the sa sb set of directed weighted arcs (queues). Let qij be a binary



variable representing the assignment decision of user i to the j th queue at the port outgoing from switch sa and incoming to switch sb , where queue id j is between 1 to NQ (number of queues on a switch port). Note that each user i ∈ F is either member of BE+ or IQ (F is the union of users with BE+ and IQ). Note that BE users are not included since they are always routed through the shortest path. As it may not be possible to satisfy requirements of a user with IQ service-level, another binary variable di is defined that provides the decision whether IQ can be satisfied for user i. The e2e bandwidth assigned for user i is defined by variable bi . As we consider the path computation problem with multiple service-levels to maximize the total ISP revenue, the constants pBE+ and pIQ represent per bandwidth fees for both services and the fixed cost for IQ grade, respectively. The minimum and maximum bandwidth requested by user i for particular service are represented by constants bwimin and bwimax . Note that bwimin is always zero for users with BE+. Then, the optimal path computation problem with multiple service-levels and users is formulated as follows: maximize   bi pBE+ + di pIQ + (bi − di bwmin )pBE+ (1) i i∈BE+

i∈IQ

subject to , bi ≤ bwmax i

∀i ∈ BE+ (2)

− bwmin )di + bwmin , bi ≤ (bwmax i i i bwmin di , i

bi ≥  s1 s 2 qij bi ≤ Cjs1 s2 ,

∀i ∈ IQ (3) ∀i ∈ IQ (4)

∀s1 , s2 ∈ S, ∀j ∈ [1, NQ ] (5)

i∈F

 NQ

srci

s qij

s

=1

∀i ∈ F

(6)

= 0 ∀i ∈ F

(7)

s∈S j=1 NQ 

ssdsti qij

= 1,

s∈S j=1 NQ 

NQ 

dsti

s qij

s

s∈S j=1



s s qij −

s∈S j=1

NQ 



ss qij = 0, ∀i ∈ F, ∀s∗ ∈ S/ssrci sdsti

Equation 1 represents the total ISP revenue. The first part simply calculates revenues from users of BE+. In the second part, there exists a fixed cost for users of IQ and an additional charge for the extra resources allocated for improved quality. Note that if the requirements of a user i of IQ cannot be satisfied (di = 0), then it is charged for BE+ service. Since the proposed path computation is dynamic, as the network resources vary, di can toggle between 0 and 1, changing the QoS level for user i as a function of time. Equations 2-4 are constraints that define bandwidth for IQ and BE+ service-levels. Equation 5 represents the queue capacity constraint where the total bandwidth of flows assigned to a particular queue j of a port from switch s1 to switch s2 is less than the capacity of the queue Cjs1s2 . Note that Equation 5 performs summation over users as we allow multiple flows share a common queue. Equations 6-10 represent routing constraints. Based on Equations 6 and 7, for each flow i there must be an exit from source switch ssrci , an entry to destination switch sdsti with no exit. Equation 8 indicates that for any intermediate switch s∗ if there is an entry there must be an exit so that queue sequences assigned to a particular flow form an e2e path. Equations 9 and 10 avoid cycles and loops in the route by constraining number of entries and exists for a particular switch. Finally, for each service request i, the solution for the optimization problem provides i) a decision di indicating whether the requested service-level can be fulfilled, ii) an end-to-end bandwidth bi , and iii) sequence of queues forming an e2e path from the source to destination. 2.4. Solution of the Optimization Problem The queue capacity constraint in Equation 5 is non-linear. sa sb is binary, this constraint can be re-expressed as Since qij a number of linear constraints by introducing an additional variable to speed up the optimization. We have implemented both the non-linear and linear formulation using the GAMS API with high-performance Cplex and Baron solvers for the linear and non-linear formulation, respectively [13]. We observed that the linear formulation runs up to 90x faster in the case of our problem for the same network topology and conditions.

s∈S j=1

3. PERFORMANCE EVALUATION

(8) NQ 

ss∗ qij

NQ    s1 ∈S  s2 ∈S  j=1

3.1. Experimental Setup s∗ s qij

≤ 1 ∀i ∈ F, ∀s ∈ S (9)

    s 1 s2 qij ≤ S  − 1,

∀i ∈ F, S  S (10)

≤ 1,

s∈S j=1

NQ 



s∈S j=1 

variables s1 s2 bi ≥ 0, di ∈ {0, 1}, qij ∈ {0, 1}

(11)

We evaluate the performance of video service provisioning over an SDN with multiple service-levels using the proposed path optimization framework over a network emulated by using Mininet [14]. Note that our emulation uses OVS switches which are production quality soft switches. Network topology contains 25 switches each of which has 2 to 7 neighbor switches creating many possible paths from source to destination nodes. A smaller example testbed is depicted in Figure



11

     

8,25

Bitrate (Mbps)

    

5,5

2,75



 

0

42

50

58

66

74

82

90

98 106 114 122 130 138 146 154 162 170 178 186 194 202

Time

Fig. 3: Received segment bit-rates of DASH clients with BE and BE+ service-levels in scenario 1.

Fig. 2: Experimental setup with exemplary topology. 2 for convenience. Once the switches and links are created, we configure 3 different queues (configured out-of-band with OVS commands) at 15 Mbps, 25 Mbps and 50 Mbps packet egress capacity at each port. We use Floodlight SDN controller [15] which we have extended with a resource monitoring module that periodically calculates the utilization of each queue every 5 seconds, and a policing module that computes the statistics of each QoS flow and enforces per-flow bandwidth constraints. We use MPEG-DASH [16] for dynamic adaptive video streaming. There is one host running an HTTP server to provide the MPD file and DASH segments to the four DASH clients. The streamed video content (TearsOfSteel) is HD with total duration 12 minutes. The duration of coded segments is 2 seconds with 4 adaptation levels ranging from 3 Mbps to 10 Mbps [17]. For emulating the background traffic, we connect hosts to each switch. Each host runs certain scripts for generating scenario specific UDP traffic using iPerf [18]. The extra bandwidth fee pBE+ is chosen as 1 unit per-Megabyte, while the fixed cost of IQ service-level pIQ is 6 units per minute. 3.2. Results We consider two different scenarios. In the first case, there are 3 DASH clients where client A is defined as a standard user requesting the content with best-effort (BE), and clients B and C with BE+ service-levels. Initially there are sufficient resources for all clients, but around 100th second a background traffic of 10 Mbps causes congestion along the shortest path. As the proposed path optimization is dynamic, flows of clients with BE+ service-level are re-routed. In Figure 3, client A mostly receives segments from the lowest adaptation level, while clients B and C still receive segments with higher bit-rates. In the second scenario, initially there are 2 DASH clients where client A is BE+, and client B receives IQ servicelevel. For this particular video, IQ service request corresponds to at least 5 Mbps e2e connection, where bit-rates for the available adaptation levels are sent by the video service

11

8,25

Bitrate (Mbps)

  

Client-A (BE) Client-B (BE+) Client-C (BE+)

Client-A (BE+) Client-B (IQ) Client-C (IQ) Client-D (IQ)

5,5

2,75

0 58

62

66

70

74

78

82

86

90

94

98

102

106

110

114

118

122

126

Time

Fig. 4: Received segment bit-rates of DASH clients with BE+ and IQ service-levels in scenario 2. provider to the controller of the network provider through the REST API. Background traffic level is designed so that clients A and B receive the highest quality initially. Around 75th second, two additional clients C and D request IQ service-level. Now, re-solving the optimization problem with four clients, we can offer clients B, C and D IQ service-level, however, resources assigned to client A decreases as depicted in Figure 4. The figure shows Clients B, C, and D receive video at higher bit-rates compared to client A. Note that the slow-start for new services and bitrate oscillations are due to client-side adaptation implementation. 4. CONCLUSIONS SDN enables ISPs to better utilize and manage their network resources so that they can offer new on-demand service-levels to its customers and increase their revenues. This paper formulates the optimum queue allocation problem with the objective of maximizing ISP revenue under per-flow constraints with multiple service-levels. Our experiments show that with the proposed routing approach ISPs can offer multiple-service levels to provide different levels of QoS for differentiated video services, and allocate resources accordingly on-demand in real-time. Results support that customers requesting IQ video service receive significantly better QoE compared to BE services to justify their paying extra for these services.



5. REFERENCES [1] R. Braden, D.Clark, and S. Schenker, “Integrated services in the internet architecture: an overview,” RFC 1633, June 1994.

[9] Seyhan Civanlar, Erhan Lokman, Bulent Kaytaz, and A Murat Tekalp, “Distributed management of serviceenabled flow-paths across multiple sdn domains,” in Networks and Communications (EuCNC), 2015 European Conference on. IEEE, 2015, pp. 360–364.

[2] S. Blake, D. Black, M. Carlson, E. Davies, Z. Wang, and W. Weiss, “An architecture for differentiated services,” RFC 2475, December 1998.

[10] “Open vSwitch: An Open Virtual Switch,” http:// openvswitch.org, Accessed: 2016-01-20.

[3] C. Srinivasan, A. Viswanathan, and T. Nadeau, “Multiprotocol label switching (mpls) label switching router (lsr) management information base (mib),” RFC 3813, June 2004. [4] Open Networking Fundation, “Software-defined networking: The new norm for networks,” ONF White Paper, 2012. [5] Cihat Cetinkaya, Erdem Karayer, Muge Sayit, and Cornelius Hellge, “Sdn for segment based flow routing of dash,” in Consumer Electronics Berlin (ICCE-Berlin), 2014 IEEE Fourth International Conference on. IEEE, 2014, pp. 74–77. [6] Cihat Cetinkaya, Yalcin Ozveren, and Muge Sayit, “An sdn-assisted system design for improving performance of svc-dash,” in Computer Science and Information Systems (FedCSIS), 2015 Federated Conference on. IEEE, 2015, pp. 819–826. [7] Panagiotis Georgopoulos, Yehia Elkhatib, Matthew Broadbent, Mu Mu, and Nicholas Race, “Towards network-wide qoe fairness using openflow-assisted adaptive video streaming,” in Proceedings of the 2013 ACM SIGCOMM workshop on Future human-centric multimedia networking. ACM, 2013, pp. 15–20. [8] Jason J Quinlan, Ahmed H Zahran, KK Ramakrishnan, and Cormac J Sreenan, “Delivery of adaptive bit rate video: balancing fairness, efficiency and quality,” in Local and Metropolitan Area Networks (LANMAN), 2015 IEEE International Workshop on. IEEE, 2015, pp. 1–6.

[11] “Open Networking Foundation,” https://www. opennetworking.org/. [12] David Palma, Joaquim Goncalves, Bruno Sousa, Luis Cordeiro, Paulo Simoes, Shantanu Sharma, and Dimitri Staessens, “The queuepusher: Enabling queue management in openflow,” in Software Defined Networks (EWSDN), 2014 Third European Workshop on. IEEE, 2014, pp. 125–126. [13] GAMS Development Corporation, “General Algebraic Modeling System (GAMS),” . [14] “Mininet Overview,” http://mininet.org/ overview/, Accessed: 2016-01-20. [15] “Floodlight Controller,” http://www. projectfloodlight.org/floodlight. [16] Iraj Sodagar, “The mpeg-dash standard for multimedia streaming over the internet,” IEEE MultiMedia, , no. 4, pp. 62–67, 2011. [17] Stefan Lederer, Christopher M¨uller, and Christian Timmerer, “Dynamic adaptive streaming over http dataset,” in Proceedings of the 3rd Multimedia Systems Conference. ACM, 2012, pp. 89–94. [18] “iPerf The network bandwidth measurement tool,” https://iperf.fr/, Accessed: 2016-01-20.