Paper PDF is available: https://dl.acm.org/citation.cfm?id=3195871
Accepted and presented at 5th Workshop on CrossCloud Infrastructures & Platforms, EuroSys Conference, April 2018
N
Nitinder MohanPost doctoral fellow at Technical University of Munich
1. MUTE: MUlti-Tier Edge
networks
5th Workshop on CrossCloud Infrastructures & Platforms
(CrossCloud’2018) Porto, Portugal
Alessio Silvestro△✣ Nitinder Mohan✼✣ Jussi Kangasharju✼ Fabian Schneider△
Xiaoming Fu✝
△NEC Labs Europe ✼University of Helsinki ✝University of Göttingen
CleanSky - EU FP7 Marie Curie Initial Training Network✣Joint First Authors
2. Rise of Edge Clouds
Network
DatacenterEdge
Server
User
Edge Cloud: Small-scale server(s)
deployed at network edge to compute user
data
Motivation:
2
3. Rise of Edge Clouds
Network
DatacenterEdge
Server
User
Edge Cloud: Small-scale server(s)
deployed at network edge to compute user
data
Motivation:
üDecreased latency and network traffic
2
4. Rise of Edge Clouds
Network
Edge Cloud: Small-scale server(s)
deployed at network edge to compute user
data
Motivation:
üDecreased latency and network traffic
üComputing data of local relevance
2
5. Rise of Edge Clouds
Network
Edge Cloud: Small-scale server(s)
deployed at network edge to compute user
data
Motivation:
üDecreased latency and network traffic
üComputing data of local relevance
üIdeal hosts for on-path vNFs
(unlike dedicated middleboxes)
2
9. Placing SFC on Edge
ES 1 ES 2 ES 3
ES 1 ES 2
Requirement:
Client to Cloud link must be
composed of two service functions
Firewall Monitor
3
10. Placing SFC on Edge
ES 1 ES 2 ES 3
ES 1 ES 2
Requirement:
Client to Cloud link must be
composed of two service functions
Objective:
Select two Edge Servers with least
network and processing cost
Firewall Monitor
3
11. Placing SFC on Edge
ES 1 ES 2 ES 3
ES 1 ES 2
SFC 1Objective:
Select two Edge Servers with least
network and processing cost
3
12. Placing SFC on Edge
ES 1 ES 2 ES 3
ES 1 ES 2
SFC 1
SFC 2
Objective:
Select two Edge Servers with least
network and processing cost
3
13. Selecting Optimal Edge Servers
ES 1 ES 2 ES 3
ES 1 ES 2
? ?
Q. How do you select which Edge
Server will host the service?
3
14. Selecting Optimal Edge Servers
ESA 1 ESA 2 ESA 3
ESB 1 ESB 1
Existing approaches consider all Edge Servers
in a single pool
4
15. Selecting Optimal Edge Servers
Existing approaches consider all Edge Servers
in a single pool
Selection Algorithm (Iterative) ESA 1 ESA 2 ESA 3
ESB 1 ESB 1
selectedServer ← NONE
leastproc, leastnetw ← client/service provider requirements
for each S in Services do
for each ES in EdgePlatform do
Calculate ESproc
Calculate ESNetw
if ESproc < leastproc and ESnetw < leastnetw do
selectedServer ← ES
4
16. Selecting Optimal Edge Servers: Problem!
selectedServer ← NONE
leastproc, leastnetw ← client/service provider requirements
for each S in Services do
for each ES in EdgePlatform do
Calculate ESproc
Calculate ESNetw
if ESproc < leastproc and ESnetw < leastnetw do
selectedServer ← ES
Place " services on # servers → NP-hard
5
17. Selecting Optimal Edge Servers: Problem!
selectedServer ← NONE
leastproc, leastnetw ← client/service provider requirements
for each S in Services do
for each ES in EdgePlatform do
Calculate ESproc
Calculate ESNetw
if ESproc < leastproc and ESnetw < leastnetw do
selectedServer ← ES
No Scalability!
Place " services on # servers → NP-hard
5
34. Service Placement on Edge
1. Service Placement Terminology
2. Service Operation Cost Optimization
3. Network Delay Optimization
4. Tier-based Optimization
10
35. Service Placement on Edge
1. Service Placement Terminology
2. Service Operation Cost Optimization
3. Network Delay Optimization
4. Tier-based Optimization
For details on optimizations 2 and 3, please refer to the paper
10
36. Service Placement on Edge
Tier-based Optimization
Exploits the assumption that
lower tiers have smaller
delay to clients!
selectedServer ← NONE
leastnetw ← NONE
for each t in tiers do
if '()*
+,
≥ (+, and '()*
./01
≥ (./01 do
leastnetw ← ∞
for each ES in t do
if '(*
+,
≥ (+, and '(*
./01
≥ (./01 do
Calculate ESnetw
if '(56*, < 89:;<56*, do
leastnetw ← ESnetw
selectedServer ← ES
11
37. Service Placement on Edge
Tier-based Optimization
selectedServer ← NONE
leastnetw ← NONE
for each t in tiers do
if '()*
+,
≥ (+, and '()*
./01
≥ (./01 do
leastnetw ← ∞
for each ES in t do
if '(*
+,
≥ (+, and '(*
./01
≥ (./01 do
Calculate ESnetw
if '(56*, < 89:;<56*, do
leastnetw ← ESnetw
selectedServer ← ES
Check if Tier meets
service bandwidth and
processing requirements
11
38. Service Placement on Edge
Tier-based Optimization
selectedServer ← NONE
leastnetw ← NONE
for each t in tiers do
if '()*
+,
≥ (+, and '()*
./01
≥ (./01 do
leastnetw ← ∞
for each ES in t do
if '(*
+,
≥ (+, and '(*
./01
≥ (./01 do
Calculate ESnetw
if '(56*, < 89:;<56*, do
leastnetw ← ESnetw
selectedServer ← ES
Filter Edge Servers in
the Tier which can
support the service
requirements
11
39. Service Placement on Edge
Tier-based Optimization
selectedServer ← NONE
leastnetw ← NONE
for each t in tiers do
if '()*
+,
≥ (+, and '()*
./01
≥ (./01 do
leastnetw ← ∞
for each ES in t do
if '(*
+,
≥ (+, and '(*
./01
≥ (./01 do
Calculate ESnetw
if '(56*, < 89:;<56*, do
leastnetw ← ESnetw
selectedServer ← ES
From filtered list, select
Edge Server with least
network delay to client
11
41. Benefits of Tier-Optimization
1. Approximation based algorithm → handles scalability
2. Optimization problem only considers subset of servers
→ faster operation
12
42. Benefits of Tier-Optimization
1. Approximation based algorithm → handles scalability
2. Optimization problem only considers subset of servers
→ faster operation
3. Demarcation between optimization variables
i. Processing Cost and Bandwidth → Best-Fit optimization
ii. Networking Cost → Intra-Tier minimization
12
44. Evaluation
Evaluated on Python simulator with RocketFuel topologies
Parameters:
1. 61 network graphs of 25-115 nodes
2. Upto 100 edge servers deployed on network topology graphs
leading to ≈6000 edge networks
3. Edge servers are clustered in upto 4 tiers
4. Processing and bandwidth capability based on tier membership
14
45. Evaluation
Compared Mute with three other placement algorithms
1. Network Optimizing Server Selection (Netw):
iterative search of edge server with least network cost of service
deployment
2. Processing Optimizing Server Selection (Proc):
iterative search of edge server with least associated processing cost of
deploying service
3. Edge-Network Optimizing Server Selection (EdgeNetw):
iterative search for edge server with least network cost to client. The
algorithm is unaware of multi-tier architecture
15
47. Evaluation
Objective:
Find an edge server !" for hosting service " with processing
requirement "#$%&
and bandwidth requirement "'(
1. Network cost of selected !" to client
2. Processing cost of selected !" to client
3. Time taken by placement algorithms to find !"
16
57. Summary
1. MUTE is a multi-tier edge server organization mechanism which
enables edge platform providers to manage the servers
2. MUTE categorizes servers based on network delay from client
3. The resulting service deployment optimization efficiently picks
edge servers based on requirements
4. Our evaluations via simulations on RocketFuel topologies show
i. MUTE optimization results in 66% reduction in network delay
while incurring 20% processing cost overhead
ii. MUTE optimization reduces computation time by upto 50%
20
60. Rise of Edge Clouds
Network
60
Edge Cloud: Small-scale server(s)
deployed at network edge to compute user
data
Motivation:
üDecreased latency and network traffic
üComputing data of local relevance
üIdeal hosts for on-path vNFs
(unlike dedicated middleboxes)
61. Rise of Edge Clouds
Network
61
What?
Where?
How many?
Edge Cloud: Small-scale server(s)
deployed at network edge to compute user
data
Motivation:
üDecreased latency and network traffic
üComputing data of local relevance
üIdeal hosts for on-path vNFs
(unlike dedicated middleboxes)
62. Edge Cloud Models
Hong, K., Lillethun, D., Ramachandran, U., Ottenwälder, B., & Koldehofe, B. (2013). Mobile fog. Proceedings of the Second ACM SIGCOMM Workshop on Mobile Cloud Computing - MCC ’13
Cloud
Fog
What?:
Why?:
How many?:
Network augmented servers
Mobile communication
Medium
62
63. Edge Cloud Models
Cloud
Fog
Lopez, P. G., Montresor, A., Epema, D., Iamnitchi, A., Felber, P., & Riviere, E. (2015). Edge-centric Computing : Vision and Challenges. ACM CCR, 45(5), 37–42.
What?:
Why?:
How many?:
Network augmented servers
Mobile communication
Medium
What?:
Why?:
How many?:
Compute devices
IoT+User tasks
Large
63
64. Edge Cloud Models
Cloud
Fog Data
Store
Fog
Edge
What?:
Why?:
How many?:
Network augmented servers
Mobile communication
Medium
What?:
Why?:
How many?:
Compute devices
IoT+User tasks
Large
What?:
Why?:
How many?:
Compute+Network
Hybrid cloud tasks
Very large
N. Mohan and J. Kangasharju, "Edge-Fog cloud: A distributed cloud for Internet of Things computations," 2016 Cloudification of the Internet of Things (CIoT), pp. 1-6.
64
67. Service Placement
I. Optimizing Operational Cost
! " = $
%&'
(
$
)&'
*
+%
,-./
0+)
,-./ 0+)
/
1%)
1%) = 2
1,
0,
if +% deployed on 0+)
otherwise
67
68. Service Placement
I. Optimizing Operational Cost
! " = $
%&'
(
$
)&'
*
+%
,-./
0+)
,-./ 0+)
/
1%)
Cost for processing the service
1%) = 2
1,
0,
if +% deployed on 0+)
otherwise
68
69. Service Placement
I. Optimizing Operational Cost
! " = $
%&'
(
$
)&'
*
+%
,-./
0+)
,-./ 0+)
/
1%)
Cost for processing the service
Cost for deploying the service
1%) = 2
1,
0,
if +% deployed on 0+)
otherwise
69
71. Service Placement
II. Optimizing Network Delay (End-to-End)
! "# = %
&'(
)
*+,-- ., 0"& + *+,-- 0"&2(, 0"& + *+,-- 0"&, .345* 6&#
Delay from client to Edge Server
*subject to bandwidth constraints
71
72. Service Placement
II. Optimizing Network Delay (End-to-End)
! "# = %
&'(
)
*+,-- ., 0"& + *+,-- 0"&2(, 0"& + *+,-- 0"&, .345* 6&#
Delay from client to Edge Server
Delay from previous service in SFC
*subject to bandwidth constraints
72
73. Service Placement
II. Optimizing Network Delay (End-to-End)
! "# = %
&'(
)
*+,-- ., 0"& + *+,-- 0"&2(, 0"& + *+,-- 0"&, .345* 6&#
Delay from client to Edge Server
Delay from previous service in SFC
Delay from Edge
Server to cloud
*subject to bandwidth constraints
73