1 Introduction

Providing customer satisfaction is an essential necessity in online video delivery. According to a recent white paper [27], a small disappointment in initial buffering duration or a relative increase in average stall metrics across a cluster of customers can result in severe drops in the number of subscribers and sharp falls in profits.

Early prediction of bottlenecks throughout the different steps of the online video delivery system is the key to prevent poor user QoE [12]. However, figuring out what might be causing a degraded performance on a complex association of peripherals and service layers is reasonably a difficult challenge.

Traditional end to end video service consists of several different components [1]; consumer hardware & software, load balancer mechanisms, switches, routers, access network elements such as fiber dslams (Digital subscriber line access multiplexer), base stations, cloud computing instances (e.g. virtual network functions) and edge cache nodes. Building and maintaining such multi-tier systems require a significant amount of investment [9] which can be described as Capital Expenditure (CAPEX) and Operating Expenditure (OPEX). Apart from that, traditional proprietary network peripherals are far from being agile and flexible in terms of scalability. Whenever technology trends change and update, costly hardware upgrades are required to meet the demands of imminent throughput and scalability. The interaction of these components is illustrated in Fig. 1.

Fig. 1
figure 1

The tiers of online video delivery

However, from a content provider’s perspective, the task is to deliver service to their subscribers in different geographical regions. The idea of owning a network is generally not preferred and current market trends have a tendency to simply purchase the processing power and CDN capability as Platform as a Service (PaaS) which provides flexibility, agility on scalability and service volume [24].

As a result of this demand and with the advance of new concepts such as 5G enablers [15], operators are going to provide Network Function Virtualization (NFVs) and Software Defined Networks (SDNs) as a network service to content providers. According to the widespread conventional misperception, 5G systems are not just an increase in communication bandwidth and better coverage. In this environment, service orchestrator has an abstracted view of computing resources, virtualization of the network functions and SDNs including edge computing, peer to peer (P2P) communication, and ultimately CDN as a service (CDNaaS) as discussed in [29].

The orchestration of SDN/NFV will be the service that is going to be purchased by the content provider from a network operator. The need for the transcoding and accessing the Over the Top (OTT) content will be handled by the network operators through applications that run on virtual machines that are available through their NFVs and streamed through the SDNs.

The need for scalability of the service is one of the major concerns for any service provider. The solution to that concern will be load balancing and to introduce intermediate and edge cache nodes [10] where the capability of a CDN can be conveyed from origin to “cost and distance efficient” cloud nodes providing an increased service capability to additional collection of subscribers.

The aim of this paper is to provide a model in order to estimate cloud-based CDN deployment and QoE provisioning. This is achieved through a model representing the tiers of an actual streaming service, where live streaming and real-time transcoding take place. A model for NFV and cloud resources is provided to estimate and maximize the performance of the video service while relating it to the user QoE. The constraints for network operators include deployment cost and QoE evaluation.

Conclusively, the mathematical part introduces the idea of deriving whole system performance based on the single user QoE and evaluates NFV and cloud QoE.

The remainder of this paper is structured as follows: Section 2 presents a brief outline of state–of-the-art in CDNaaS Technologies, Section 3 discusses related works, Section 4 illuminates NFV/SDN Ecosystem Architecture and Section 5 provides mathematical analysis of the deployment. Section 6 clarifies cloud related resource and cost constraints and Section 7 formulates the algorithm for decision process of multi-CDN switching system and Section 8 debates simulation results. Finally, in Section 9, conclusions and future works are presented.

2 State of art in CDNaaS technologıes

For a video delivery system, user’s QoE is unquestionably the particular attention argument for both Content Provider and Network Operators. However, bringing the best service to users using cloud technology has a corresponding cost. Most of the time, business cost forecasts take cloud computing expenses as the main parameter for the selection of the CDNaaS. Currently in the market, there is a selection of major solutions to fulfill cloud CDN requirement for video services [3, 4, 16]. The following section provides state of the art cloud-based solutions to deploy CDNaaS.

2.1 Amazon web services & amazon cloudfront

As a frontrunner in cloud technologies, Amazon provides a global content delivery service that securely distributes video with low latency and high availability [5]. Amazon Elastic Compute Cloud (Amazon EC2) is a flexible service [4] that provides scalable computing capacity in the cloud. Additionally, Amazon EC2 On-Demand [6] offers competing cloud pricing for unpredictable demand which fine-tunes video service capacity to meet demand on peak epochs. Integrated with AWS and directly connected with hundreds of end-user ISPs, CloudFront [5] offers regional edge cache locations as part of standard offering to ensure consistently high cache hit ratios across the globe.

