Cluster Packet Forwarding via Node Vector
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional packet forwarding in network device clusters often results in loops and packet duplication due to reliance on forwarding tables alone, which fail to manage complex topologies effectively.
Innovation Solution
A node vector-based forwarding scheme is introduced, where a node vector is appended to packets based on the cluster link, specifying subsequent forwarding decisions and preventing duplicate packets from reaching egress ports, independent of packet forwarding protocols and adaptable to topology changes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional forwarding tables are used for packet transport in network device clusters, then packet forwarding is simple, but packet loops and duplication occur
Solution Approach 1:
A cluster ID is introduced as an intermediary element in the packet header to enable network devices to identify whether a packet is from an external source or internal cluster. This mediator allows devices to apply different forwarding behaviors (standard forwarding table lookup for external packets, cluster-specific forwarding for internal packets) without changing the overall forwarding table structure, thus preventing loops and duplication while maintaining forwarding simplicity.
Solution Approach 2:
The packet forwarding process is segmented into two distinct paths based on packet origin: external packets use conventional forwarding table lookup, while internal cluster packets use a special processing path that checks a cluster-specific forwarding database. This segmentation allows the system to handle different packet types with appropriate mechanisms, eliminating loops for internal packets while preserving simple forwarding for external packets.
2Reliability
If forwarding tables are reprogrammed to prevent loops and duplication, then packet delivery accuracy improves, but forwarding efficiency decreases
Solution Approach 1:
Instead of reprogramming all forwarding tables comprehensively to handle every possible loop scenario, the invention applies a targeted approach: only packets with the cluster ID indicator set are subjected to additional cluster-specific forwarding database checks. This partial action approach maintains high forwarding efficiency for the majority of external packets while providing loop prevention only where needed for internal cluster packets.
Solution Approach 2:
The cluster ID is set in advance when packets are injected into the cluster by ingress network devices. This preliminary marking allows subsequent egress and intermediate devices to quickly identify internal packets and apply appropriate loop-prevention measures without needing to analyze packet content or maintain complex state information, thus preserving forwarding efficiency while ensuring reliable delivery.
3Reliability
If node vector is appended to packets to specify forwarding decisions, then packet loops and duplication are eliminated, but packet header size increases
Solution Approach 1:
The cluster ID functionality is merged with existing packet header fields rather than adding a completely separate identifier. By utilizing available header space efficiently and combining the cluster identification function with other packet metadata, the invention minimizes the increase in packet header size while still providing the necessary information for loop prevention and unique packet delivery to egress ports.
Data Source
AI summary
In one implementation, a cluster of network devices forwards packets within the cluster according to a node vector and a cluster database. The cluster database defines a path from each network device in the cluster to every other network device in the cluster. When a packet is received, the receiving network device accesses a forwarding database for egress ports according to a destination address of the packet and accesses the cluster database to identify a first cluster link in the path from the receiving network device to the egress network device. The receiving network device adds a node vector to the packet. The node vector communicates to subsequent network devices how the packet is to be forwarded through the cluster on the path from the receiving network device to the egress network device. The node vector is specific to the network device cluster and operates independent from packet forwarding protocols.


