Ephemeral Mesh Network for Serverless Parallel Tasks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Serverless computing systems face challenges in executing tightly coupled parallel computing applications due to difficulties in communication between tasks, which are often executed in sandboxed environments that cannot communicate directly for security reasons.
Innovation Solution
The implementation of an ephemeral cluster manager that allows users to create and manage ephemeral clusters of sandboxed computing environments and ephemeral mesh networks, enabling low-latency communication between tasks through address assignment and discovery mechanisms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If tasks are executed in sandboxed environments for security, then security is improved, but communication between tasks deteriorates
Solution Approach 1:
The patent introduces an ephemeral mesh network as an intermediary communication channel between sandboxed tasks. This mesh network enables direct peer-to-peer communication while maintaining the security boundaries of sandboxed environments, allowing tasks to exchange data without breaking isolation constraints.
Solution Approach 2:
The communication infrastructure is segmented into virtual network interfaces and ephemeral mesh networks that operate independently within the serverless environment. Each task receives a virtual network interface, and communication is routed through the mesh network, separating communication paths from the sandboxed execution environments.
2Ease of operation
If traditional networking is used for task communication, then communication capability is improved, but latency increases
Solution Approach 1:
The system pre-configures virtual network interfaces and establishes ephemeral mesh networks before tasks begin execution. Network routes and communication channels are prepared in advance, eliminating the need for runtime network discovery and configuration, thus reducing communication latency.
Solution Approach 2:
The patent creates virtual copies of network interfaces for each task instance, allowing tasks to communicate as if they were on a traditional network. These virtual network interfaces replicate standard networking capabilities while operating within the constrained serverless environment, providing familiar communication patterns without the overhead of external networking.
3Reliability
If sandboxed environments are used for task execution, then security is improved, but device complexity increases
Solution Approach 1:
The ephemeral mesh network serves multiple functions simultaneously: it provides communication between sandboxed tasks, maintains security isolation, enables dynamic task discovery, and supports both synchronous and asynchronous communication patterns. This multi-functional approach reduces the need for separate specialized components.
Solution Approach 2:
Tasks automatically receive virtual network interfaces and join the ephemeral mesh network without manual configuration. The system self-manages network setup, route establishment, and task discovery, reducing the operational complexity for users while maintaining secure sandboxed execution.
Data Source
AI summary
A serverless computing system executes user-submitted code in sandboxed environments such as virtual machines or containers. To support execution of parallel applications that require data transfer between instances of the application, the serverless computing system implements an ephemeral mesh network that allows instances of the parallel application to communicate with each other while executing in their respective sandboxes. In some embodiments, a controller or parent application may also connect to the ephemeral mesh network to coordinate execution of the parallel applications. In other embodiments, the parent application may be external to the serverless computing system. The serverless computing system may connect and disconnect sandboxed environments from the ephemeral mesh network as parallel applications start and stop executing, and may remove the network and terminate the parallel applications when the parent application stops executing.


