I. INTRODUCTION

II. FOG COMPUTING AND RELATED CONCEPTS

III. EVALUATION CRITERIA AND USE CASES

IV. ARCHITECTURES FOR THE FOG SYSTEM

V. ALGORITHMS FOR THE FOG SYSTEM

VI. CHALLENGES AND RESEARCH DIRECTIONS

VII. LESSONS LEARNED AND PROSPECTS

VIII. CONCLUSION