Client-Side Arbiter for Transparent Application Traffic Routing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems require applications to detect and adapt to changes in management servers, increasing complexity and cost, as they need to reconfigure communication with redundant management servers, which is not transparent to client-side applications.

Innovation Solution

An arbiter application on the client side manages a virtual IP address for client applications, directing them to the active system manager, and uses a DNAT module to reroute packets to the operational or redundant management server without the applications being aware of the address change.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If applications detect and adapt to management server changes, then system reliability is improved, but application complexity increases

Engineering Contradiction:
Improvesystem reliabilityVSAvoidapplication complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a client-side arbiter application as an intermediary between applications and management servers. The arbiter monitors management server availability and dynamically updates the address (IP or hostname) that applications use to communicate with active management servers. This mediator approach allows applications to maintain simple, static configuration while the arbiter handles complexity of server failover detection and address translation, thus improving reliability without increasing application complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If a load balancer is added to route traffic to redundant servers, then system reliability is improved, but system complexity and cost increase

Engineering Contradiction:
Improvesystem reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of placing a load balancer on the server side (traditional approach), the patent inverts the architecture by implementing the arbitration and address translation functionality on the client side. The client-side arbiter maintains a cache of management server addresses and performs address translation locally, eliminating the need for server-side load balancers or traffic routing infrastructure. This inversion achieves the same reliability benefit while reducing system complexity and cost.

Inventive Principle:
Principle #13The other way round (Inversion)

3Ease of operation

If virtual server addresses are used with address reassignment, then application awareness of server changes is reduced, but server-side complexity increases

Engineering Contradiction:
Improveapplication transparencyVSAvoidserver-side complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent implements address translation through a client-side arbiter that acts as an intermediary between applications and management servers. The arbiter maintains a cached mapping of virtual addresses to actual management server addresses and performs translation locally. This approach achieves application transparency (applications remain unaware of server changes) while avoiding server-side complexity, as the translation logic resides on the client side rather than requiring server infrastructure changes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9019964B2Methods and systems for routing application traffic
Publication Date: 2015.04.28 EXTREME NETWORKS INC
  • US9019964B2 patent drawing
  • US9019964B2 patent drawing
  • US9019964B2 patent drawing

AI summary

Methods and systems for routing application traffic to an operable system manager are provided. In particular, an arbiter application is provided to identify a currently active system manager. The arbiter application provides an address for the active system manager to a routing node. Applications send communications to the active system manager by associating such communications with a virtual system manager address. Such communications are delivered to the routing node, which associates the actual address for the currently active system manager with the communication. The communications are then delivered to the active system manager using the actual address.