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
Rise of Edge Clouds
Network
DatacenterEdge
Server
User
Edge Cloud: Small-scale server(s)
deployed at network edge to compute user
data
Motivation:
2
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
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
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
Placing SFC on Edge
3
Placing SFC on Edge
3
Placing SFC on Edge
ES 1 ES 2 ES 3
ES 1 ES 2
3
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
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
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
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
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
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
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
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
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
MUTE: MUlti-Tier Edge
Edge Platform Perspective
Client
Server ID: 1
Processing: 3
Bandwidth: 25
Server ID: 2
Processing: 4
Bandwidth: 20
Server ID: 3
Processing: 6
Bandwidth: 30
Edge Platform
Cloud
7
Edge Platform Perspective
Client
Server ID: 1
Processing: 3
Bandwidth: 25
Server ID: 2
Processing: 4
Bandwidth: 20
Server ID: 3
Processing: 6
Bandwidth: 30
Edge Platform
Delay= 3
Delay = 2
Delay =
6
Delay = 5
Delay = 6
Delay = 2 Cloud
7
Edge Platform Perspective
Client
Server ID: 1
Processing: 3
Bandwidth: 25
Server ID: 2
Processing: 4
Bandwidth: 20
Server ID: 3
Processing: 6
Bandwidth: 30
Edge Platform
Delay= 3
Delay = 2
Delay =
6
Delay = 5
Delay = 6
Delay = 2
End-to-End delay = 8ms
Cloud
7
Edge Platform Perspective
Client Tier 1
Tier 2
Server ID: 1
Processing: 3
Bandwidth: 25
Server ID: 2
Processing: 4
Bandwidth: 20
Server ID: 3
Processing: 6
Bandwidth: 30
Edge Platform
Delay= 3
Delay = 2
Delay =
6
Delay = 5
Delay = 6
Delay = 2 Cloud
Tier ID: 1
Tier ID: 2
Tier ID: 1
7
Architecture
ClientClientClient
EdgePlatform
Cloud
Platform
CS1
CS2 CS3
8
Architecture
ClientClientClient
EdgePlatform
Cloud
Platform
CS1
CS2 CS3
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
8
Architecture
ClientClientClient
EdgePlatform
CS
1
CS
2
CS
n
CS
1
CS
2
CS
n
Cloud
Platform
CS1
CS2 CS3
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
8
Architecture
ClientClientClient
EdgePlatform
CS
1
CS
2
CS
n
CS
1
CS
2
CS
n
Cloud
Platform
CS1
CS2 CS3
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
8
Management
Plane
Architecture
ClientClientClient
EdgePlatform
CS
1
CS
2
CS
n
CS
1
CS
2
CS
n
Cloud
Platform
CS1
CS2 CS3
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
8
Management
Plane
Architecture
ClientClientClient
EdgePlatform
CS
1
CS
2
CS
n
CS
1
CS
2
CS
n
Cloud
Platform
CS1
CS2 CS3
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
Cloud
Service
Provider
8
Management
Plane
Architecture
ClientClientClient
EdgePlatform
CS
1
CS
2
CS
n
CS
1
CS
2
CS
n
Cloud
Platform
CS1
CS2 CS3
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
Cloud
Service
Provider
Edge
Service
Provider
8
Edge Tier Grouping Characteristics
EdgePlatform
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
NetworkDelay(Edge)
9
Edge Tier Grouping Characteristics
EdgePlatform
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
NetworkDelay(Edge)
ProcessingPower
9
Edge Tier Grouping Characteristics
EdgePlatform
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
NetworkDelay(Edge)
UserBandwidth
ProcessingPower
9
Edge Tier Grouping Characteristics
EdgePlatform
Tier1
ES#
#
ES$
#ES%
#
Tier2
ES#
% ES&
%
TierN
ES#
'
ES%
'
ES(
'
NetworkDelay(Edge)
UserBandwidth
ProcessingPower
ServerDensity
9
Service Placement on Edge
1. Service Placement Terminology
2. Service Operation Cost Optimization
3. Network Delay Optimization
4. Tier-based Optimization
10
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
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
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
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
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
Benefits of Tier-Optimization
1. Approximation based algorithm → handles scalability
12
Benefits of Tier-Optimization
1. Approximation based algorithm → handles scalability
2. Optimization problem only considers subset of servers
→ faster operation
12
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
Evaluation
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
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
Evaluation
Objective:
Find an edge server !" for hosting service " with processing
requirement "#$%&
and bandwidth requirement "'(
16
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
Network Cost Comparison
17
Network Cost Comparison
66% reduction in network delay
17
Network Cost Comparison
66% reduction in network delay
Optimization of Edge vs. End-to-End network delay
17
Processing Cost Comparison
18
Processing Cost Comparison
20% increase in processing cost (compared to Netw)
18
Processing Cost Comparison
20% increase in processing cost (compared to Netw)
Minimization optimization vs. Best-Fit optimization
18
Time Complexity Comparison
19
Time Complexity Comparison
Upto 50% reduction in time complexity
19
Time Complexity Comparison
Upto 50% reduction in time complexity
Always performs better than state-of-the-art 19
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
Thank You!
Questions?
nitinder.mohan@helsinki.fi
CleanSky - EU FP7 Marie Curie Initial Training Network
Additional Slides
59
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)
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)
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
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
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
Service Placement: Terminology
1. Set of all Edge Servers (!"#)
!"# = {!"&
&
, !"(
&
, !")
(
}
2. Edge Server Computational Capability (!"+
,-./
)
!"/
= {3, 4, 6}
3. Edge Server User Bandwidth (!"+
34
)
!"34
= {25, 20, 30}
4. Edge Server Cost of Service Deployment (!"+
/
)
Client Cloud
Tier 1
Tier 2
Device ID: 1
Tier ID: 1
Processing: 3
Bandwidth: 25
Device ID: 2
Tier ID: 1
Processing: 4
Bandwidth: 20
Device ID: 3
Tier ID: 2
Processing: 6
Bandwidth: 30
8/.++
9, !"&
= 3
8/.++ 9, !"( = 2
8
/.++ 9,!")
=
6
8/.++ !"&, :; = 5
8/.++ !"(, :; = 6
8/.++
!")
,:;
=
2
65
Service Placement: Terminology
1. Set of all Services (!)
! = !#, !%
2. Service Compute Requirements (!&
'()*
)
!'()*
= {2, 1}
3. Service Bandwidth Quota (!&
/0
)
!/0
= {20, 15}
Client Cloud
Tier 1
Tier 2
Device ID: 1
Tier ID: 1
Processing: 3
Bandwidth: 25
Device ID: 2
Tier ID: 1
Processing: 4
Bandwidth: 20
Device ID: 3
Tier ID: 2
Processing: 6
Bandwidth: 30
3*)&&
4, 5!#
= 3
3*)&& 4, 5!% = 2
3
*)&& 4,5!7
=
6
3*)&& 5!#, 9: = 5
3*)&& 5!%, 9: = 6
3*)&&
5!7
,9:
=
2
Firewall Monitor Services
66
Service Placement
I. Optimizing Operational Cost
! " = $
%&'
(
$
)&'
*
+%
,-./
0+)
,-./ 0+)
/
1%)
1%) = 2
1,
0,
if +% deployed on 0+)
otherwise
67
Service Placement
I. Optimizing Operational Cost
! " = $
%&'
(
$
)&'
*
+%
,-./
0+)
,-./ 0+)
/
1%)
Cost for processing the service
1%) = 2
1,
0,
if +% deployed on 0+)
otherwise
68
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
Service Placement
II. Optimizing Network Delay (End-to-End)
! "# = %
&'(
)
*+,-- ., 0"& + *+,-- 0"&2(, 0"& + *+,-- 0"&, .345* 6&#
*subject to bandwidth constraints
70
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
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
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
Service Placement
II. Optimizing Network Delay (Edge)
! "# = %
&'(
)
*+,-- ., 0"& 1&#
*subject to bandwidth constraints
74

