Interface Check Table Atomic Update for Packet Looping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Packet looping in networks leads to bandwidth wastage and performance degradation, as packets repeatedly switch between nodes without reaching their destinations, causing duplication and resource inefficiency.

Innovation Solution

Implementing a method to atomically update incoming and outgoing interface check tables in a node, ensuring consistency by temporarily removing entries and using timer-based sequencing to prevent packet looping and duplication, allowing only updated packets to be routed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If interface check tables are updated sequentially to ensure consistency, then packet looping is prevented, but updating time increases

Engineering Contradiction:
Improvepacket routing consistencyVSAvoidtable updating time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by setting a 'do not learn' bit in the interface check table entry before actually removing or updating the entry. This preliminary marking prevents packets from being learned or forwarded during the update process, ensuring consistency without requiring the entire update to complete atomically. The bit is set in advance to prevent looping packets before the actual table modification occurs.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If interface check tables are updated atomically to prevent loops, then packet duplication is reduced, but table update complexity increases

Engineering Contradiction:
Improvepacket routing accuracyVSAvoidupdate mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the table update process into distinct phases: setting the 'do not learn' bit, removing the entry, and later clearing the bit. This segmentation allows each step to be performed independently without requiring complex atomic operations. The 'do not learn' bit acts as a control flag that divides the update process into safe, manageable stages, reducing overall complexity while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The 'do not learn' bit serves as an intermediary mechanism between packet forwarding and table updates. Instead of directly modifying table entries in a complex atomic operation, the patent uses this intermediate flag to control packet handling during the update process. The bit mediates between the need for continuous packet forwarding and the need for consistent table updates, simplifying the overall mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If packets are allowed to continue circulating during state updates, then bandwidth utilization is maintained, but packet looping occurs

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidpacket routing correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary anti-action by setting the 'do not learn' bit before packets can potentially cause looping. This preliminary countermeasure prevents packets from being learned or forwarded along incorrect paths during the state update process. By acting in advance to block potential looping packets, the system maintains routing correctness without completely halting bandwidth utilization, as packets can still be forwarded based on existing table entries until the update completes.

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS8514876B2Method and apparatus for sequencing operations for an incoming interface check in data center ethernet
Publication Date: 2013.08.20 CISCO TECHNOLOGY INC
  • US8514876B2 patent drawing
  • US8514876B2 patent drawing
  • US8514876B2 patent drawing

AI summary

In one embodiment, a method includes obtaining an indication that a state associated with a node is to be changed and preventing data from being received on a first link. The method also includes updating at least one selected from a group including an incoming interface check (IIC) table and an outgoing interface (OIF) table to reflect the state. The state indicates that a second link is to be activated. Finally, the method includes allowing the data to be received on the second link after updating either or both the IIC table and the OIF table and after the timer duration for the NULL value for IIC has expired.