  Cloud computing, despite its inherent advantages (e.g., resource efficiency)
still faces several challenges. the wide are network used to connect the cloud
to end-users could cause high latency, which may not be tolerable for some
applications, especially Internet of Things (IoT applications. Fog computing
can reduce this latency by extending the traditional cloud architecture to the
edge of the network and by enabling the deployment of some application
components on fog nodes. Application providers use Platform-as-a-Service (PaaS)
to provision (i.e., develop, deploy, manage, and orchestrate) applications in
cloud. However, existing PaaS solutions (including IoT PaaS) usually focus on
cloud and do not enable provisioning of applications with components spanning
cloud and fog. provisioning such applications require novel functions, such as
application graph generation, that are absent from existing PaaS. Furthermore,
several functions offered by existing PaaS (e.g., publication/discovery) need
to be significantly extended in order to fit in a hybrid cloud/fog environment.
In this paper, we propose a novel architecture for PaaS for hybrid cloud/fog
system. It is IoT use case-driven, and its applications' components are
implemented as Virtual Network Functions (VNFs) with execution sequences
modeled s graphs with sub-structures such as selection and loops. It automates
the provisioning of applications with components spanning cloud and fog. In
addition, it enables the discovery of existing cloud and fog nodes and
generates application graphs. A proof of concept is built based on Cloudify
open source. Feasibility is demonstrated by evaluating its performance when
PaaS modules and application components are placed in clouds and fogs in
different geographical locations.
