Fog Computing for Distributed Applicaitons

In cloud computing, minions refer to virtual or physical machines that have lot of computing, memory and data resources. Minions carry out the actual workloads. Minions in the cloud usually hide in far-away data centers, which are vulnerable to insufficient bandwidth, long latency, and high product cost rate. Hence, cloud computing is less friendly to multimedia applications or the applications in intermittent Internet. Recently, fog computing paradigm pushes minions toward edge networks. We adopt a generalized definition, which minions may be owned by the crowds. Such fog paradigm provides the resources closer to the users and reduces the cost. Unfortunately, managing the minions in the fog is challenging, e.g., end devices may move into wireless dead-zones, run out of battery, or be turned off. These factors lead to severe uncertainty. In this project , we carefully solve five major problems:

  1. Using virtualization to split each application into maller modules, then dynamically deploy them on devices which have enough resources
  2. Integrate multiple devices of limited computing resources which are in the edge network for complex data analysis
  3. Predicting the completion time of jobs by machine learning approaches, in order to design an optimal jobs distribution algorithm
  4. Build system models based on diverse QoS levels and heterogeneous devices to facilitate the optimal deployment decisions for maximizing the number of satisfied jobs
  5. Providing flexible network connectivity to allow crowds sharing contents in challenged networks

Our research is fruitful in all five directions, leading to publications in prestigious journals (such as IEEE Transactions on Multimedia) and top conferences (such as IEEE CloudCom).