Hierarchical Network Controller Flow Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current network management systems face challenges in achieving scalability, mobility, and multi-tenancy due to the complexity of network configurations and the need for detailed knowledge of network topology, especially in shared network environments where multiple users and different network segmentation techniques are involved.

Innovation Solution

A hierarchical network control system that uses a set of higher-level network controllers to generate flow entries and configure lower-level network controllers to implement a logical datapath set across shared switching elements, enabling the interconnection of multiple logical networks and managing different network segments with varying tagging or tunneling techniques.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a single network controller manages the entire network, then network mobility and multi-tenancy can be achieved, but the controller becomes a single point of failure and cannot scale to large networks

Engineering Contradiction:
Improvenetwork mobilityVSAvoidcontroller availability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The network control functionality is segmented into multiple distributed controllers organized in a hierarchical structure with first-level and second-level controllers. Each controller manages a specific domain or cluster of switching elements, eliminating the single point of failure while maintaining coordinated network-wide control for mobility and multi-tenancy

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If network configurations depend on underlying network topology, then detailed network knowledge enables precise control, but the complexity of configuration increases significantly

Engineering Contradiction:
Improvenetwork control precisionVSAvoidconfiguration complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The network controller acts as an intermediary that abstracts the underlying network topology from the configuration process. It maintains an internal view of the network state and automatically translates high-level configuration intents into specific forwarding rules, thereby reducing configuration complexity while maintaining control precision

Inventive Principle:
Principle #24Intermediary (Mediator)

3Extent of automation

If flow entries are generated and pushed to switching elements, then network control is achieved, but the overhead of flow generation and distribution increases system complexity

Engineering Contradiction:
Improvenetwork control automationVSAvoidcontrol system overhead
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The system introduces a hierarchical dimension to flow entry generation and distribution. Second-level controllers generate flows for inter-cluster traffic, while first-level controllers generate flows for intra-cluster traffic. This dimensional separation reduces the complexity each controller must handle while maintaining comprehensive automated control

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS11804987B2Flow generation from second level controller to first level controller to managed switching element
Publication Date: 2023.10.31 VMWARE INC
  • US11804987B2 patent drawing
  • US11804987B2 patent drawing
  • US11804987B2 patent drawing

AI summary

A network system that includes a first set of network hosts in a first domain and a second set of network hosts in a second domain. Within each of the domains, the system includes several edge switching elements (SEs) that each couple to the network hosts and forward network data to and from the set of network hosts. Within the first domain, the system includes (i) an interior SE that couples to a particular edge SE in order to receive network data for forwarding from the edge SE when the edge SE does not recognize a destination location of the network data and (ii) an interconnection SE that couples to the interior SE, the edge SE, and the second domain through an external network. When the edge SE receives network data with a destination address in the second domain, it forwards the network data directly to the interconnection SE.