MUTE: Multi-Tier Edge networks

  • 1.
    MUTE: MUlti-Tier Edge networks 5thWorkshop 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 EdgeClouds Network DatacenterEdge Server User Edge Cloud: Small-scale server(s) deployed at network edge to compute user data Motivation: 2
  • 3.
    Rise of EdgeClouds 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 EdgeClouds 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 EdgeClouds 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
  • 6.
  • 7.
  • 8.
    Placing SFC onEdge ES 1 ES 2 ES 3 ES 1 ES 2 3
  • 9.
    Placing SFC onEdge 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 onEdge 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 onEdge 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 onEdge 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 EdgeServers 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 EdgeServers ESA 1 ESA 2 ESA 3 ESB 1 ESB 1 Existing approaches consider all Edge Servers in a single pool 4
  • 15.
    Selecting Optimal EdgeServers 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 EdgeServers: 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 EdgeServers: 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
  • 18.
  • 19.
    Edge Platform Perspective Client ServerID: 1 Processing: 3 Bandwidth: 25 Server ID: 2 Processing: 4 Bandwidth: 20 Server ID: 3 Processing: 6 Bandwidth: 30 Edge Platform Cloud 7
  • 20.
    Edge Platform Perspective Client ServerID: 1 Processing: 3 Bandwidth: 25 Server ID: 2 Processing: 4 Bandwidth: 20 Server ID: 3 Processing: 6 Bandwidth: 30 Edge Platform Delay= 3 Delay = 2 Delay = 6 Delay = 5 Delay = 6 Delay = 2 Cloud 7
  • 21.
    Edge Platform Perspective Client ServerID: 1 Processing: 3 Bandwidth: 25 Server ID: 2 Processing: 4 Bandwidth: 20 Server ID: 3 Processing: 6 Bandwidth: 30 Edge Platform Delay= 3 Delay = 2 Delay = 6 Delay = 5 Delay = 6 Delay = 2 End-to-End delay = 8ms Cloud 7
  • 22.
    Edge Platform Perspective ClientTier 1 Tier 2 Server ID: 1 Processing: 3 Bandwidth: 25 Server ID: 2 Processing: 4 Bandwidth: 20 Server ID: 3 Processing: 6 Bandwidth: 30 Edge Platform Delay= 3 Delay = 2 Delay = 6 Delay = 5 Delay = 6 Delay = 2 Cloud Tier ID: 1 Tier ID: 2 Tier ID: 1 7
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
    Edge Tier GroupingCharacteristics EdgePlatform Tier1 ES# # ES$ #ES% # Tier2 ES# % ES& % TierN ES# ' ES% ' ES( ' NetworkDelay(Edge) 9
  • 31.
    Edge Tier GroupingCharacteristics EdgePlatform Tier1 ES# # ES$ #ES% # Tier2 ES# % ES& % TierN ES# ' ES% ' ES( ' NetworkDelay(Edge) ProcessingPower 9
  • 32.
    Edge Tier GroupingCharacteristics EdgePlatform Tier1 ES# # ES$ #ES% # Tier2 ES# % ES& % TierN ES# ' ES% ' ES( ' NetworkDelay(Edge) UserBandwidth ProcessingPower 9
  • 33.
    Edge Tier GroupingCharacteristics EdgePlatform Tier1 ES# # ES$ #ES% # Tier2 ES# % ES& % TierN ES# ' ES% ' ES( ' NetworkDelay(Edge) UserBandwidth ProcessingPower ServerDensity 9
  • 34.
    Service Placement onEdge 1. Service Placement Terminology 2. Service Operation Cost Optimization 3. Network Delay Optimization 4. Tier-based Optimization 10
  • 35.
    Service Placement onEdge 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 onEdge 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 onEdge 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 onEdge 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 onEdge 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
  • 40.
    Benefits of Tier-Optimization 1.Approximation based algorithm → handles scalability 12
  • 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
  • 43.
  • 44.
    Evaluation Evaluated on Pythonsimulator 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 withthree 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
  • 46.
    Evaluation Objective: Find an edgeserver !" for hosting service " with processing requirement "#$%& and bandwidth requirement "'( 16
  • 47.
    Evaluation Objective: Find an edgeserver !" 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
  • 48.
  • 49.
    Network Cost Comparison 66%reduction in network delay 17
  • 50.
    Network Cost Comparison 66%reduction in network delay Optimization of Edge vs. End-to-End network delay 17
  • 51.
  • 52.
    Processing Cost Comparison 20%increase in processing cost (compared to Netw) 18
  • 53.
    Processing Cost Comparison 20%increase in processing cost (compared to Netw) Minimization optimization vs. Best-Fit optimization 18
  • 54.
  • 55.
    Time Complexity Comparison Upto50% reduction in time complexity 19
  • 56.
    Time Complexity Comparison Upto50% reduction in time complexity Always performs better than state-of-the-art 19
  • 57.
    Summary 1. MUTE isa 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
  • 58.
    Thank You! Questions? nitinder.mohan@helsinki.fi CleanSky -EU FP7 Marie Curie Initial Training Network
  • 59.
  • 60.
    Rise of EdgeClouds 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 EdgeClouds 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 FogData 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
  • 65.
    Service Placement: Terminology 1.Set of all Edge Servers (!"#) !"# = {!"& & , !"( & , !") ( } 2. Edge Server Computational Capability (!"+ ,-./ ) !"/ = {3, 4, 6} 3. Edge Server User Bandwidth (!"+ 34 ) !"34 = {25, 20, 30} 4. Edge Server Cost of Service Deployment (!"+ / ) Client Cloud Tier 1 Tier 2 Device ID: 1 Tier ID: 1 Processing: 3 Bandwidth: 25 Device ID: 2 Tier ID: 1 Processing: 4 Bandwidth: 20 Device ID: 3 Tier ID: 2 Processing: 6 Bandwidth: 30 8/.++ 9, !"& = 3 8/.++ 9, !"( = 2 8 /.++ 9,!") = 6 8/.++ !"&, :; = 5 8/.++ !"(, :; = 6 8/.++ !") ,:; = 2 65
  • 66.
    Service Placement: Terminology 1.Set of all Services (!) ! = !#, !% 2. Service Compute Requirements (!& '()* ) !'()* = {2, 1} 3. Service Bandwidth Quota (!& /0 ) !/0 = {20, 15} Client Cloud Tier 1 Tier 2 Device ID: 1 Tier ID: 1 Processing: 3 Bandwidth: 25 Device ID: 2 Tier ID: 1 Processing: 4 Bandwidth: 20 Device ID: 3 Tier ID: 2 Processing: 6 Bandwidth: 30 3*)&& 4, 5!# = 3 3*)&& 4, 5!% = 2 3 *)&& 4,5!7 = 6 3*)&& 5!#, 9: = 5 3*)&& 5!%, 9: = 6 3*)&& 5!7 ,9: = 2 Firewall Monitor Services 66
  • 67.
    Service Placement I. OptimizingOperational Cost ! " = $ %&' ( $ )&' * +% ,-./ 0+) ,-./ 0+) / 1%) 1%) = 2 1, 0, if +% deployed on 0+) otherwise 67
  • 68.
    Service Placement I. OptimizingOperational Cost ! " = $ %&' ( $ )&' * +% ,-./ 0+) ,-./ 0+) / 1%) Cost for processing the service 1%) = 2 1, 0, if +% deployed on 0+) otherwise 68
  • 69.
    Service Placement I. OptimizingOperational Cost ! " = $ %&' ( $ )&' * +% ,-./ 0+) ,-./ 0+) / 1%) Cost for processing the service Cost for deploying the service 1%) = 2 1, 0, if +% deployed on 0+) otherwise 69
  • 70.
    Service Placement II. OptimizingNetwork Delay (End-to-End) ! "# = % &'( ) *+,-- ., 0"& + *+,-- 0"&2(, 0"& + *+,-- 0"&, .345* 6&# *subject to bandwidth constraints 70
  • 71.
    Service Placement II. OptimizingNetwork 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. OptimizingNetwork 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. OptimizingNetwork 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
  • 74.
    Service Placement II. OptimizingNetwork Delay (Edge) ! "# = % &'( ) *+,-- ., 0"& 1&# *subject to bandwidth constraints 74