Decentralized FaaS over Multi-Clouds with Blockchain based Management for Supporting Emerging Applications
Rabimba Karanjai,Lei Xu,Lin Chen,Nour Diallo,Weidong Shi
DOI: https://doi.org/10.1145/3605098.3636029
2024-04-12
Abstract:Function-as-a-Service (FaaS) offers a streamlined cloud computing paradigm, but existing centralized systems suffer from vendor lock-in and single points of failure. We propose DeFaaS, a decentralized FaaS system leveraging blockchain technology and decentralized API management. DeFaaS addresses these limitations by establishing a secure, transparent registry of functions on a blockchain and enabling applications to discover and invoke them. This approach fosters scalability, flexibility, enhanced security, and improved reliability. Furthermore, DeFaaS's architecture extends beyond decentralized FaaS, supporting other distributed computing scenarios like dApps, volunteer computing, and multi-cloud service meshes. DeFaaS represents a significant advancement in decentralized computing with the potential to unlock a multitude of novel applications and use cases.
Software Engineering
What problem does this paper attempt to address?
### What problems does this paper attempt to solve?
This paper aims to address the limitations of current centralized Function - as - a - Service (FaaS) systems in multi - cloud environments. Specifically, existing FaaS systems are usually owned and managed by a single cloud service provider, which brings about the following main issues:
1. **Binding to a specific cloud service provider**: Once a user selects a certain cloud platform and submits their function code, it is very difficult to migrate to other FaaS providers, even if the new provider offers better performance or price.
2. **Risk of single - point failure**: Although cloud computing is a distributed infrastructure and availability is usually an important part of the standard service - level agreement (SLA), cloud data centers can still encounter outages for various reasons.
3. **Incompatibility with emerging decentralized applications**: Decentralized applications such as Web3 and dApp are becoming more and more popular. They benefit from the FaaS model, but due to their essential characteristics, these applications are not automatically compatible with the single - cloud model.
To solve these problems, the authors propose a novel system named DeFaaS. DeFaaS utilizes blockchain technology and decentralized API management to build a decentralized FaaS system, thereby achieving higher scalability, flexibility, security, and reliability. Specifically, DeFaaS solves the problems in the following ways:
- **Using blockchain to create a decentralized function registry**: The blockchain is used to manage and execute available functions (services), and applications can discover and call these functions securely and transparently through the blockchain.
- **Supporting multiple distributed computing scenarios**: In addition to providing a reliable FaaS platform, DeFaaS can also support other distributed computing scenarios, such as decentralized applications (dApps), volunteer computing, and multi - cloud service grids.
- **A protocol stack completely based on open standards**: Ensure the interoperability and wide applicability of the system.
- **No need to rely on any centralized components**: Strictly follow the decentralization principle and avoid the centralized coordination components existing in traditional multi - cloud FaaS systems.
Through these innovations, DeFaaS not only solves the limitations of existing FaaS systems but also provides strong support for future decentralized applications, enabling Web3 and dApp developers to fully utilize the scalability and flexibility of cloud computing without affecting the decentralized characteristics of their applications.