UDP-over-HTTP Load Balancing for Session-Aware Microservices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cellular networks with microservices-based core network nodes, load balancing of User Datagram Protocol (UDP) packets is challenging due to all packets having the same five-tuple, leading to overutilization of certain microservice instances and underutilization of others, defeating the purpose of horizontal scaling.

Innovation Solution

A method and system that utilize a load balancer microservice to convert UDP packets into Hypertext Transfer Protocol (HTTP) packets, adding session information as a cookie in the HTTP header, enabling intelligent routing based on session associations and load balancing across multiple microservice instances.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If UDP packets are routed using standard five-tuple load balancing, then routing simplicity is maintained, but load distribution becomes uneven causing overutilization of certain microservice instances

Engineering Contradiction:
Improverouting simplicityVSAvoidload distribution efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent introduces an intermediary mechanism by encapsulating UDP packets within HTTP packets. This encapsulation adds a cookie containing session information to the HTTP header, which acts as a mediator to carry session identification through the microservice architecture. The intermediary HTTP protocol enables intelligent routing decisions while maintaining the underlying UDP communication semantics.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the routing parameters from standard five-tuple (source IP, destination IP, source port, destination port, protocol) to include session information extracted from UDP payload. By extracting session identifiers from the UDP packet content and embedding them in HTTP cookies, the system transforms routing from purely header-based to content-aware routing, enabling better load distribution across microservice instances.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If session information is extracted and added to HTTP headers, then intelligent routing and load balancing are enabled, but packet processing complexity increases

Engineering Contradiction:
Improveload balancing capabilityVSAvoidpacket processing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by extracting session information from UDP packets at the point of reception, before routing decisions are made. The load balancer microservice proactively encapsulates UDP packets into HTTP packets with embedded session cookies, preparing them for intelligent routing in advance. This preliminary processing enables downstream microservices to make informed routing decisions without adding significant complexity during critical path operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The HTTP protocol serves as an intermediary layer that simplifies the complexity of intelligent routing. Instead of modifying UDP routing logic directly, the patent introduces HTTP encapsulation as a mediator that handles session information extraction, cookie generation, and routing decision-making. This intermediary approach isolates the complexity within a dedicated load balancer component while maintaining simplicity in the core microservice routing logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If UDP packets are converted to HTTP packets with session cookies, then session-based routing accuracy is improved, but conversion overhead increases

Engineering Contradiction:
Improvesession routing accuracyVSAvoidpacket conversion time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial action by selectively extracting only the necessary session information from UDP packets rather than processing the entire packet content. The load balancer extracts minimal session identifiers from the UDP payload and embeds them in compact HTTP cookie formats. This partial processing approach achieves accurate session-based routing while minimizing the time and computational resources required for packet conversion.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent changes the temporal parameters of packet processing by performing session extraction and HTTP encapsulation in parallel where possible, and by optimizing the conversion path to minimize serialization overhead. The system transforms the packet conversion process from a sequential bottleneck to a more concurrent operation, reducing the time loss associated with UDP-to-HTTP conversion while maintaining session routing accuracy.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP4434214B1UDP over HTTP loadbalancer for microservice environment
Publication Date: 2025.10.29 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP4434214B1 patent drawingFigure 1A
  • EP4434214B1 patent drawingFigure 1B
  • EP4434214B1 patent drawingFigure 2A

AI summary

A first plurality of UDP packets corresponding to a first session and a second plurality of UDP packets corresponding to a second session can be received at a core network node. The first plurality of UDP packets and the second plurality of UDP packets have the same source five tuple. A first plurality of HTTP packets comprising first session information identifying the first session can be created based on the first plurality of UDP packets. A second plurality of HTTP packets comprising second session information identifying the second session can be created based on the second plurality of UDP packets. The first plurality of HTTP packets can be routed to a first microservice instance based at least in part on the first session information. The second plurality of HTTP packets can be routed to a second microservice instance based at least in part on the second session information.