2.2 Google cloud CDN

Google provides Google Cloud Platform [17] with caches at more than 80 sites across the globe which guarantees that cloud CDN is always accessible by the end-user even if the users are geographically distributed. Cloud CDN charges individually for cache fill, https lookup requests and cache invalidation [16].

2.3 Akamai CDN

Akamai hosts more than 200,000 servers in over 130 countries to get uninterrupted customer experiences. According to Akamai’s point of view [3], a start-up or a global media giant, all customers are treated as premium, independent of their size. Yet, the services widely known as expensive when compared to other CDN suppliers.

Although these commercial CDN solutions provide quite sophisticated caching and distribution algorithms [17, 23], there might still be performance limitations [8] due to the edge CDN node proximity to clusters of users in some geographical regions that are distant from major communities during peak demand periods [25]. Therefore, there is a continuous demand to determine CDNaaS capacity so that QoE lies within certain bounds.

3 Related work on QoE for online video delivery

Understanding the impact of QoE in a CDN ecosystem stands as a prerequisite for having a successful content delivery deployment. Unless users’ experiences are represented through objective metrics which are based on video player statistics, an inductive approach to formulize performance of a CDN cannot be possible.

In this part, research and academic works related to QoE and its relationship with tiers of online video delivery systems are going to be discussed. In ITU-T P.1203.3 recommendation [18], a media session quality score is formulated based on number of stalls, total stall duration, buffering duration, media length and compression quality.

$$ \mathrm{SI}={e}^{-\frac{numStalls}{s1}}.{e}^{-\frac{\left(\frac{totalbuf}{T}\right)}{s2}}.{e}^{-\frac{\left(\frac{bufdur}{T}\right)}{s3}} $$
(1)

M. Knoll et al. has provided a Mean Opinion Score model for OTT services [21], where x stands for number of stalls and t for time since the last stall and a for the memory parameter (which was set as 0.14).

$$ \mathrm{MOS}={e}^{-\frac{x}{5}+1.5-a\sqrt[e]{t}} $$
(2)

However, these equations [18, 21] do not reflect a real-time explanation of the performance of a peripheral of an online video system. In this work, by using these QoE Eqs. (1) and (2), a methodology is proposed to determine system wide QoE.

In a recently published article [11] by V. D’Amico, an architecture overview for a SDN/NFV telco operator platform for video broadcasting is validated the proof of concept for SDN testbeds. Yet in this work, the impact of QoE on SDN/NFV has not been investigated from a content provider point of view.

A. Ahmad et al. has presented [12] a collaborative approach among OTTs and ISPs where they have modelled a QoE driven approach for solving the resource sharing problem while several OTT applications use the same ISPs network peripherals. F. Z. Yousaf et al. proposed [30] a new network slicing aware orchestration framework with flexible network function control system while introducing a consistent QoS/QoE management framework. H. Koumaras et al. have developed a testbed [22] which orchestrates SDN/NFVs while providing real-time transcoding and capability to monitor NFV load and QoE levels.

Although these works [12, 22, 30] provide a good understanding on orchestration for QoE management frameworks, they still lack the impact of cloud CDN cost analysis which is one of the distinctive reasons of choosing a particular CDN supplier. G. Faraci et al. has provided a system model for 5G Operator Network Telco [13] which provides the interactions between core & edge cloud and NFVs running on physical nodes. The work proposes a simulative tool for 5G systems, which is able to detect delay events resulting from NFV load on physical device CPUs or transmission loads between nodes. Yet, the QoE impact on NFV has not been explicitly presented.

Z. Frias et al. have argued [14], the policy discussions of anything as a service in the infrastructure layer and potential of future 5G networks to provide network capabilities to third parties through an Application Program Interface (API). This will provide existing infrastructure capabilities available to any company who purchases the product like a pay as you go service. These research works [14, 19] provide a good understanding of cost profiles for CDN and cloud resources, though they lack a mathematical model to bring a methodology to decide for switching between CDNs.

