DNS-Based In-Packet Service Version Tagging for Load Balancer Transitions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In utility computing environments, load balancers face challenges in efficiently transitioning between different versions of services due to scalability issues and the need for consistent traffic mapping, especially during node upgrades and changes in service pool size, which can lead to bottlenecks and resource inefficiencies.

Innovation Solution

Implementing a system where each version of the load balancer service is associated with a unique data traffic service network address, utilizing a Domain Name Server to map traffic flows, and employing a stateless yet deterministic approach based on traffic flow parameters, such as hashing, to distribute traffic without requiring per-flow state tracking by the load balancer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the load balancer maintains per-flow state to ensure consistent traffic mapping, then traffic distribution reliability is improved, but system scalability deteriorates

Engineering Contradiction:
Improvetraffic distribution reliabilityVSAvoidsystem scalability
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the state maintenance function from the load balancer to the client device. The load balancer becomes stateless, while clients maintain their own flow state information. This resolves the contradiction by removing the scalability bottleneck from the load balancer while preserving traffic distribution reliability through client-side state tracking.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces version identifiers as an intermediary mechanism. Instead of maintaining complex per-flow state, the load balancer uses simple version tags in packets to enable clients to make consistent forwarding decisions locally. This intermediary approach maintains reliability without requiring the load balancer to store state.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If the load balancer transitions quickly between service versions, then service adaptability is improved, but traffic mapping consistency deteriorates

Engineering Contradiction:
Improveservice version transition speedVSAvoidtraffic mapping consistency
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The patent applies preliminary action by having clients pre-establish version mappings before service transitions occur. Clients maintain a mapping between version identifiers and service endpoints, allowing them to quickly adapt to version changes while maintaining consistent traffic routing. The version identifier acts as a pre-configured key that clients can use to determine the correct service version without real-time state synchronization.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the parameter used for traffic routing from complex flow state to simple version identifiers. By tagging packets with version parameters and using these as the basis for routing decisions, the system enables rapid service version transitions while maintaining consistency. The version parameter serves as a stable identifier that clients can use to maintain consistent mappings even as service versions change.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If multiple public IP addresses are allocated for different service versions, then version identification accuracy is improved, but network resource consumption deteriorates

Engineering Contradiction:
Improveversion identification accuracyVSAvoidnumber of public IP addresses
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent segments the version identification function from the network address. Instead of using different IP addresses for different versions, it uses version identifiers as separate tags within the packet data. This segmentation allows precise version identification without consuming additional network address resources, as the version information is carried as metadata rather than requiring separate address space.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11178217B2DNS-based in-packet service version tagging
Publication Date: 2021.11.16 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11178217B2 patent drawing
  • US11178217B2 patent drawing
  • US11178217B2 patent drawing

AI summary

Embodiments of the present communications systems and methods may provide the capability for fast and reliable transitioning between the different versions of the service of the multi-node service deployed in the utility computing system. For example, in an embodiment, a computer-implemented method for data traffic distribution may comprise allocating a plurality of data traffic service network addresses to a load balancer service, wherein each data traffic service network address is associated with a different version of the load balancer service, receiving a plurality of data traffic flows, and distributing each data traffic flow to a version of the load balancer service based on a data traffic service network address of each data traffic flow.