In-Memory Data Store Decouples SDN Controller Route Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In software-defined networking (SDN) systems, SDN controllers face overload issues when handling route updates during failover or upgrades, leading to performance spikes and potential disruptions in cloud data centers.

Innovation Solution

Implementing an in-memory data store with publish-subscribe capabilities to decouple route distribution from the SDN controller, allowing compute nodes to subscribe to route updates published by control nodes, thereby outsourcing the processing of route updates to an in-memory database service.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the SDN controller directly handles and distributes route updates to all compute nodes, then the controller can maintain real-time route information, but the controller becomes overloaded during failover or upgrades causing performance spikes and potential disruptions

Engineering Contradiction:
Improveroute update reliabilityVSAvoidcontroller performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the route update distribution function from the SDN controller and places it in an external in-memory data store. The controller only publishes route updates to the data store, while compute nodes subscribe and receive updates directly from the data store, removing the bottleneck from the controller.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The in-memory data store acts as an intermediary between the SDN controller and compute nodes. It receives route updates from the controller and distributes them to subscribed compute nodes, decoupling the controller from direct communication with all compute nodes and eliminating the performance bottleneck.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If the SDN controller directly manages route distribution to multiple compute nodes, then route information can be kept synchronized, but the system scalability is limited due to the controller's processing capacity

Engineering Contradiction:
Improvesystem scalabilityVSAvoidcontroller complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The in-memory data store serves as a mediator that handles the complexity of managing multiple subscriptions and route distribution. The controller's complexity is reduced to simply publishing updates, while the data store manages the complex task of notifying all subscribed compute nodes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Compute nodes actively subscribe to route updates they need from the in-memory data store. Each node independently manages its own subscriptions and receives only the route updates relevant to it, enabling the system to scale as nodes are added or removed without affecting the controller.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If the SDN controller handles all route update processing, then centralized control is maintained, but the system requires expensive, high-performance control node devices

Engineering Contradiction:
Improvecontrol simplicityVSAvoidhardware cost
Core Design Contradiction:
Ease of operationVSEase of manufacture

Solution Approach 1:

The patent extracts the computationally intensive route distribution processing from the control node and places it in the in-memory data store. This allows the use of less expensive, standard hardware for control nodes while maintaining centralized control through the publish-subscribe mechanism.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The in-memory data store intermediary handles the complex processing of route updates, allowing control nodes to use simpler, less expensive hardware. The control nodes only need to publish updates, while the data store manages the complex task of distributing them to all subscribed compute nodes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP4024787B1Sharing routes using an in-memory data store in a distributed network system
Publication Date: 2024.10.30 JUNIPER NETWORKS INC
  • EP4024787B1 patent drawingFigure 1
  • EP4024787B1 patent drawingFigure 2
  • EP4024787B1 patent drawingFigure 3A

AI summary

This disclosure describes techniques for sharing routes between nodes in a distributed network system. An example method includes receiving, by a control node of a software-defined network (SDN) controller, a route from a compute node of a plurality of compute nodes in a network; publishing, by the control node and in response to receiving the route, a route update to an in-memory database service of the SDN controller; and sending, by the in-memory database service in response to receiving the published route update, the published route update to any of the plurality of compute nodes that have subscribed to receive route updates for an in-memory database instance associated with the control node.