Unlike these research works [11, 12, 18, 21], in this paper, a real-time understanding of QoE will be presented and its impact on NFV and cloud resources is going to be formulized. Furthermore, a mathematical analysis is presented which the basis for a decisive mechanism will be targeted for content and service providers to support multi-CDN capability that will bring a solution for the QoE/Cost/Cache success rate optimization question.

4 NFV/SDN ecosystem architecture and workflow diagram

The diagram at Fig. 2 illustrates the workflow for establishing CDNaaS through interactions among network operators, SDN/NFV orchestration and origin/CDN/Edge subsystems while observing online video delivery concept from a content provider point of view. The procedure starts as the subscribers access the content which triggers warming up (content pre-loading) and caching at intermediate and edge nodes. During the demand for the content, cost for cloud resources, system capacity and scalability are monitored. SDN/NFV and CDN and their impact on QoE is continuously estimated via trained models. The fluctuations in number of customers are considered and appropriate alteration between CDN providers are elicited to achieve three key elements; efficient deployment, customer satisfaction and cost reduction (Table 1).

Fig. 2
figure 2

Platform diagram for NFV, SDN and online video delivery

Table 1 List of Notations

5 Mathematıcal analysis

This section presents a model for the deployment of CDNaaS. Step by step, each layer; end-user, SDN, CDN, origin and NFV will be reflected according to their impact on the throughput and latency of the entire system. Also, the cost function will be evaluated for content provider and network operator. This will eventually provide a decision mechanism to offer optimal values for both QoE while keeping expenditures of the service as lowest as possible.

5.1 End-user’s QoE

The starting block of the conclusive evaluation, “single user’s QoE” from v∈V running on m∈M (where v refers to single Network Function Virtualization, V represents all NFV clusters, m refers to physical machine and M represents all physical machine cluster) is represented as a function of following statistics Tdur (user’s total watch duration for the content), Brate (average bitrate of the stream), S (number of stalls), Sduration (time spent during stalls), tlatency (initial content buffering duration).

$$ {Q}_u\left(v,m\right)=\mathrm{Q}\left({T}_{dur}, Brate,S,{S}_{dur},{t}_{latency}\right) $$
(3)

Figure 3 illustrates the interactions of the Tiers for an online video delivery system that consists of Origin, CDN, Edge CDN Nodes and NFV instances. Latency and throughput between any two tiers is given with “L(x1, x2)” and “B(x1, x2)” correspondingly.

Fig. 3
figure 3

CDNaaS system model

Storage capacity of any peripheral is denoted by” S(x)”. RM(v, m) and RC(v, m) denotes required memory and computational power accordingly for a virtual machine “v” to run on a physical machine “m”. CM(m) and CC(m) express the total memory and computational capacity of physical machine “m”. N(v, m) provides the number of virtual machines running on physical machine “m”. “x” values in functions L(), B() and S() can be substituted for any of the layers, end-users (u), network peripherals (p), edge cache node (e), CDN (c), origin (r).

5.2 Network layer, goodput and latency

Kleinrock [20] has formulated the total external traffic that is carried by a network as γ in Eq. 4 where γjk is the messages arrive from a Poisson process on origin node j headed to node k;

$$ \gamma =\sum \limits_{j,k=1}^N{\gamma}_{jk}\kern0.5em $$
(4)

There have been many works [2, 14] which states that, video flows follow Poisson process. Internal traffic carried can be described as Eq. 5 where λi refer to the traffic carried by each peripheral.

$$ \lambda =\sum \limits_{i=1}^N{\lambda}_i $$
(5)

The number of hops h to transmit a message in internal network is declared as Eq. 6.

$$ h=\lambda /\gamma $$
(6)

And finally, L is the mean delay of all messages across a cluster of network layer (where Li is the delay of a single network function) as Eq. 7;

$$ L=\sum \limits_{i=1}^M\frac{\lambda_i}{\gamma }{L}_i $$
(7)

For the video delivery, the average latency term L (x1, x2) can be generalized as the latency between any two layers.

$$ L\left({x}_2,{x}_1\right)=\sum \limits_{i=1}^M\frac{{\uplambda_{x_{1,2}}}_i}{\gamma_{x_{1,2}}}{L}_{{x_{1,2}}_i} $$
(8)

In general, describing latency for each node for each physical device as Li is insurmountable. For simplicity, the latency between end-user and edge cache nodes is defined as the sum of the latency between each consecutive layer, from edge to network and from network to user.

