List of Contributors |
|
xvii | |
Preface |
|
xxi | |
1 Fog Computing and Fogonomics |
|
1 | (6) |
|
|
|
|
2 Collaborative Mechanism for Hybrid Fog-Cloud Scenarios |
|
7 | (54) |
|
|
|
|
|
2.1 The Collaborative Scenario |
|
|
7 | (21) |
|
|
11 | (8) |
|
2.1.1.1 The Layering Architecture |
|
|
13 | (1) |
|
|
14 | (2) |
|
|
16 | (3) |
|
2.1.2 The F2C Control Architecture |
|
|
19 | (10) |
|
2.1.2.1 Hierarchical Architecture |
|
|
20 | (4) |
|
2.1.2.2 Main Functional Blocks |
|
|
24 | (1) |
|
2.1.2.3 Managing Control Data |
|
|
25 | (1) |
|
2.1.2.4 Sharing Resources |
|
|
26 | (2) |
|
2.2 Benefits and Applicability |
|
|
28 | (1) |
|
|
29 | (12) |
|
2.3.1 Research Challenges |
|
|
30 | (7) |
|
2.3.1.1 What a Resource is |
|
|
30 | (1) |
|
|
30 | (1) |
|
|
31 | (2) |
|
|
33 | (1) |
|
2.3.1.5 Resources Discovery |
|
|
33 | (1) |
|
2.3.1.6 Resource Allocation |
|
|
34 | (1) |
|
|
35 | (1) |
|
|
36 | (1) |
|
|
36 | (1) |
|
2.3.2 Industry Challenges |
|
|
37 | (3) |
|
2.3.2.1 What an F2C Provider Should Be? |
|
|
38 | (1) |
|
2.3.2.2 Shall Cloud/Fog Providers Communicate with Each Other |
|
|
38 | (1) |
|
2.3.2.3 How Multifog/Cloud Access Is Managed |
|
|
39 | (1) |
|
2.3.3 Business Challenges |
|
|
40 | (1) |
|
|
41 | (4) |
|
|
41 | (1) |
|
|
42 | (1) |
|
|
42 | (2) |
|
|
44 | (1) |
|
|
44 | (1) |
|
2.5 Handling Data in Coordinated Scenarios |
|
|
45 | (7) |
|
|
46 | (2) |
|
2.5.2 The Life Cycle of Data |
|
|
48 | (1) |
|
2.5.3 F2C Data Management |
|
|
49 | (14) |
|
|
49 | (2) |
|
|
51 | (1) |
|
|
52 | (1) |
|
|
52 | (2) |
|
|
54 | (1) |
|
|
54 | (7) |
3 Computation Offloading Game for Fog-Cloud Scenario |
|
61 | (22) |
|
|
|
|
61 | (2) |
|
|
63 | (4) |
|
3.2.1 Overview of Fog Computing |
|
|
63 | (1) |
|
3.2.2 Computation Offloading |
|
|
64 | (3) |
|
3.2.2.1 Evaluation Criteria |
|
|
65 | (1) |
|
3.2.2.2 Literature Review |
|
|
66 | (1) |
|
3.3 A Computation Task Offloading Game for Hybrid Fog-Cloud Computing |
|
|
67 | (13) |
|
|
67 | (4) |
|
3.3.1.1 Hybrid Fog-Cloud Computing |
|
|
68 | (1) |
|
3.3.1.2 Computation Task Models |
|
|
68 | (3) |
|
3.3.1.3 Quality of Experience |
|
|
71 | (1) |
|
3.3.2 Computation Offloading Game |
|
|
71 | (12) |
|
|
71 | (3) |
|
3.3.2.2 Algorithm Development |
|
|
74 | (1) |
|
|
74 | (1) |
|
3.3.2.4 Performance Evaluation |
|
|
75 | (5) |
|
|
80 | (1) |
|
|
80 | (3) |
4 Pricing Tradeoffs for Data Analytics in Fog-Cloud Scenarios |
|
83 | (24) |
|
|
|
|
|
|
4.1 Introduction: Economics and Fog Computing |
|
|
83 | (4) |
|
4.1.1 Fog Application Pricing |
|
|
85 | (1) |
|
4.1.2 Incentivizing Fog Resources |
|
|
86 | (1) |
|
4.1.3 A Fogonomics Research Agenda |
|
|
86 | (1) |
|
|
87 | (3) |
|
4.2.1 Pricing Network Resources |
|
|
87 | (2) |
|
4.2.2 Pricing Computing Resources |
|
|
89 | (1) |
|
4.2.3 Pricing and Architecture Trade-offs |
|
|
89 | (1) |
|
4.3 Typical Fog Architectures |
|
|
90 | (2) |
|
|
90 | (1) |
|
4.3.2 The Cloud-to-Things Continuum |
|
|
90 | (2) |
|
4.4 A Case Study: Distributed Data Processing |
|
|
92 | (9) |
|
4.4.1 A Temperature Sensor Testbed |
|
|
92 | (3) |
|
4.4.2 Latency, Cost, and Risk |
|
|
95 | (3) |
|
4.4.3 System Trade-off: Fog or Cloud |
|
|
98 | (3) |
|
4.5 Future Research Directions |
|
|
101 | (1) |
|
|
102 | (1) |
|
|
102 | (1) |
|
|
103 | (4) |
5 Quantitative and Qualitative Economic Benefits of Fog |
|
107 | (22) |
|
|
5.1 Characteristics of Fog Computing Solutions |
|
|
108 | (1) |
|
|
109 | (2) |
|
5.2.1 Information Excellence |
|
|
110 | (1) |
|
5.2.2 Solution Leadership |
|
|
110 | (1) |
|
5.2.3 Collective Intimacy |
|
|
110 | (1) |
|
5.2.4 Accelerated Innovation |
|
|
111 | (1) |
|
5.3 Bandwidth, Latency, and Response Time |
|
|
111 | (6) |
|
|
113 | (1) |
|
|
114 | (1) |
|
5.3.3 Balancing Consolidation and Dispersion to Minimize Total Latency |
|
|
114 | (1) |
|
5.3.4 Data Traffic Volume |
|
|
115 | (1) |
|
5.3.5 Nodes and Interconnections |
|
|
116 | (1) |
|
5.4 Capacity, Utilization, Cost, and Resource Allocation |
|
|
117 | (3) |
|
5.4.1 Capacity Requirements |
|
|
117 | (1) |
|
5.4.2 Capacity Utilization |
|
|
118 | (1) |
|
5.4.3 Unit Cost of Delivered Resources |
|
|
119 | (1) |
|
5.4.4 Resource Allocation, Sharing, and Scheduling |
|
|
120 | (1) |
|
5.5 Information Value and Service Quality |
|
|
120 | (3) |
|
5.5.1 Precision and Accuracy |
|
|
120 | (2) |
|
5.5.2 Survivability, Availability, and Reliability |
|
|
122 | (1) |
|
5.6 Sovereignty, Privacy, Security, Interoperability, and Management |
|
|
123 | (2) |
|
|
123 | (1) |
|
5.6.2 Privacy and Security |
|
|
123 | (1) |
|
5.6.3 Heterogeneity and Interoperability |
|
|
124 | (1) |
|
5.6.4 Monitoring, Orchestration, and Management |
|
|
124 | (1) |
|
|
125 | (1) |
|
|
126 | (1) |
|
|
126 | (3) |
6 Incentive Schemes for User-Provided Fog Infrastructure |
|
129 | (22) |
|
|
|
|
|
|
129 | (3) |
|
6.2 Technology and Economic Issues in UPIs |
|
|
132 | (5) |
|
6.2.1 Overview of UPI models for Network Connectivity |
|
|
132 | (2) |
|
6.2.2 Technical Challenges of Resource Allocation |
|
|
134 | (1) |
|
|
135 | (2) |
|
6.3 Incentive Mechanisms for Autonomous Mobile UPIs |
|
|
137 | (3) |
|
6.4 Incentive Mechanisms for Provider-assisted Mobile UPIs |
|
|
140 | (3) |
|
6.5 Incentive Mechanisms for Large-Scale Systems |
|
|
143 | (2) |
|
6.6 Open Challenges in Mobile UPI Incentive Mechanisms |
|
|
145 | (2) |
|
6.6.1 Autonomous Mobile UPIs |
|
|
145 | (1) |
|
6.6.1.1 Consensus of the Service Provider |
|
|
145 | (1) |
|
|
146 | (1) |
|
6.6.2 Provider-assisted Mobile UPIs |
|
|
146 | (5) |
|
6.6.2.1 Modeling the Users |
|
|
146 | (1) |
|
6.6.2.2 Incomplete Market Information |
|
|
147 | (1) |
|
|
147 | (1) |
|
|
148 | (3) |
7 Fog-Based Service Enablement Architecture |
|
151 | (28) |
|
|
|
|
|
151 | (2) |
|
7.1.1 Objectives and Challenges |
|
|
152 | (1) |
|
7.2 Ongoing Effort on FogSEA |
|
|
153 | (11) |
|
7.2.1 FogSEA Service Description |
|
|
156 | (2) |
|
7.2.2 Semantic Data Dependency Overlay Network |
|
|
158 | (6) |
|
7.2.2.1 Creation and Maintenance |
|
|
159 | (2) |
|
7.2.2.2 Semantic-Based Service Matchmarking |
|
|
161 | (3) |
|
|
164 | (10) |
|
7.3.1 Service Composition |
|
|
165 | (3) |
|
7.3.1.1 SeDDON Creation in FogSEA |
|
|
167 | (1) |
|
|
168 | (4) |
|
7.3.2.1 Semantic-Based Service Overlays |
|
|
169 | (1) |
|
7.3.2.2 Goal-Driven Planning |
|
|
170 | (1) |
|
7.3.2.3 Service Discovery |
|
|
171 | (1) |
|
7.3.3 Open Issue and Future Work |
|
|
172 | (2) |
|
|
174 | (5) |
8 Software-Defined Fog Orchestration for loT Services |
|
179 | (34) |
|
|
|
|
|
|
|
|
179 | (3) |
|
8.2 Scenario and Application |
|
|
182 | (6) |
|
|
182 | (2) |
|
8.2.2 Fog-enabled IoT Application |
|
|
184 | (1) |
|
8.2.3 Characteristics and Open Challenges |
|
|
185 | (2) |
|
8.2.4 Orchestration Requirements |
|
|
187 | (1) |
|
8.3 Architecture: A Software-Defined Perspective |
|
|
188 | (3) |
|
|
188 | (1) |
|
8.3.2 Software-Defined Architecture |
|
|
189 | (2) |
|
|
191 | (7) |
|
8.4.1 Resource Filtering and Assignment |
|
|
192 | (2) |
|
8.4.2 Component Selection and Placement |
|
|
194 | (1) |
|
8.4.3 Dynamic Orchestration with Runtime QoS |
|
|
195 | (1) |
|
8.4.4 Systematic Data-Driven Optimization |
|
|
196 | (1) |
|
8.4.5 Machine-Learning for Orchestration |
|
|
197 | (1) |
|
|
198 | (4) |
|
|
198 | (1) |
|
8.5.2 Simulation for IoT Application in Fog |
|
|
199 | (2) |
|
8.5.3 Simulation for Fog Orchestration |
|
|
201 | (1) |
|
|
202 | (5) |
|
8.6.1 Simulation-Based Orchestration |
|
|
202 | (4) |
|
8.6.2 Orchestration in Container-Based Systems |
|
|
206 | (1) |
|
|
207 | (1) |
|
8.8 Conclusion 208 Acknowledgment |
|
|
208 | (1) |
|
|
208 | (5) |
9 A Decentralized Adaptation System for QoS Optimization |
|
213 | (36) |
|
|
|
|
|
|
|
213 | (4) |
|
|
217 | (7) |
|
9.2.1 QoS-aware Service Composition |
|
|
217 | (2) |
|
9.2.2 SLA (Re-)negotiation |
|
|
219 | (2) |
|
|
221 | (3) |
|
9.3 Fog Service Delivery Model and AdaptFog |
|
|
224 | (16) |
|
9.3.1 AdaptFog Architecture |
|
|
224 | (3) |
|
9.3.2 Service Performance Validation |
|
|
227 | (5) |
|
9.3.3 Runtime QoS Monitoring |
|
|
232 | (3) |
|
9.3.4 Fog-to-Fog Service Level Renegotiation |
|
|
235 | (5) |
|
9.4 Conclusion and Open Issues |
|
|
240 | (1) |
|
|
240 | (9) |
10 Efficient Task Scheduling for Performance Optimization |
|
249 | (20) |
|
|
|
|
|
|
249 | (2) |
|
10.2 Individual Delay-minimization Task Scheduling |
|
|
251 | (4) |
|
|
251 | (1) |
|
10.2.2 Problem Formulation |
|
|
251 | (2) |
|
|
253 | (2) |
|
10.3 Energy-efficient Task Scheduling |
|
|
255 | (5) |
|
10.3.1 Fog Computing Network |
|
|
255 | (2) |
|
10.3.2 Medium Access Protocol |
|
|
257 | (1) |
|
|
257 | (1) |
|
10.3.4 Problem Properties |
|
|
258 | (1) |
|
10.3.5 Optimal Task Scheduling Strategy |
|
|
259 | (1) |
|
10.4 Delay Energy Balanced Task Scheduling |
|
|
260 | (5) |
|
10.4.1 Overview of Homogeneous Fog Network Model |
|
|
260 | (1) |
|
10.4.2 Problem Formulation and Analytical Framework |
|
|
261 | (1) |
|
10.4.3 Delay Energy Balanced Task Offloading |
|
|
262 | (1) |
|
10.4.4 Performance Analysis |
|
|
262 | (3) |
|
10.5 Open Challenges in Task Scheduling |
|
|
265 | (1) |
|
10.5.1 Heterogeneity of Mobile Nodes |
|
|
265 | (1) |
|
10.5.2 Mobility of Mobile Nodes |
|
|
265 | (1) |
|
10.5.3 Joint Task and Traffic Scheduling |
|
|
265 | (1) |
|
|
266 | (1) |
|
|
266 | (3) |
11 Noncooperative and Cooperative Computation Offloading |
|
269 | (26) |
|
|
|
|
269 | (2) |
|
|
271 | (1) |
|
11.3 Noncooperative Computation Offloading |
|
|
272 | (11) |
|
|
272 | (3) |
|
11.3.1.1 Communication Model |
|
|
272 | (1) |
|
11.3.1.2 Computation Model |
|
|
273 | (2) |
|
11.3.2 Decentralized Computation Offloading Game |
|
|
275 | (5) |
|
11.3.2.1 Game Formulation |
|
|
275 | (1) |
|
|
276 | (4) |
|
11.3.3 Decentralized Computation Offloading Mechanism |
|
|
280 | (3) |
|
11.3.3.1 Mechanism Design |
|
|
280 | (2) |
|
11.3.3.2 Performance Analysis |
|
|
282 | (1) |
|
11.4 Cooperative Computation Offloading |
|
|
283 | (6) |
|
11.4.1 HyFog Framework Model |
|
|
283 | (2) |
|
|
283 | (1) |
|
11.4.1.2 Task Execution Model |
|
|
284 | (1) |
|
11.4.2 Inadequacy of Bipartite Matching-Based Task Offloading |
|
|
285 | (2) |
|
11.4.3 Three-Layer Graph Matching Based Task Offloading |
|
|
287 | (2) |
|
|
289 | (2) |
|
11.5.1 Incentive Mechanisms for Collaboration |
|
|
290 | (1) |
|
11.5.2 Coping with System Dynamics |
|
|
290 | (1) |
|
11.5.3 Hybrid Centralized-Decentralized Implementation |
|
|
291 | (1) |
|
|
291 | (1) |
|
|
292 | (3) |
12 A Highly Available Storage System for Elastic Fog |
|
295 | (30) |
|
|
|
|
|
295 | (4) |
|
12.1.1 Fog Versus Cloud Services |
|
|
296 | (1) |
|
12.1.2 A Fog Storage Service |
|
|
297 | (2) |
|
|
299 | (4) |
|
12.2.1 Design Considerations |
|
|
299 | (1) |
|
|
300 | (1) |
|
|
301 | (2) |
|
12.3 Fault Tolerant Data Access and Share Placement |
|
|
303 | (6) |
|
12.3.1 Data Encoding and Placement Scheme |
|
|
303 | (1) |
|
12.3.2 Robust and Exact Share Requests |
|
|
304 | (1) |
|
12.3.3 Clustering Storage Nodes |
|
|
305 | (1) |
|
|
306 | (3) |
|
12.3.4.1 File Download Times |
|
|
307 | (1) |
|
12.3.4.2 Optimizing Share Locations |
|
|
307 | (2) |
|
|
309 | (3) |
|
|
310 | (1) |
|
|
311 | (1) |
|
|
312 | (1) |
|
|
312 | (6) |
|
12.6 Discussion and Open Questions |
|
|
318 | (1) |
|
|
319 | (1) |
|
|
320 | (1) |
|
|
320 | (1) |
|
|
320 | (5) |
13 Development of Wearable Services with Edge Devices |
|
325 | (28) |
|
|
|
|
|
325 | (3) |
|
|
328 | (3) |
|
13.2.1 Without Developer's Effort |
|
|
329 | (1) |
|
13.2.2 Require Developer's Effort |
|
|
330 | (1) |
|
|
331 | (1) |
|
|
332 | (1) |
|
|
332 | (1) |
|
|
333 | (1) |
|
|
333 | (1) |
|
|
333 | (6) |
|
|
334 | (3) |
|
|
334 | (1) |
|
13.5.1.2 Speech Recognition |
|
|
335 | (1) |
|
13.5.1.3 Retrieving Google Calendar Information |
|
|
336 | (1) |
|
|
337 | (1) |
|
|
338 | (1) |
|
13.6 Performance Evaluation |
|
|
339 | (9) |
|
|
339 | (1) |
|
13.6.2 Different Computation Loads |
|
|
340 | (2) |
|
13.6.3 Different Types of Applications |
|
|
342 | (2) |
|
13.6.4 Remote Wearable Services Provision |
|
|
344 | (2) |
|
13.6.5 Estimation of Power Consumption |
|
|
346 | (2) |
|
|
348 | (1) |
|
|
349 | (1) |
|
|
350 | (3) |
14 Security and Privacy Issues and Solutions for Fog |
|
353 | (22) |
|
|
|
|
|
|
|
353 | (7) |
|
14.1.1 Major Limitations in Traditional Cloud Computing |
|
|
353 | (1) |
|
14.1.2 Fog Computing: An Edge Computing Paradigm |
|
|
354 | (3) |
|
14.1.3 A Three-Tier Fog Computing Architecture |
|
|
357 | (3) |
|
14.2 Security and Privacy Challenges Posed by Fog Computing |
|
|
360 | (1) |
|
14.3 Existing Research on Security and Privacy Issues in Fog Computing |
|
|
361 | (5) |
|
14.3.1 Privacy-preserving |
|
|
361 | (2) |
|
|
363 | (1) |
|
|
363 | (1) |
|
|
364 | (2) |
|
14.4 Open Questions and Research Challenges |
|
|
366 | (3) |
|
|
367 | (1) |
|
14.4.2 Privacy preservation |
|
|
367 | (1) |
|
|
367 | (1) |
|
14.4.4 Malicious Attacks and Intrusion Detection |
|
|
368 | (1) |
|
14.4.5 Cross-border Issues and Fog Forensic |
|
|
369 | (1) |
|
|
369 | (1) |
|
|
370 | (1) |
|
|
370 | (5) |
Index |
|
375 | |