GIRAFF: Reverse Auction-based Placement for Fog Functions
Function-as-a-Service (FaaS) is a compelling new programming model for developing applications running on fog infrastructures. FaaS applications are composed of short-lived, event-triggered units, called functions. Functions can be flexibly deployed on demand along the cloud-to-thing continuum. However, deciding how to place those functions in the fog presents multiple challenges. The fog contains diverse, geo-distributed, and potentially resource-constrained nodes that should be efficiently shared between applications with latency requirements. Importantly, fog nodes are owned by different entities that should be incentivized to share their resources. Most function placement approaches ignore latency requirements or the presence of multiple owners in fog infrastructures.
To address these challenges, this article proposes a market-based approach to place FaaS applications in the fog. Clients submit function placement requests associated with SLAs that specify expected guarantees over network latency and allocated resources. The approach then organizes an auction among fog node providers to determine the nodes that host each function and the revenue of the provider. The article presents an open-source implementation of the approach evaluated on the Grid’5000 testbed. Experiments demonstrate that our approach can reduce client spending by up to three times while delivering service quality that matches or exceeds that of baseline methods.