Secure IPsec Datagram Distribution Using MCPHINT Core Hints

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-core CPUs, IPsec datagrams from the same source tend to be distributed to the same core, leading to core overload and slowed processing due to the encryption of port numbers, which are not available for hash-based distribution.

Innovation Solution

Adding a special datagram distribution information, MCPHINT, to the unencrypted portion of IPv4 and IPv6 headers to uniquely identify logical streams, allowing immediate distribution to specific CPU cores without decryption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If IPsec datagrams are distributed using hash-based distribution on source and destination IP addresses and port numbers, then datagrams from the same logical stream are distributed to the same core, but port numbers are encrypted in IPsec and not available for hashing

Engineering Contradiction:
Improvelogical stream identificationVSAvoidport number availability
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The source device performs preliminary action by generating a hash of the source and destination port numbers before encryption, and stores this hash value in the IP header or IP option field. This allows the destination device to retrieve the hash without decryption, enabling core selection before the expensive decryption operation occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

An intermediary hash value is introduced as a mediator between the encrypted port numbers and the core selection process. The hash serves as a substitute key that provides the necessary information for distribution without requiring access to the actual encrypted port numbers.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Stability of the object's composition

If all IPsec datagrams from the same source are distributed to the same core, then logical stream order is maintained, but core overload occurs and processing speed decreases

Engineering Contradiction:
Improvedatagram stream orderVSAvoidprocessing speed
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The system segments the distribution decision-making process into two parts: (1) source device generates and stores hash values for each logical stream, and (2) destination device uses these pre-computed hashes for rapid core selection. This segmentation avoids the need to maintain all streams on a single core while preserving stream integrity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The source device performs preliminary hashing of port numbers and stores the results in the IP header before transmission. This preliminary action enables the destination device to perform fast hash-based core selection without needing to decrypt packets or perform complex stream identification, thereby improving processing throughput.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If decryption is performed before distribution, then accurate stream identification is possible, but processing time increases and core overload worsens

Engineering Contradiction:
Improvestream identification accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The source device performs the time-consuming hash computation in advance and stores the result in the IP header. This eliminates the need for decryption before distribution, allowing the destination device to perform fast hash-based core selection on unencrypted packets, thereby reducing processing time and avoiding core overload.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12463949B2Method for distributing secure datagrams
Publication Date: 2025.11.04 PENGUIN SOLUTIONS CORP (DE)
  • US12463949B2 patent drawing
  • US12463949B2 patent drawing
  • US12463949B2 patent drawing

AI summary

A first computational device, connected over a network to a second computational device, generates unique datagram distribution information and places it into an unencrypted portion of a plurality of secure IP datagrams comprising a first stream, and sends the plurality of secure IP datagrams over the network to the second computational device. The second computational device is configured to examine each one of the plurality of the secure IP datagrams for the unique datagram distribution information, and uses the unique datagram distribution information to distribute all of the plurality of the secure datagrams to a first one of a plurality of CPU cores comprising the second computational device.