Reliable Transactions in Serverless-Edge Architecture

With a growing interest in edge applications, such as the Internet of Things, the continued reliance of developers on existing edge architectures poses a threat. Existing edge applications make use of edge devices that have access to limited resources. Hence, they delegate compute-intensive tasks to the third-party cloud servers. In such an edge-cloud model, neither the edge devices nor the cloud servers can be trusted as they can act maliciously. Further, delegating tasks to cloud servers does not free the application developer from server provisioning and resource administration. In this paper, we present the vision of a novel Byzantine FaultTolerant Serverless-Edge architecture. In our architecture, we delegate the compute-intensive tasks to existing Serverless cloud infrastructures, which relieve us from the tasks of provisioning and administration. Further, we do not trust the edge devices and require them to order each request in a byzantine fault-tolerant manner. Neither do we trust the serverless cloud, which requires us to spawn multiple serverless cloud instances. To achieve all these tasks, we design a novel protocol, ServerlessBFT. We discuss all possible attacks in the serverless-edge architecture and extensively evaluate all of its characteristics.

[1]  Luís E. T. Rodrigues,et al.  Kauri: Scalable BFT Consensus with Pipelined Tree-Based Dissemination and Aggregation , 2021, SOSP.

[2]  Suyash Gupta,et al.  Resilient and Scalable Architecture for Permissioned Blockchain Fabrics , 2020, PhD@VLDB.

[3]  Jeffrey H. Meyerson,et al.  The Go Programming Language , 2014, IEEE Softw..

[4]  Wenzhong Li,et al.  Efficient Multi-User Computation Offloading for Mobile-Edge Cloud Computing , 2015, IEEE/ACM Transactions on Networking.

[5]  Miguel Oom Temudo de Castro,et al.  Practical Byzantine fault tolerance , 1999, OSDI '99.

[6]  Rahul Potharaju,et al.  Helios: Hyperscale Indexing for the Cloud & Edge , 2020, Proc. VLDB Endow..

[7]  Jelle Hellings,et al.  ResilientDB: Global Scale Resilient Blockchain Fabric , 2020, Proc. VLDB Endow..

[8]  Reynold Cheng,et al.  Achieving low tail-latency and high scalability for serializable transactions in edge computing , 2021, EuroSys.

[9]  Ying Zhao,et al.  EdgeChain: An Edge-IoT Framework and Prototype Based on Blockchain and Smart Contracts , 2018, IEEE Internet of Things Journal.

[10]  Beng Chin Ooi,et al.  Serverless Model Serving for Data Science , 2021, ArXiv.

[11]  Perry Cheng,et al.  Serverless Computing: Current Trends and Open Problems , 2017, Research Advances in Cloud Computing.

[12]  Joseph E. Gonzalez,et al.  A fault-tolerance shim for serverless computing , 2020, EuroSys.

[13]  David A. Patterson,et al.  Cloud Programming Simplified: A Berkeley View on Serverless Computing , 2019, ArXiv.

[14]  S. Nakamoto,et al.  Bitcoin: A Peer-to-Peer Electronic Cash System , 2008 .

[15]  Beng Chin Ooi,et al.  Blockchains vs. Distributed Databases: Dichotomy and Fusion , 2021, SIGMOD Conference.

[16]  Divyakant Agrawal,et al.  Nomadic Datacenters at the Network Edge: Data Management Challenges for the Cloud with Mobile Infrastructure , 2018, EDBT.

[17]  Ee-Chien Chang,et al.  Towards Scaling Blockchain Systems via Sharding , 2018, SIGMOD Conference.

[18]  Daniel Davis Wood,et al.  ETHEREUM: A SECURE DECENTRALISED GENERALISED TRANSACTION LEDGER , 2014 .

[19]  Marko Vukolic,et al.  Hyperledger fabric: a distributed operating system for permissioned blockchains , 2018, EuroSys.

[20]  Mohammad Sadoghi,et al.  RCC: Resilient Concurrent Consensus for High-Throughput Secure Transaction Processing , 2020, 2021 IEEE 37th International Conference on Data Engineering (ICDE).

[21]  Arun Venkataramani,et al.  Separating agreement from execution for byzantine fault tolerant services , 2003, SOSP '03.

[22]  Paul R. Brenner,et al.  Serverless Computing: Design, Implementation, and Performance , 2017, 2017 IEEE 37th International Conference on Distributed Computing Systems Workshops (ICDCSW).

[23]  Yi Lin,et al.  Enhancing Edge Computing with Database Replication , 2007, 2007 26th IEEE International Symposium on Reliable Distributed Systems (SRDS 2007).