$$ L\left(u,e\right)=L\left(u,p\right)+L\left(p,e\right) $$
(9)

Using a similar approach, the real-time throughput B(u, p, t) that is served to a cluster of users u∈U distributed in g∈G geographical regions can be defined as Eq. 10, where R(u, g, t) is the amount of traffic that is requested by the user u located in g at instant t. Summation in Eq. 10, traverses through all ∀U (for all users) that are located in ∀G (for all geographical regions) which corresponds to the total throughput of the platform B(u, p, t).

$$ B\left(u,p,t\right)=\sum \limits_{j=1}^G\sum \limits_{i=1}^UR\left({u}_i,{g}_j,t\right) $$
(10)

5.3 CDN and online caching

Contrary to a common misconception, CDNs are not only big hybrid database-network like entities that hold the video data and unicast to subscribers like a traditional single server service. In fact, CDNs provide highly sophisticated caching mechanisms [2] to carry out edge computing functionality and allocate copies of the content over their geographically distributed edge nodes [18]. Whenever there is a demand for the service of any content, edge cache nodes are activated through a process called “warming” [23] where copies of the content are cached from origin to intermediate and eventually towards the edge nodes. M. Ruiz et al. have discussed CDN optimization problem [26] while minimizing the CDN costs by dynamically reconfiguring the CDN. Also, T. M. K. Roeder et al. have discussed [25] the optimization of ISPs and CDN collaboration through cache miss simulations. Nevertheless, none of these works provided a generalized formulation for CDN latency and bandwidth approximation. Though, Z. Chen et al. have approached the question as a cache-aided throughput calculation [8] where a self-request throughput without cache aid can still be modelled as sum of all requests as it was described in Eq. 11. Still, there is a chance that the requested content has already been cached in edge nodes. An additional probability component for cache collision will be representing edge and intermediate cache existence. This is expressed with term p (u, k, S(e)) where u is the number of users, k is the cache miss performance and S(e) is the total number of content that can be stored on edge nodes, eventually storage capacity of edge CDN. As the number of users u∈U requesting content increases, with a better cache capable CDN (with a high cache miss performance k index), the p(u,S(e)) value will be less than 1 resulting Eq. 12 to have a lower value. If the CDN has a low cache miss performance, then p approximates to 1 which will be equivalent to a non-caching capable CDN.

As an effect, the cache-aided throughput depends on the throughput that is demanded from origin to edge nodes.

$$ p\left(u,S(e)\right)=1-{e}^{k\frac{-u}{2S(e)}} $$
(11)
$$ B\left(r,e,t\right)=\sum \limits_{j=1}^G\sum \limits_{i=1}^UR\left({u}_i,{g}_j,t\right)\kern0.5em p\left(u,S(e)\right) $$
(12)

Latency for CDN can be modelled as the sum of latencies from origin to edge nodes via core CDN. Without loss of generality, latency from origin to core CDN is neglected [30] as latency is not critical in core networks [23]. Latency from core CDN to edge CDN nodes can be formulized as the probability of cache existence on edge nodes multiplied by the cost of number of hops through intermediate nodes. In Eqs. 13 to 15, the tiers of online video delivery system are represented as following: edge cache node (e), CDN (c), origin (r).

$$ L\left(e,r\right)=L\left(e,c\right)+L\left(c,r\right) $$
(13)
$$ L\left(c,e\right)=\sum \limits_{i=1}^M\frac{\lambda_i}{\gamma }{L}_i\ p\left(u,S(e)\right) $$
(14)
$$ L\left(r,c\right)\approx 0 $$
(15)

5.4 NFV resource analysis and impact on QoE

Each physical server m∈Μ has a capability to run “N (v, m)” number of NFVs where v∈V. The amount of required CPU resource for NFV that runs on m∈Μ to serve user u∈U at instant t is RC (v, m, u, t). The amount of required memory for NFV that runs on m∈Μ to serve user u∈U at instant t is RM (v, m, u, t). Physical server m∈Μ have a maximum CPU processing capacity of CC(m) and memory capacity of CM (m). Total CPU capacity of the network operator is Cc and total memory capacity of the system is Cm.

