Packet Core Pinning via TEID Hashing for Wireless Traffic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In telecommunications systems, existing methods for routing data packets in multi-core networks are inefficient, leading to increased cache misses and data corruption due to the lack of flexibility in packet core selection, which affects throughput and user experience, especially in distinguishing between system-initiated proxy traffic and downstream UE traffic.

Innovation Solution

The system uses a tunnel endpoint identifier (TEID) and workflow session ID to pin packet processing to a specific core, employing a hashing algorithm to distribute traffic and splitting the MPLS label space to differentiate between UE and proxy traffic, while embedding core ID information in NAT addresses for enhanced load balancing and cache utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple processor cores are used for packet processing, then processing capacity and throughput are improved, but cache misses and data corruption increase due to lack of packet core selection flexibility

Engineering Contradiction:
Improvepacket processing throughputVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments packet processing by creating distinct processing domains for different traffic types (UE traffic vs. proxy traffic). Each domain is assigned to specific processor cores, ensuring that packets of the same type are consistently processed by the same core. This segmentation prevents cache misses and data corruption while maintaining high throughput through parallel processing across multiple cores.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary mechanism (the load balancer with hashing algorithm) that determines packet core selection based on packet characteristics. This intermediary ensures that packets are routed to appropriate cores while maintaining processing consistency, thereby preventing data corruption and cache misses without reducing overall processing capacity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If packet core selection is made flexible to reduce cache misses, then processing efficiency is improved, but difficulty in distinguishing between UE traffic and proxy traffic increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidtraffic type differentiation
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent applies local quality by treating different traffic types (UE traffic and proxy traffic) differently in the core selection process. UE traffic is processed using one hashing method while proxy traffic uses another, allowing the system to optimize for each traffic type's specific characteristics. This approach improves processing efficiency while maintaining clear differentiation between traffic types.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the parameter used for core selection based on traffic type. For UE traffic, the hashing algorithm uses certain packet fields, while for proxy traffic, different fields are used. This parameter change enables efficient processing while maintaining the ability to distinguish between traffic types through the hashing process itself.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If hashing algorithm is used to distribute traffic across cores, then load balancing is improved, but complexity of the packet routing system increases

Engineering Contradiction:
Improveload balancing performanceVSAvoidpacket routing system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements self-service by using hashing algorithms that automatically distribute packets across cores based on packet content. The system serves itself by making routing decisions without complex external control, achieving excellent load balancing through simple, deterministic hashing functions. This approach improves productivity while minimizing the addition of system complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3574629B1Load balancing of wireless subscriber packet processing over multiple packet processing cores
Publication Date: 2022.12.21 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3574629B1 patent drawingFigure 1
  • EP3574629B1 patent drawingFigure 2
  • EP3574629B1 patent drawingFigure 3

AI summary

Systems and methods related to the confinement, or "pinning," of packet processing for a given wireless subscriber to a single "packet handler" core, to improve throughput in a telecommunication system and reduce the probability and incidence of cache misses. Packet header data can include a subscriber's tunnel endpoint identifier ("TEID") and/or a session identifier. A load balancer core can use one or both identifiers to select a packet handler core through which the packet's bidirectional traffic will be directed. A hashing algorithm can be used to distribute multiple UEs to each of multiple packet handler cores. Other embodiments relate to differentiating between system-initiated proxy traffic and downstream UE traffic using a partitioned multiprotocol label switching ("MPLS") label space. For example, the MPLS label space can be split into a UE Pool Address Domain and a Proxy Loopback Address Domain.