[24]  Benny Pinkas,et al.  SBFT: A Scalable and Decentralized Trust Infrastructure , 2018, 2019 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN).

[25]  Jelle Hellings,et al.  Scalable, resilient, and configurable permissioned blockchain fabric , 2020, Proc. VLDB Endow..

[26]  Srdjan Capkun,et al.  Self-Organized Public-Key Management for Mobile Ad Hoc Networks , 2003, IEEE Trans. Mob. Comput..

[27]  Suyash Gupta,et al.  Permissioned Blockchain Through the Looking Glass: Architectural and Implementation Lessons Learned , 2019, ArXiv.

[28]  Yang Wang,et al.  All about Eve: Execute-Verify Replication for Multi-Core Servers , 2012, OSDI.

[29]  Albert Bifet,et al.  S2CE: a hybrid cloud and edge orchestrator for mining exascale distributed streams , 2020, DEBS.

[30]  Daniel J. Abadi,et al.  Calvin: fast distributed transactions for partitioned database systems , 2012, SIGMOD Conference.

[31]  Peter R. Pietzuch,et al.  Frontier: Resilient Edge Processing for the Internet of Things , 2018, Proc. VLDB Endow..

[32]  Divyakant Agrawal,et al.  DPaxos: Managing Data Closer to Users for Low-Latency and Mobile Applications , 2018, SIGMOD Conference.

[33]  Amr El Abbadi,et al.  SharPer: Sharding Permissioned Blockchains Over Network Clusters , 2019, ArXiv.

[34]  S. Lokam,et al.  Blockene: A High-throughput Blockchain Over Mobile Devices , 2020, OSDI.

[35]  Mohammad Sadoghi,et al.  Blockchain Transaction Processing , 2021, Encyclopedia of Big Data Technologies.

[36]  Adam Silberstein,et al.  Benchmarking cloud serving systems with YCSB , 2010, SoCC '10.

[37]  Jelle Hellings,et al.  Building high throughput permissioned blockchain fabrics , 2020, Proc. VLDB Endow..

[38]  Mariana Raykova,et al.  RapidChain: Scaling Blockchain via Full Sharding , 2018, CCS.

[39]  Jianliang Xu,et al.  SlimChain: Scaling Blockchain Transactions through Off-Chain Storage and Parallel Processing , 2021, Proc. VLDB Endow..

[40]  Peter Pietzuch,et al.  Faasm: Lightweight Isolation for Efficient Stateful Serverless Computing , 2020, USENIX Annual Technical Conference.

[41]  Prateek Saxena,et al.  A Secure Sharding Protocol For Open Blockchains , 2016, CCS.

[42]  Liang Tong,et al.  A hierarchical edge cloud architecture for mobile computing , 2016, IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications.

[43]  Lorenzo Alvisi,et al.  Basil: Breaking up BFT with ACID (transactions) , 2021, SOSP.

[44]  Beng Chin Ooi,et al.  BLOCKBENCH: A Framework for Analyzing Private Blockchains , 2017, SIGMOD Conference.

[45]  Philipp Jovanovic,et al.  OmniLedger: A Secure, Scale-Out, Decentralized Ledger via Sharding , 2018, 2018 IEEE Symposium on Security and Privacy (SP).

[46]  Ittai Abraham,et al.  HotStuff: BFT Consensus with Linearity and Responsiveness , 2019, PODC.

[47]  Mohammad Sadoghi,et al.  Q-Store: Distributed, Multi-partition Transactions via Queue-oriented Execution and Communication , 2020, EDBT.

[48]  Michael Stonebraker,et al.  An Evaluation of Distributed Concurrency Control , 2017, Proc. VLDB Endow..

[49]  Mohammad Sadoghi,et al.  EasyCommit: A Non-blocking Two-phase Commit Protocol , 2018, EDBT.

[50]  Faisal Nawab,et al.  WedgeChain: A Trusted Edge-Cloud Store With Asynchronous (Lazy) Trust , 2020, 2021 IEEE 37th International Conference on Data Engineering (ICDE).

[51]  Mohammad Sadoghi,et al.  QueCC: A Queue-oriented, Control-free Concurrency Architecture , 2018, Middleware.

[52]  Ramakrishna Kotla,et al.  Zyzzyva , 2007, SOSP.

[53]  Patrick Valduriez,et al.  Principles of Distributed Database Systems , 1990 .

[54]  Leslie Lamport,et al.  The part-time parliament , 1998, TOCS.

[55]  Suyash Gupta,et al.  Proof-of-Execution: Reaching Consensus through Fault-Tolerant Speculation , 2019, EDBT.