$$ {\mathrm{C}}_M\left(\mathrm{m}\right)=\sum \limits_{i=0}^{N\left(v,m\right)}{R}_M\left(v,m,{u}_i,t\right)\kern0.5em $$
(16)
$$ {\mathrm{C}}_C\left(\mathrm{m}\right)=\sum \limits_{i=0}^{N\left(v,m\right)}{R}_C\left(v,m,{u}_i,t\right) $$
(17)
$$ {\mathrm{C}}_M=\sum \limits_{i=0}^M{\sum}_{j=0}^{N\left(v,m\right)}{R}_M\left(v,{m}_i,{u}_j,t\right) $$
(18)
$$ {\mathrm{C}}_C=\sum \limits_{i=0}^M{\sum}_{j=0}^{N\left(v,m\right)}{R}_C\left(v,{m}_i,{u}_j,t\right) $$
(19)

Real-time transcoding capability and the performance of a live streaming system have impact on end-users QoE [14, 25]. Any disruption or shortage of resources results directly deterioration of service quality. Single user’s QoE is described with Eq. 1. The cluster of users u∈U that are getting service from the NFV υ∈V and this NFV runs on a physical machine m∈Μ. The QoE for υ can be defined as Eq. 20 where a homogeneous distribution is assumed across the subscriber privileges that results in guaranteed equal service reliability per each user.

$$ {Q}_{\upupsilon}(t)=\sum \limits_{u=1}^U\frac{Q_u\left(v,m,t\right)}{U},u\in \mathrm{U} $$
(20)

Network operator’s QoE for NFV capacity is the sum of the QoE of NFVs ∀υ ∈V.

$$ {\mathrm{Q}}_N(t)=\sum \limits_{\forall \upupsilon \in \mathrm{V}}^{N\left(v,m\right)}\sum \limits_{\forall \mathrm{u}\in \mathrm{U}}^U\frac{{\mathrm{Q}}_u\left(v,m,t\right)}{U} $$
(21)

However, QoE is a subjective quality measurement, rather than considering the delta between QN(t1) and QN(t2) at two different moments, provides a better comparable understanding of the service quality.

$$ \Delta {Q}_N={Q}_N\left({t}_2\right)-{Q}_N\left({t}_1\right) $$
(22)

5.5 Cost of the operation

There are three main expense estimation arguments regarding the CDNaaS cost modelling; storage, latency and computational goodput.

Most of the cloud services [4, 6, 17] advertise discount rates in different tiers proportional to the requested processing power capacity. According to this assumption, storage expenses of the system, PS can be modelled as an inverse proportional function where PCg is the unit cost for unicasting content to user u∈U living in region g∈G.

$$ {P}_S=\sum \limits_{\forall \mathrm{g}\in \mathrm{G}}^G\sum \limits_{\forall \mathrm{u}\in \mathrm{U}}^U\frac{P_{Cg}}{u} $$
(23)

6 Cloud Resource and Cost Constraınts

Primary motivation of an online video delivery platform is to provide QoE at highest rate possible while keeping the expenses of cloud resources, NFV and SDN at minimum. Following constraints are necessary for fulfilling the constraints of an ideal delivery system;

The throughput capability of Network layer must be greater than the requested traffic by user u ϵ U.

$$ B\left(p,u,t\right)>\sum \limits_{j=1}^G\sum \limits_{i=1}^UR\left({u}_i,{g}_j,t\right) $$
(24)

The average service latency is formulized in Eq. 23 from NFV v∈V to users u∈U via origin (o), CDN(c), edge CDN(e), SDN(p) must be less than ε.

$$ L\left(u,r\right)=L\left(u,p\right)+L\left(p,e\right)+L\left(e,c\right)+L\left(c,r\right)+L\left(r,v\right)\kern0.5em \approx \kern0.5em 0 $$
(25)

CDN throughput must be greater than the user requests multiplied by the probability of existence of the cache of the content in CDN.

$$ B\left(r,e,t\right)>\sum \limits_{j=1}^G\sum \limits_{i=1}^UR\left({u}_i,{g}_j,t\right)\ p\left(u,S(e)\right) $$
(26)

Total CPU and memory capacity of the physical servers must be greater than the amount of required CPU resource for NFV that runs on m∈Μ to serve user u∈U at instant t is RC (v, m, u, t) and the amount of required memory for NFV that runs on m∈Μ to serve user u∈U at instant t is RM(v,m,u,t).

