- 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
- 11. Data Store Fog Edge Architecture Data Store Data archival and storage No computation on data Reliability and ease-of-access to data in Edge and Fog layers 8
- 12. Data Store Fog Edge Benefits 1. Reduced network load 2. Native support for mobility 3. Context in computation 4. No single point-of-failure 9
- 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
- 15. J1 J2 J3 J4 J5 J4 J5 J3 J1 J2 J2 J3 J4 J1 J5 I. Naïve Implementation Iterative Search 𝒩 devices 𝒩 jobs Worst Case: O(𝒩!) D1 D2 D3 D4 D5 1 4 34 1 Network Only Cost Assignment 12
- 16. Network Only Cost Assignment D1 D2 D3 D4 D5 1 4 34 1 J1 J2 J3 J4 J5 99 1 8 4 5 1 99 7 5 4 8 7 99 4 3 4 5 4 99 1 5 4 3 1 99 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 Dconn[ i, j ] = Jconn[ i, j ] = 13
- 17. Network Only Cost Assignment 99 1 8 4 5 1 99 7 5 4 8 7 99 4 3 4 5 4 99 1 5 4 3 1 99 Dconn[ i, j ] = 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 Jconn[ i, j ] = II. Quadratic Assignment Problem Minimize: NP-hard! • Approximated using Kuhn- Munkres or GLB bounds • Optimal solution not guaranteed 𝑎(𝑖,𝑗)∈𝐴 𝐽𝑐𝑜𝑛𝑛 𝑖, 𝑗 ∗ 𝐷𝑐𝑜𝑛𝑛(𝑓 𝑖 , 𝑓(𝑗)) 14
- 18. Least Processing Cost First (LPCF) Device Processing Power [Dproc(i)] D1: 3 D2: 2 D3: 2 D4: 5 D5: 6 1 4 34 1 J1: 4 J2: 2 J3: 5 J4: 4 J5: 2 Job Size [Jsize(i)] 15 D1 D2 D3 D4 D5 1 4 34 1 J1 J2 J3 J4 J5
- 19. Least Processing Cost First (LPCF) D1:3 D2:2 D3:2 D4:5 D5:6 1 4 34 1 J1:4 J2:2 J3:5 J4:4 J5:2 3 2 2 5 6 4 2 5 4 2 Dproc [i] = Jsize [i] = 16
- 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
- 26. Evaluation
- 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*
- 29. LPCF vs NOC I. Assignment computation time 1 hour 23
- 30. LPCF vs NOC II. Network cost analysis No time bound Time bounded ~10% 24
- 31. LPCF vs NOC III. Processing cost analysis 25
- 32. Discussion
- 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
- 36. Backup
- 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

- 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
- Job density increased from 10% to 100%