Network Span Determination for SDN Configuration Dependencies

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Determining spans for network configuration dependencies in software-defined networking is challenging due to the complexity of rules and interdependencies, which places significant demands on memory and CPU resources, and often results in unnecessary transmission of configuration messages across the network.

Innovation Solution

A computer-implemented approach that generates a tree graph representing configuration dependencies, adds and prunes links and nodes to determine real spans, allowing only necessary hosts to receive configuration messages from a central controller, thereby minimizing network bandwidth and traffic impact.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a central controller generates tree graphs for individual rules and merges them into a resulting span graph to determine spans, then the spans can be determined for configuration dependencies, but the memory and CPU resources are heavily consumed due to the enormous count of nodes and links in the graph

Engineering Contradiction:
Improvespan determination accuracyVSAvoidmemory and CPU resource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent segments the configuration dependencies into separate dependency graphs for each configuration object (firewall rule, load balancing rule, etc.) rather than creating one large merged graph. Each dependency graph contains only the nodes and links relevant to that specific configuration object, dividing the overall problem into smaller, manageable segments that consume fewer resources individually.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts and removes unnecessary nodes and links from the dependency graphs during traversal. By identifying and eliminating redundant elements (such as nodes that don't affect the span determination for a particular configuration object), the system reduces the computational burden while maintaining accurate span determination.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If configuration messages are transmitted to all hosts based on complex rule interdependencies, then comprehensive coverage is achieved, but network bandwidth and traffic are unnecessarily consumed

Engineering Contradiction:
Improveconfiguration message delivery completenessVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments the network hosts into different spans based on the traversal results of individual dependency graphs. Each configuration object is assigned to specific spans that contain only the hosts that actually need to receive configuration messages for that object, rather than broadcasting to all hosts. This segmentation eliminates unnecessary network traffic while ensuring reliable delivery to relevant hosts.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If the span graph includes all nodes and links representing dependencies between rules and GroupingObjects, then complete dependency analysis is possible, but the device complexity increases significantly

Engineering Contradiction:
Improvedependency analysis completenessVSAvoidspan graph structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates separate, simplified dependency graphs for each configuration object type (firewall rules, load balancing rules, IPSec rules, etc.) rather than one monolithic graph. Each graph contains only the nodes and links relevant to that configuration type, reducing structural complexity while maintaining the ability to analyze all dependencies across different configuration objects.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts only the essential nodes and links needed for determining spans of configuration objects. By removing redundant or irrelevant elements from each dependency graph, the system maintains complete dependency analysis capability while significantly reducing the overall graph structure complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP3903471B1Determining spans for network configuration dependencies
Publication Date: 2024.09.04 VMWARE INC
  • EP3903471B1 patent drawingFigure 1
  • EP3903471B1 patent drawingFigure 2
  • EP3903471B1 patent drawingFigure 3

AI summary

In an embodiment, a computer-implemented method for determining spans for network configuration dependencies is described. In an embodiment, the method comprises: receiving, by a central controller implemented in a computer network, graph data that represents a graph having nodes and first-type links. The nodes comprise first-type nodes, second-type nodes, and third-type nodes. A plurality of second-type links between a subset of the nodes is determined. For each first-type link, a first-type link between two nodes connected by the first-type link is removed if the two nodes are also connected by a second-type link. For each second-type node, a second-type node is removed and an incoming link and an outcoming link for the second-type node are concatenated. Initial spans and real spans for the first-type nodes and the third-type nodes are determined. For each first/second-type node, configuration messages are generated and transmitted according to a real-span determined for the node.