$$ {\mathrm{C}}_M>\sum \limits_{i=0}^M{\sum}_{j=0}^{N\left(v,m\right)}{R}_M\left(v,m,u,t\right) $$
(27)
$$ {\mathrm{C}}_C>\sum \limits_{i=0}^M{\sum}_{j=0}^{N\left(v,m\right)}{R}_C\left(v,m,u,t\right) $$
(28)

And ultimately, the QoE of the system QN(t) must be kept at maximum, while minimizing the cost of the system Ps.

$$ \max \sum \limits_{\forall \upupsilon \in \mathrm{V}}^{N\left(v,m\right)}\sum \limits_{\forall \mathrm{u}\in \mathrm{U}}^n\frac{{\mathrm{Q}}_v\left(v,m,t\right)}{n} $$
(29)
$$ \min \sum \limits_{\forall \mathrm{g}\in \mathrm{G}}^G\sum \limits_{\forall \mathrm{u}\in \mathrm{U}}^U\frac{P_C}{u} $$
(30)

7 Decision of Multı-Cdn switching system

This section presents a selective algorithm to decide when to switch between CDNs regarding the QoE/Cost/Cache success rate optimization problem which grounds the mathematical analysis that was presented in the previous section. Equation 34 provide the association of PC & goodput to QN(t) and in a given window within the expected budget, goodput can be estimated for the expected QN(t) for the service.

figure d

8 Simulatıon results

Without loss of generality, we assume that the content owner associates with three different CDN operators and intends to operate within a multi CDN environment where most optimum choice is to maximize QoE and minimize costs while establishing an agile, scalable and flexible network.

Based on real-life data [7] that is originated from Broadcasters’ Audience Research Board (BARB), with three different scenarios 50 k, 150 k, 300 k users intend to use the service across the city and there are three different CDNs available with different edge, caching capabilities and conclusively costs.

Primary objective of this simulation is to detect the changes in user demand and formulize a methodology to solve the QoE, CDN cost and NFV performance optimization problem (Figs. 4, 5 and 6).

Fig. 4
figure 4

Distribution of users, CDNs and Edge Nodes across the city for the scenario. Each group of people in the map stands for 10 k users and edge machines represents 10VMs (Virtual Machine) serving as Edge CDN nodes

Fig. 5
figure 5

Number of users vs Time in a 24 h online streaming session [7]. The number of users varies between day and evening, and reaches a peak of 50 k, 150 k and 300 k on three different scenarios at prime time

Fig. 6
figure 6

Bandwidth usage at both intermediate and edge vs time

8.1 Scenario parameters

Parameters related to the scenario are as following: geographical regions G = 5, all users U = {20 k, 40 k, 70 k, 30 k, 20 k}, S(e) = 10 live channels, PCg-CDN1 = 0.1£, PCg-CDN2 = 0.15£ and PCg-CDN3 = 0.17£ per Gigabyte. Cache usage performance of CDN1 is k = 0.03, for CDN2 k = 0.02 and for CDN3 k = 0.15 where number of VMs running for CDN1 is 3, for CDN2 is 5 and for CDN3 is 7. CM required memory for CDN1 transcoding operations is 100 gb, for CDN2 is 150 gb and for CDN3 is 170 gb computational power (required VM runtime) is 100 h for CDN1, 80 h for CDN2 and 65 h for CDN3 to supply a 24-h streaming activity.

The change in the number of users causes an impact on the goodput of the intermediate and edge nodes. At peak times, the load balancers try to redirect the users to edge computing nodes, however as CDNs differ in terms of caching capability and success, their performance also varies on different circumstances. In terms of CDN deployment, three different scenarios have been considered with different properties in terms of caching quality and cost efficiency.

8.2 Cost-efficient CDN

A cost-efficient CDN provides an acceptable yet an intermediate service quality with adequate scalable and distributed caching capability. A non-zero, fluctuating average latency (L(u,r) > 0) and deficient computational power, NFV memory and throughput to meet user requests on peak demand durations are typical. Yet, the costs of these cloud services are budget friendly when compared to high end CDN services. For a cost efficient CDN, QoE is not the primary concern, yet, delivery is optimized to provide the best within available system resources.

