<p>Contributors xi</p> <p><b>Introduction 1<br /></b><i>Bharath Balasubramanian, Mung Chiang, and Flavio Bonomi</i></p> <p>I.1 Summary of Chapters 5</p> <p>I.2 Acknowledgments 7</p> <p>References 8</p> <p><b>I Communication and Management of Fog 11</b></p> <p><b>1 ParaDrop: An Edge Computing Platform in Home Gateways 13<br /></b><i>Suman Banerjee, Peng Liu, Ashish Patro, and Dale Willis</i></p> <p>1.1 Introduction 13</p> <p>1.1.1 Enabling Multitenant Wireless Gateways and Applications through ParaDrop 14</p> <p>1.1.2 ParaDrop Capabilities 15</p> <p>1.2 Implementing Services for the ParaDrop Platform 17</p> <p>1.3 Develop Services for ParaDrop 19</p> <p>1.3.1 A Security Camera Service Using ParaDrop 19</p> <p>1.3.2 An Environmental Sensor Service Using ParaDrop 22</p> <p>References 23</p> <p><b>2 Mind Your Own Bandwidth 24<br /></b><i>Carlee Joe-Wong, Sangtae Ha, Zhenming Liu, Felix Ming Fai Wong, and Mung Chiang</i></p> <p>2.1 Introduction 24</p> <p>2.1.1 Leveraging the Fog 25</p> <p>2.1.2 A Home Solution to a Home Problem 25</p> <p>2.2 Related Work 28</p> <p>2.3 Credit Distribution and Optimal Spending 28</p> <p>2.3.1 Credit Distribution 29</p> <p>2.3.2 Optimal Credit Spending 31</p> <p>2.4 An Online Bandwidth Allocation Algorithm 32</p> <p>2.4.1 Estimating Other Gateways’ Spending 32</p> <p>2.4.2 Online Spending Decisions and App Prioritization 34</p> <p>2.5 Design and Implementation 35</p> <p>2.5.1 Traffic and Device Classification 37</p> <p>2.5.2 Rate Limiting Engine 37</p> <p>2.5.3 Traffic Prioritization Engine 38</p> <p>2.6 Experimental Results 39</p> <p>2.6.1 Rate Limiting 39</p> <p>2.6.2 Traffic Prioritization 41</p> <p>2.7 Gateway Sharing Results 41</p> <p>2.8 Concluding Remarks 45</p> <p>Acknowledgments 46</p> <p><b>Appendix 2.A 46</b></p> <p>2.A.1 Proof of Lemma 2.1 46</p> <p>2.A.2 Proof of Lemma 2.2 46</p> <p>2.A.3 Proof of Proposition 2.1 47</p> <p>2.A.4 Proof of Proposition 2.2 48</p> <p>2.A.5 Proof of Proposition 2.3 49</p> <p>2.A.6 Proof of Proposition 2.4 49</p> <p>References 50</p> <p><b>3 Socially-Aware Cooperative D2D and D4D Communications toward Fog Networking 52<br /></b><i>Xu Chen, Junshan Zhang, and Satyajayant Misra</i></p> <p>3.1 Introduction 52</p> <p>3.1.1 From Social Trust and Social Reciprocity to D2D Cooperation 54</p> <p>3.1.2 Smart Grid: An IoT Case for Socially-Aware Cooperative D2D and D4D Communications 55</p> <p>3.1.3 Summary of Main Results 57</p> <p>3.2 Related Work 58</p> <p>3.3 System Model 59</p> <p>3.3.1 Physical (Communication) Graph Model 60</p> <p>3.3.2 Social Graph Model 61</p> <p>3.4 Socially-Aware Cooperative D2D and D4D Communications toward Fog Networking 62</p> <p>3.4.1 Social Trust-Based Relay Selection 63</p> <p>3.4.2 Social Reciprocity-Based Relay Selection 63</p> <p>3.4.3 Social Trust and Social Reciprocity-Based Relay Selection 68</p> <p>3.5 Network Assisted Relay Selection Mechanism 69</p> <p>3.5.1 Reciprocal Relay Selection Cycle Finding 69</p> <p>3.5.2 NARS Mechanism 70</p> <p>3.5.3 Properties of NARS Mechanism 73</p> <p>3.6 Simulations 75</p> <p>3.6.1 Erdos–Renyi Social Graph 76</p> <p>3.6.2 Real Trace Based Social Graph 78</p> <p>3.7 Conclusion 82</p> <p>Acknowledgments 82</p> <p>References 83</p> <p><b>4 You Deserve Better Properties (From Your Smart Devices) 86<br /></b><i>Steven Y. Ko</i></p> <p>4.1 Why We Need to Provide Better Properties 86</p> <p>4.2 Where We Need to Provide Better Properties 87</p> <p>4.3 What Properties We Need to Provide and How 88</p> <p>4.3.1 Transparency 88</p> <p>4.3.2 Predictable Performance 93</p> <p>4.3.3 Openness 99</p> <p>4.4 Conclusions 102</p> <p>Acknowledgment 102</p> <p>References 103</p> <p><b>II Storage and Computation in Fog 107</b></p> <p><b>5 Distributed Caching for Enhancing Communications Efficiency 109<br /></b><i>A. Salman Avestimehr and Andreas F. Molisch</i></p> <p>5.1 Introduction 109</p> <p>5.2 Femtocaching 111</p> <p>5.2.1 System Model 111</p> <p>5.2.2 Adaptive Streaming from Helper Stations 114</p> <p>5.3 User-Caching 115</p> <p>5.3.1 Cluster-Based Caching and D2D Communications 115</p> <p>5.3.2 IT LinQ-Based Caching and Communications 118</p> <p>5.3.3 Coded Multicast 126</p> <p>5.4 Conclusions and Outlook 130</p> <p>References 131</p> <p><b>6 Wireless Video Fog: Collaborative Live Streaming with Error Recovery 133<br /></b><i>Bo Zhang, Zhi Liu, and S.-H. Gary Chan</i></p> <p>6.1 Introduction 133</p> <p>6.2 Related Work 136</p> <p>6.3 System Operation and Network Model 138</p> <p>6.4 Problem Formulation and Complexity 140</p> <p>6.4.1 NC Packet Selection Optimization 140</p> <p>6.4.2 Broadcaster Selection Optimization 143</p> <p>6.4.3 Complexity Analysis 144</p> <p>6.5 VBCR: A Distributed Heuristic for Live Video with Cooperative Recovery 144</p> <p>6.5.1 Initial Information Exchange 145</p> <p>6.5.2 Cooperative Recovery 145</p> <p>6.5.3 Updated Information Exchange 147</p> <p>6.5.4 Video Packet Forwarding 147</p> <p>6.6 Illustrative Simulation Results 150</p> <p>6.7 Concluding Remarks 156</p> <p>References 156</p> <p><b>7 Elastic Mobile Device Clouds: Leveraging Mobile Devices to Provide Cloud Computing Services at the Edge 159<br /></b><i>Karim Habak, Cong Shi, Ellen W. Zegura, Khaled A. Harras, and Mostafa Ammar</i></p> <p>7.1 Introduction 159</p> <p>7.2 Design Space with Examples 161</p> <p>7.2.1 Mont-Blanc 162</p> <p>7.2.2 Computing while Charging 163</p> <p>7.2.3 FemtoCloud 164</p> <p>7.2.4 Serendipity 166</p> <p>7.3 FemtoCloud Performance Evaluation 168</p> <p>7.3.1 Experimental Setup 168</p> <p>7.3.2 FemtoCloud Simulation Results 169</p> <p>7.3.3 FemtoCloud Prototype Evaluation 173</p> <p>7.4 Serendipity Performance Evaluation 175</p> <p>7.4.1 Experimental Setup 175</p> <p>7.4.2 Serendipity’s Performance Benefits 176</p> <p>7.4.3 Impact of Network Environment 179</p> <p>7.4.4 The Impact of the Job Properties 182</p> <p>7.5 Challenges 186</p> <p>References 186</p> <p><b>III Applications of Fog 189</b></p> <p><b>8 The Role of Fog Computing in the Future of the Automobile 191<br /></b><i>Flavio Bonomi, Stefan Poledna, and Wilfried Steiner</i></p> <p>8.1 Introduction 191</p> <p>8.2 Current Automobile Electronic Architectures 193</p> <p>8.3 Future Challenges of Automotive E/E Architectures and Solution Strategies 195</p> <p>8.4 Future Automobiles as Fog Nodes on Wheels 200</p> <p>8.5 Deterministic FOG Nodes on Wheels Through Real-Time Computing and Time-Triggered Technologies 203</p> <p>8.5.1 Deterministic Fog Node Addressing the Scalability Challenge through Virtualization 203</p> <p>8.5.2 Deterministic Fog Node Addressing the Connectivity and Security Challenges 204</p> <p>8.5.3 Emerging Use Case of Deterministic Fog Nodes in Automotive Applications—Vehicle-Wide Virtualization 206</p> <p>8.6 Conclusion 209</p> <p>References 209</p> <p><b>9 Geographic Addressing for Field Networks 211<br /></b><i>Robert J. Hall</i></p> <p>9.1 Introduction 211</p> <p>9.1.1 Field Networking 211</p> <p>9.1.2 Challenges of Field Networking 212</p> <p>9.2 Geographic Addressing 214</p> <p>9.3 SAGP: Wireless GA in the Field 215</p> <p>9.3.1 SAGP Processing 216</p> <p>9.3.2 SAGP Retransmission Heuristics 217</p> <p>9.3.3 Example of SAGP Packet Propagation 218</p> <p>9.3.4 Followcast: Efficient SAGP Streaming 219</p> <p>9.3.5 Meeting the Challenges 220</p> <p>9.4 Georouting: Extending GA to the Cloud 221</p> <p>9.5 SGAF: A Multi-Tiered Architecture for Large-Scale GA 222</p> <p>9.5.1 Bridging Between Tiers 223</p> <p>9.5.2 Hybrid Security Architecture 225</p> <p>9.6 The AT&T Labs Geocast System 225</p> <p>9.7 Two GA Applications 226</p> <p>9.7.1 PSCommander 226</p> <p>9.7.2 Geocast Games 230</p> <p>9.8 Conclusions 232</p> <p>References 232</p> <p><b>10 Distributed Online Learning and Stream Processing for a Smarter Planet 234<br /></b><i>Deepak S. Turaga and Mihaela van der Schaar</i></p> <p>10.1 Introduction: Smarter Planet 234</p> <p>10.2 Illustrative Problem: Transportation 237</p> <p>10.3 Stream Processing Characteristics 238</p> <p>10.4 Distributed Stream Processing Systems 239</p> <p>10.4.1 State of the Art 239</p> <p>10.4.2 Stream Processing Systems 240</p> <p>10.5 Distributed Online Learning Frameworks 244</p> <p>10.5.1 State of the Art 244</p> <p>10.5.2 Systematic Framework for Online Distributed Ensemble Learning 247</p> <p>10.5.3 Online Learning of the Aggregation Weights 250</p> <p>10.5.4 Collision Detection Application 254</p> <p>10.6 What Lies Ahead 257</p> <p>Acknowledgment 258</p> <p>References 258</p> <p><b>11 Securing the Internet of Things: Need for a New Paradigm and Fog Computing 261<br /></b><i>Tao Zhang, Yi Zheng, Raymond Zheng, and Helder Antunes</i></p> <p>11.1 Introduction 261</p> <p>11.2 New IoT Security Challenges That Necessitate Fundamental Changes to the Existing Security Paradigm 263</p> <p>11.2.1 Many Things Will Have Long Life Spans but Constrained and Difficult-to-Upgrade Resources 264</p> <p>11.2.2 Putting All IoT Devices Inside Firewalled Castles Will Become Infeasible or Impractical 264</p> <p>11.2.3 Mission-Critical Systems Will Demand Minimal-Impact Incident Responses 265</p> <p>11.2.4 The Need to Know the Security Status of a Vast Number of Devices 266</p> <p>11.3 A New Security Paradigm for the Internet of Things 268</p> <p>11.3.1 Help the Less Capable with Fog Computing 269</p> <p>11.3.2 Scale Security Monitoring to Large Number of Devices with Crowd Attestation 272</p> <p>11.3.3 Dynamic Risk–Benefit-Proportional Protection with Adaptive Immune Security 277</p> <p>11.4 Summary 281</p> <p>Acknowledgment 281</p> <p>References 281</p> <p>Index 285</p>