Network Domain Topology for Loop-Free Packet Forwarding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing network traffic across switches from different vendors is challenging due to incompatibilities in operating systems and control protocols, making it difficult for controllers to determine appropriate forwarding paths and prevent forwarding loops in networks with non-client switches.

Innovation Solution

A centralized or distributed controller forms client domains and non-client domains, generates a spanning tree to interconnect these domains, and uses this topology to determine network forwarding paths, allowing only traffic along the spanning tree and ignoring other links, thereby controlling client switches to route packets efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If cross-platform protocols are used to enable centralized control of multi-vendor switches, then controller compatibility and centralized management capability are improved, but network complexity increases due to the need to manage incompatible switch platforms

Engineering Contradiction:
Improvecontroller compatibilityVSAvoidnetwork complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The network is segmented into client domains (controlled by the controller) and non-client domains (uncontrolled segments). This segmentation allows the controller to manage only the portions of the network it can control, while treating non-client domains as opaque entities. The domain topology representation abstracts the complex multi-vendor switch fabric into manageable domain-level nodes, reducing the complexity burden on the controller.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary mechanism (domain topology and spanning tree algorithm) that mediates between the controller and the complex multi-vendor switch fabric. Instead of directly managing each switch's forwarding behavior, the controller uses the spanning tree algorithm to compute paths through the domain topology, which then guides forwarding decisions at client switches. This intermediary layer shields the controller from the underlying complexity of incompatible switch platforms.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If non-client switches are deployed in the network, then network flexibility and vendor independence are improved, but forwarding loop prevention becomes more difficult

Engineering Contradiction:
Improvenetwork flexibilityVSAvoidforwarding loop prevention
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The network is divided into client domains and non-client domains, with clear boundaries between controlled and uncontrolled segments. Client switches at the boundaries of these domains use the domain topology information to make forwarding decisions that prevent loops, while non-client switches within uncontrolled domains can operate independently without requiring loop prevention mechanisms from the controller.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller performs preliminary computation of the spanning tree based on domain topology information before packets are forwarded. This pre-computed spanning tree establishes valid forwarding paths and identifies blocked ports in advance. Client switches are configured with this spanning tree information, enabling them to make loop-free forwarding decisions without real-time computation or interaction with non-client switches.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If the controller attempts to determine forwarding paths in networks with non-client switches, then packet routing capability is improved, but the ability to determine appropriate paths deteriorates due to lack of visibility into non-client switch behavior

Engineering Contradiction:
Improvepacket routing capabilityVSAvoidpath determination accuracy
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent extracts detailed switch-level topology information from non-client domains and represents them as aggregated domain-level nodes in the domain topology. Instead of attempting to detect and measure the internal state of non-client switches, the controller extracts only the necessary boundary information (domain connections and reachability) to build an abstract domain topology. This extracted view provides sufficient information for path determination without requiring visibility into non-client switch internals.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the representation parameters from detailed switch-port-level topology to domain-level topology. By aggregating multiple switches into single domain nodes and representing connections between domains rather than individual switches, the controller transforms the topology data into a form that is manageable and sufficient for computing inter-domain forwarding paths, while ignoring the unmanageable details of non-client switch configurations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9548900B1Systems and methods for forwarding network packets in a network using network domain topology information
Publication Date: 2017.01.17 ARISTA NETWORKS INC
  • US9548900B1 patent drawing
  • US9548900B1 patent drawing
  • US9548900B1 patent drawing

AI summary

A controller may be used to control client switches in a network that includes non-client, switches. The controller may form client domains from groups of client switches that are separated by intervening non-client domains formed from non-client switches. The controller may determine a network domain topology from the client domains and non-client domains. The controller may determine a spanning tree that interconnects the nodes of the network domain topology. The controller may control client switches of the client domains to allow only network traffic between the client domains and the non-client domains along the spanning tree. The controller may use the network domain topology to generate inter-domain forwarding maps. The inter-domain forwarding maps may be used to determine network forwarding paths between end hosts in the network.