$$ {\displaystyle \begin{array}{c}L\left(u,r\right)>0\\ {}B\left(r,e,t\right)<{\sum}_{j=1}^G{\sum}_{i=1}^UR\left({u}_i,{g}_j,t\right)\ p\left(u,S(e)\right)\\ {}\begin{array}{c}{\mathrm{C}}_M<{\sum}_{i=1}^M{\sum}_{k=1}^{N\left(v,m\right)}{R}_M\left({v}_k,{m}_i,u,t\right)\\ {}{\mathrm{C}}_C<{\sum}_{i=1}^M{\sum}_{k=1}^{N\left(v,m\right)}{R}_C\left({v}_k,{m}_i,u,t\right)\\ {}\begin{array}{c}\operatorname{Min}{\sum}_{\forall \upupsilon \in \mathrm{V}}^{N\left(v,m\right)}{\sum}_{\forall \mathrm{u}\in \mathrm{U}}^U\frac{{\mathrm{Q}}_u\left(v,m,t\right)}{U}\\ {}\mathrm{Low}{\sum}_{\forall \mathrm{g}\in \mathrm{G}}^G{\sum}_{\forall \mathrm{u}\in \mathrm{U}}^U\frac{P_{Cg}}{U}\end{array}\end{array}\end{array}} $$
(31)

8.3 Average Cost CDN

The primary attitude of an average cost CDN is to offer a semi-premium equivalent service while still being in a budget friendly fashion. Stalls and buffering incidents during watch sessions are intermittently observed and performance of video delivery system generally depend on mobile or fiber network performance. Users are commonly content with the received service and aptly, average perceived QoE is better than cost-efficient CDNs.

$$ {\displaystyle \begin{array}{c}L\left(u,r\right)\approx 0\\ {}B\left(r,e,t\right)<{\sum}_{j=1}^G{\sum}_{i=1}^UR\left({u}_i,{g}_j,t\right)\ p\left(u,S(e)\right)\\ {}\begin{array}{c}{\mathrm{C}}_M\gtrsim {\sum}_{i=1}^M{\sum}_{k=1}^{N\left(v,m\right)}{R}_M\left({v}_k,{m}_i,u,t\right)\\ {}{\mathrm{C}}_C\gtrsim {\sum}_{i=1}^M{\sum}_{k=1}^{N\left(v,m\right)}{R}_C\left({v}_k,{m}_i,u,t\right)\\ {}\begin{array}{c}\mathrm{Average}{\sum}_{\forall \upupsilon \in \mathrm{G}}^{N\left(v,m\right)}{\sum}_{\forall \mathrm{u}\in \mathrm{U}}^U\frac{{\mathrm{Q}}_u\left(v,m,t\right)}{U}\\ {}\mathrm{Average}{\sum}_{\forall \mathrm{g}\in \mathrm{G}}^G{\sum}_{\forall \mathrm{u}\in \mathrm{U}}^U\frac{P_{Cg}}{U}\end{array}\end{array}\end{array}} $$
(32)

8.4 Expensive CDN

A typical expensive CDN guarantees a very low (or zero) latency throughout its network and edge nodes. Distributed, scalable and durable VM execution and cloud service capability meets the demand from the users at all times to perform transcoding, caching and storage facilities. User QoE and evaluated NFV, SDN and cloud QoE generally gives high satisfactory performance and results. Obviously, they require more budget to operate when compared to cost-friendly CDNs.

$$ {\displaystyle \begin{array}{c}L\left(u,r\right)\approx 0\\ {}B\left(r,e,t\right)<{\sum}_{j=1}^G{\sum}_{i=1}^UR\left({u}_i,{g}_j,t\right)\ p\left(u,S(e)\right)\\ {}\begin{array}{c}{\mathrm{C}}_M>{\sum}_{i=1}^M{\sum}_{k=1}^{N\left(v,m\right)}{R}_M\left({v}_k,{m}_i,u,t\right)\\ {}{\mathrm{C}}_C>{\sum}_{i=1}^M{\sum}_{k=1}^{N\left(v,m\right)}{R}_C\left({v}_k,{m}_i,u,t\right)\\ {}\begin{array}{c}\operatorname{Max}{\sum}_{\forall \upupsilon \in \mathrm{V}}^{N\left(v,m\right)}{\sum}_{\forall \mathrm{u}\in \mathrm{U}}^U\frac{{\mathrm{Q}}_u\left(v,m,t\right)}{U}\\ {}\mathrm{High}{\sum}_{\forall \mathrm{g}\in \mathrm{G}}^G{\sum}_{\forall \mathrm{u}\in \mathrm{U}}^U\frac{P_{Cg}}{U}\end{array}\end{array}\end{array}} $$
(33)

