DNS Multipathing for Deterministic Traffic Flow Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing DNS load balancing techniques fail to effectively steer and balance traffic across link aggregation groups (LAGs) and equal-cost multipaths (ECMPs), leading to imbalanced network path distribution, congestion, and underutilized bandwidth.

Innovation Solution

DNS multipathing coordinates multipath network techniques with DNS load balancing to achieve deterministic control over distributed application traffic flows by using hash-based methods to select specific network paths and application servers, ensuring optimal bandwidth utilization across multiple paths.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing DNS load balancing techniques are used, then DNS resolution is provided, but traffic is not effectively steered across LAGs and ECMPs leading to imbalanced network path distribution

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidtraffic flow control
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent changes the parameter of DNS response by including path selection information (network path identifiers) along with IP addresses. This enables the DNS system to control traffic flow distribution across multiple network paths by selecting appropriate paths based on current network conditions, server load, and policy requirements, thereby improving bandwidth utilization while maintaining ease of operation.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements feedback mechanisms where the DNS system receives information about network path status, server performance, and traffic patterns, then uses this feedback to make intelligent path selection decisions. This feedback loop enables dynamic adjustment of traffic distribution to prevent congestion and optimize bandwidth utilization across LAGs and ECMPs.

Inventive Principle:
Principle #23Feedback

2Productivity

If traditional DNS load balancing is used, then server distribution is achieved, but deterministic control over traffic flows is not possible

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidpacket sequence integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs preliminary path selection and assignment at the time of DNS resolution, before traffic flows begin. By determining the optimal network path in advance and providing this information to the client along with the server IP address, the system ensures deterministic control over traffic flows while maintaining packet sequence integrity through consistent path usage.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If DNS multipathing is implemented, then deterministic traffic flow control is achieved, but system complexity increases

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidDNS system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary component or module within the DNS system that handles path selection logic. This intermediary receives path status information, makes routing decisions, and incorporates path identifiers into DNS responses without fundamentally redesigning the entire DNS infrastructure, thereby managing complexity while achieving deterministic traffic control.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11516116B2Domain name system multipathing distributed applications
Publication Date: 2022.11.29 EMC IP HLDG CO LLC
  • US11516116B2 patent drawing
  • US11516116B2 patent drawing
  • US11516116B2 patent drawing

AI summary

Techniques are provided for domain name system multipathing distributed applications. In an example, a client computer queries a multipath-aware domain name system service with a domain name for a plurality of application servers, where there are a plurality of network paths available between the client computer and the application servers. The multipath-aware domain name system service can select a network path to be used, then determine a server that leads to that network path being used (by determining a hash used in network routing for each server of the plurality of servers). The multipath-aware domain name system service can respond to the client computer with an IP address for a selected application server, which results in communications between the client computer and the selected application server occurring over the selected network path.