Serverless Function Orchestrator Pre-Provisioning TCP Sockets

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Serverless functions in cloud computing environments face significant overhead during spin-up due to the need for container setup and network infrastructure creation, leading to latency and suboptimal performance, and placement decisions often neglect performance aspects, resulting in inefficient resource utilization.

Innovation Solution

Implementing a serverless function orchestrator that pre-provisions TCP sockets on virtual machines before function execution, using socket activation to decouple network setup from function startup and leveraging a serverless function experience data store to optimize VM selection based on past performance data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If serverless functions are assigned to virtual machines with random assignment, then device utilization is simplified, but system performance is suboptimal

Engineering Contradiction:
Improvesystem performanceVSAvoidassignment complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent pre-provisions TCP sockets on virtual machines before serverless functions are assigned to them. This preliminary setup of network infrastructure eliminates the need for socket creation during function spin-up, reducing latency while maintaining flexible assignment policies. The orchestrator can still make intelligent placement decisions using the experience data store while benefiting from pre-established network connectivity.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If serverless functions spin up containers and network infrastructure on demand, then resource utilization is optimized, but spin-up time increases due to overhead

Engineering Contradiction:
Improvespin-up timeVSAvoidresource utilization
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The system pre-provisions TCP sockets on virtual machines in advance, before serverless functions need them. This preliminary network infrastructure setup eliminates the time-consuming socket creation and network configuration steps during function spin-up, directly reducing latency while maintaining the ability to dynamically allocate functions to appropriate VMs based on available capacity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the network infrastructure setup (specifically TCP socket creation) from the function spin-up process. By separating socket provisioning from function deployment, the system eliminates redundant network initialization overhead during each function activation, while still maintaining dynamic resource allocation capabilities through the orchestrator's intelligent placement decisions.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If TCP sockets are created during function execution, then device complexity is reduced, but performance decreases due to setup overhead

Engineering Contradiction:
Improveexecution performanceVSAvoidsocket management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The orchestrator pre-provisions TCP sockets on virtual machines before functions are assigned to them. This advance socket creation eliminates the performance penalty of socket initialization during function execution, while the orchestrator maintains control over socket management through the experience data store-driven placement decisions, balancing performance optimization with manageable complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11645098B2Systems and methods to pre-provision sockets for serverless functions
Publication Date: 2023.05.09 SAP SE
  • US11645098B2 patent drawing
  • US11645098B2 patent drawing
  • US11645098B2 patent drawing

AI summary

Methods and systems may be associated with a cloud computing environment. A serverless function orchestrator may execute a socket activation for a VM to pre-provision a TCP socket (e.g., setting up virtual interfaces and creating socket structures) before the VM hosts any serverless function associated with the pre-provisioned TCP socket. After this socket activation, the orchestrator may receive a request for a first serverless function and, responsive to the received request, start the first serverless function on the VM using the pre-provisioned TCP socket. After the activation and prior to starting the first serverless function, the system may queue packets received in connection with the pre-provisioned TCP socket. In some embodiments, multiple TCP sockets, each associated with a VM, may activated before any serverless functions are hosted and the first serverless function is started on a VM selected based on information in a serverless function experience data store.