1. Edge-Fog Cloud: A Distributed
Cloud for Internet of Things
Computations
Nitinder Mohan, Jussi Kangasharju
Department of Computer Science, University of Helsinki, Finland
{firstname.lastname@cs.helsinki.fi}
Conference on Cloudification of Internet of Things (CIoT) – 2016
Paris
2. Rise of connected IoT devices
Projected number of IoT devices Average cost of a sensor
Broadband by the numbers (NCTA), https://www.ncta.com/broadband- by-the-numbers
2
4. Problem: Network!
High transport cost
High data volume
High network latency
https://cloud.google.com/about/locations/
4
Computational Data Centers
5. Fog Cloud Computing
Cloud
Fog
Devices
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
Processing-capable network resources augment the cloud
4
6. Edge Cloud Computing
Processing-capable, voluntary, user-controlled devices augment the cloud
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.
5
7. Edge & Fog Cloud: Problem
Computation requires routing data to a central cloud!
Cloud
Fog
Devices
6
9. Architecture
Data
Store
Fog
Edge
Edge
Collection of devices:
i. Loosely-coupled
ii. Voluntary
iii. Human operated
1-2 hops away from sensors & clients
Ad-hoc device-to-device connectivity
within layer
Varying processing capability
e.g. desktops, laptops, workstations,
nano data centers etc. 8
10. Data
Store
Fog
Edge
Architecture
Fog
Network devices with high compute
capability
Manufactured, managed and deployed
by cloud vendors such as CISCO*
Lies farther from sensors but closer to
core
Dense connectivity within layer
Reliable connectivity to Edge
e.g. routers, switches etc.
*CISCO, “Cisco fog computing solutions: Unleash the power of the Internet of Things (whitepaper),” 2015
8
14. D1 D2 D3
D4 D5
1
4 34
1
Edge-Fog Cloud
J1 J2 J3
J4
J5
Job Graph
*Haubenwaller, Andreas Moregård, and Konstantinos Vandikas. "Computations on the Edge in the Internet of Things." Procedia Computer Science 52 (2015)
Network Only Cost Assignment*
11
20. Least Processing Cost First (LPCF)
3 2 2 5 6
4 2 5 4 2
Dproc [i] =
Jsize [i] =
I. Optimize Processing Cost
Minimize:
Linear Assignment Problem
• Solved using Kuhn-Munkres/
Hungarian algorithm
• Optimal solution guaranteed in
O(n3)
𝑖,𝑗∈𝐴
𝐶
𝐽𝑠𝑖𝑧𝑒(𝑖)
𝐷 𝑝𝑟𝑜𝑐(𝑗)
𝑥𝑖𝑗
16
21. Least Processing Cost First (LPCF)
I. Optimize Processing Cost
Minimize:
Linear Assignment Problem
• Solved using Kuhn-Munkres/
Hungarian algorithm
• Optimal solution guaranteed in
O(n3)
𝑖,𝑗∈𝐴
𝐶
𝐽𝑠𝑖𝑧𝑒(𝑖)
𝐷 𝑝𝑟𝑜𝑐(𝑗)
𝑥𝑖𝑗
D1:3 D2:2 D3:2
D4:5 D5:6
1
4 34
1
J1:4 J2:2 J5:2
J4:4 J3:5
Least Processing Cost: 4.966
16
22. Least Processing Cost First (LPCF)
II. Create sub-problem space
Edge-Fog Cloud composes of
several homogeneous devices
running homogeneous jobs
New Assignment Calculation:
1. Same processing power
→ interchange jobs
2. Same job size
→ interchange devices
D1:3 D2:2 D3:2
D4:5 D5:6
1
4 34
1
J1:4 J2:2 J5:2
J4:4 J3:5
Least Processing Cost: 4.966
J1:4 J5:2 J2:2
J4:4 J3:5
J4:4 J5:2 J2:2
J1:4 J3:5
17
23. Least Processing Cost First (LPCF)
D1 D2 D3 D4 D5
1. J1 J2 J5 J4 J3
2. J1 J5 J2 J4 J3
3. J4 J5 J2 J1 J3
4. J4 J2 J5 J1 J3
Least Processing Cost: 4.966
17
II. Create sub-problem space
Edge-Fog Cloud composes of
several homogeneous devices
running homogeneous jobs
New Assignment Calculation:
1. Same processing power
→ interchange jobs
2. Same job size
→ interchange devices
24. Least Processing Cost First (LPCF)
III. Account Network Cost
1. Compute network cost of
each assignment
2. Choose the assignment
with least network cost
D1 D2 D3 D4 D5
1. J1 J2 J5 J4 J3
2. J1 J5 J2 J4 J3
3. J4 J5 J2 J1 J3
4. J4 J2 J5 J1 J3
𝐽𝑐𝑜𝑛𝑛 𝑖, 𝑗 ∗ 𝐷𝑐𝑜𝑛𝑛(𝑓 𝑖 , 𝑓(𝑗))
Least Processing Cost: 4.966
N/W
20
27
19
28
18
25. Least Processing Cost First (LPCF)
Advantages
1. Computed assignment has least processing cost and
almost-optimal network cost
2. Task assignment accounts for processing cost of task
deployment
3. Assignment solution is guaranteed in polynomial time
19
27. Edge-Fog Cloud Simulator
Python-based Edge-Fog Cloud Simulator
1. Generates:
i. Edge and Fog node graphs with device
processing and network costs
ii. Job node graphs with variable job sizes
2. Incorporates LPCF for assignment computation
3. Open Source
21
28. LPCF vs NOC
Least Processing Cost
First
Network Only Cost
*solver available from QAPLIB, http://anjos.mgi.polymtl.ca/qaplib/
22
Edge-Fog Cloud Simulator
+
LPCF Solver
Edge-Fog Cloud Simulator
+
Kuhn-Munkres Solver*
33. Q. How well connected should EF nodes be?
~21%
~17%
~9%
27
34. Q. How does deployed job impact overall cost?
28
35. Conclusion
Our contributions in this work are:
1. Formal architecture of Edge-Fog cloud
2. LPCF algorithm for assigning tasks on EF cloud
3. Open source Edge Fog cloud simulator & LPCF solver
4. Deployment analysis of Edge Fog cloud
Source code available at: www.github.com/nitinder-mohan/EdgeFogSimulator
29
37. LPCF Search Space Reduction
Topology Size 5 10 15 30 60 100 150
Original Space 5! 10! 15! 30! 60! 100! 150!
LPCF Space 1! 3! > 4! > 5! > 7! > 8! > 9!
37
38. EF Cloud Simulator Parameters
Property Value
Total number of devices/jobs Experiment Specific
Number of Edge devices 60% of total
Number of Fog devices 40% of total
Processing power of an Edge device 2-5
Processing power of a Fog device 7-9
Connection density of Edge layer (0-1) 0.2
Connection density of Fog layer (0-1) 0.6
Connection density between Edge and Fog layer (0-1) 0.5
Lowest job size in pool 2
Highest job size in pool 6
Inter-dependence density between jobs (0-1) 0.2
38
Notas do Editor
Projected number of devices including sensors connected by networks.
With time, sensor deployment may become location independent e.g. vehicles, drones, mobiles, embedded biometrics
US-central, east, west
EU-Belgium
Asia-Taiwan, Tokyo
Network resources running cloud application logic.
Developed and Deployed by a cloud vendor.
3. aggregation/computation while routing data to cloud. Heavy computation is in central cloud
Lie in 1-hop proximity to sensors.
Pre-processing computation on the edge. Heavy in the cloud.
Semi-dependence does not work well for applications which generate large amounts of data which is distributable.
EF cloud is a completely decentralized architecture which decouples processing time from network delays. Imbibes the benefits of Edge and Fog clouds
Handles data close to the generators and consumers
Some edge devices support mobility natively
Edge can combine data from sensors providing it location/application context
Completely decentralized
Deployment must map one job to one device node
Find deployment without impacting overall processing time
Trans1: j2 and j5
Trans2: j4 and j3
F(i) signifies constraint of deploying a job to a particular device.
1. Computing the optimal deployment for a problem space of 30 nodes using QAP may take up to a week on a computational grid comprising of 2500 machines
C is overall cost function, xij is binary job assignment variable
C is overall cost function, xij is binary job assignment variable
Based on property of EF cloud
C is overall cost function, xij is binary job assignment variable
As algorithm proceeds to compute network cost iteratively, a branch-and-bound version of LPCF could be used in large search space sizes
For the list of parameters used by the simulator, I encourage you to check out the paper or simulator code available on Git
Full name of NOC
Corresponds to Table 3 in the paper.
Nodes<40, LPCF finds assignment within 1 sec whereas both QAP and Naïve solvers reach the limit
Nodes=150, LPCF reaches limit as search space is approximately 9!
Graph 1:
Max and mins are bounds obtained by choosing N smallest/largest link costs. Might not be valid assignment.
NOC QAP require large time to complete, 100 node topology finished after 71 hours.
Graph 2:
Branch-and-bound QAP limited to time taken by LPCF
LPCF always outperforms NOC QAP
Edge has device-to-device connections so density cannot be drastically increased.
E-F connection density can reduce overall network cost greatly