There are several different configurations available for any CDN deployment where sensitivity of edge cache nodes can be tuned which will result in reduced CDN costs. In these cases, the demand for throughput from users might not be fulfilled at all times. Cost efficient CDN setups may cause degradation on content delivery quality and eventually system QoE. In today’s world, all operators prioritize their users’ throughput by taking into account their subscription and geographical location to minimize operational costs.

Cost efficient CDN1 uses fewer number of edge nodes and as the number of users increase, intermediate cache tries to serve the increased demand. However, as the CDN1 nodes have limited capability and cannot scale as well as CDN2 and CDN3, the bandwidth requested by the users is not met. This causes degradation on QoE as presented on Fig. 7.

Fig. 7
figure 7

Normalized QoE vs time

Expensive CDN3 have better scaling and edge node distribution capabilities and meets throughput request well, even on peak hours. The quality of edge node usage is noticeable with the ratio of Intermediate to Edge CDN node usage.

Employing more edge cache nodes during high demand times with increased proximity to users are the key action to establish a well-structured CDN. However, this increase the cost of deployment and the content provider should make a choice between high QoE and lower cost CDN. In this paper, we focus on how, when and how to switch between a multi-CDN system while keeping the costs lowest and QoE as high as possible (Figs. 8 and 9).

Fig. 8
figure 8

CDN Costs vs Time

Fig. 9
figure 9

Goodput/QoE/Costs Model for a CDN Deployment

Obviously, CDN3’s better scaling and edge node usage capability has a cost much higher than the other providers. Generally, providing best QoE for users seems to be the primary objective of an online video service [28]. However, on many cases, meeting the budgets is the actual priority for many operators.

8.5 QoE/Costs/Efficiency model for CDN deployments

This section presents how goodput, QoE and costs changes over time for different CDN deployments. As a deduction, a time invariant model is proposed as a base model for CDN deployment where the dimensions correspond to QoE, costs and goodput efficiency of a CDN. This model can provide a basis for any deployment that requires the calculation of budget vs throughput and user demand in case of an expected service quality.

The model that relates CDN constraints with Eq. 34 have the following coefficients: p00 = 1.15, p10 = 2.53, p01 = 0.67, p11 = 0.53, p20 = 1.32, p02 = 0.89, p21 = 1.42, p12 = 0.54, p30 = 0.43, p31 = 2.04, p32 = 0.19 for Goodput (a) and Costs (μ).

$$ \mathrm{QoE}\left(\mathrm{Goodput},\mathrm{Costs}\right)=\sum \limits_{k=0,}^3\sum \limits_{i=0}^2{p}_{ij}.{a}^k.{\upmu}^i $$
(34)
$$ \mathrm{QoE}\left(\mathrm{a},\upmu \right)={p}_{00}+{p}_{10}.a+{p}_{01}.\upmu +{p}_{11}.a.\upmu +{p}_{20}.{a}^2+{p}_{02}.{\upmu}^2+{p}_{21}.{a}^2.c+{p}_{12}.a.{\upmu}^2+{p}_{30}.{a}^3+{p}_{31}.{a}^3.\upmu +{p}_{32}.{a}^3.{\upmu}^2 $$
(35)

Equations 33 and 34 will be a guide to any content provider or online video delivery platform, to estimate their costs and deployment of intermediate-edge VM node distribution strategy and overall user QoE. Obviously, it should be considered due to the developing technology [1], the costs for the throughput tend to fall where same (or more) amount of data can be streamed for a smaller budget when compared 2017 rates to 2016 rates [9, 15]. The estimations and simulations that are advertised in this work reflect 2017 cloud resource rates for the main CDN suppliers [16, 24, 27].

9 Conclusıons

In this work, a generalized mathematical model to calculate the success rate of different tiers of online video delivery system is presented. The success of online streaming relies on maximizing customer satisfaction, minimizing online deployment costs while using the distributed nodes efficiently that results on maximizing goodput and optimizing latency. In section 6, a model for switching between multi-CDN has been proposed where QoE, CDN costs and usage of intermediate and edge nodes are adjusted. An algorithm to indicate the correct moment to switch between CDNs is also presented which will enhance QoE and budget relationship of an online video delivery platform.