Managed Secure Sockets for Serverless IoT Connections

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing long-lived connections between client devices and servers is complex and costly, requiring significant infrastructure for handling communication protocols and security credentials, especially for applications with numerous devices.

Innovation Solution

Implementing a socket service within a provider network that enables managed secure sockets and socket peering, allowing clients to establish and manage connections without needing dedicated server infrastructure, using a socket service that authenticates clients, applies client-defined function mappings, and routes data asynchronously.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a large fleet of servers is deployed to manage numerous client devices and maintain secure connections, then the system can handle more devices and connections, but the infrastructure cost and complexity increase significantly

Engineering Contradiction:
Improvenumber of devices managedVSAvoidinfrastructure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a socket service as an intermediary component that sits between client devices and the application server. This socket service handles connection management, authentication, and data routing, allowing the application server to focus on business logic while the socket service manages the complex infrastructure of maintaining numerous secure connections across multiple protocols

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The socket service is designed to be multi-functional, supporting multiple communication protocols (HTTP, WebSockets, MQTT, TCP, UDP) and handling various operations (connection management, authentication, data routing, peer-to-peer linking) through a single unified service, thereby reducing the need for separate infrastructure components for each function

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If dedicated server infrastructure is used to handle communication protocols and security credentials, then secure connections can be maintained, but the cost and operational burden increase

Engineering Contradiction:
Improveconnection securityVSAvoidinfrastructure management
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The socket service implements self-service mechanisms by automatically authenticating clients using credentials managed by the service itself, handling connection establishment and termination without manual intervention, and dynamically routing data based on client-defined function mappings, thereby reducing operational burden while maintaining security

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The socket service acts as a security intermediary that handles authentication and credential verification between clients and the application server, allowing the application server to trust the socket service's authentication decisions and focus on business logic without managing security credentials directly

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If manual configuration of intermediary infrastructure is performed to route data between devices, then data can be transmitted between specific devices, but the configuration process becomes burdensome especially for large numbers of devices

Engineering Contradiction:
Improvedata transmission capabilityVSAvoidconfiguration effort
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system performs preliminary action by pre-configuring function mappings that associate client devices with target endpoints before data transmission occurs. When a client connects, the socket service automatically applies the appropriate function mapping to route data, eliminating the need for manual per-connection configuration and enabling rapid setup for large numbers of devices

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The routing configuration is made dynamic through client-defined function mappings that can be updated and modified without requiring system downtime or manual reconfiguration. The socket service dynamically applies these mappings to active connections and new connections, allowing flexible adaptation to changing routing requirements

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10594570B1Managed secure sockets
Publication Date: 2020.03.17 AMAZON TECH INC
  • US10594570B1 patent drawing
  • US10594570B1 patent drawing
  • US10594570B1 patent drawing

AI summary

A socket service may be used to implement client-defined function mappings (e.g., custom protocols) for sockets hosted by the socket service so that when a particular socket is opened for a particular client device, the socket operates according to a particular client-defined function mapping requested by the particular client device. To establish a particular client-defined function mapping, a socket manager may receive request from a user that specifies a particular endpoint (e.g., a client-registered function). When a client device requests a socket to be opened, the client device requests the particular client-defined function mapping to be associated with the socket. When the socket is opened, the endpoint is invoked. The particular client-defined function mapping may also specify one or more receive criteria for data received at the socket. If the one or more receive criteria is met, the endpoint is invoked by sending the data to the endpoint.