Switch Tag Arbitration Using Estimated Packet Sizes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional network switches face inefficiencies in processing packets due to the need to wait for entire packets to arrive before generating tags for arbitration, which slows down packet transmission and processing.

Innovation Solution

Generating tags based on estimated packet sizes before the packet is fully received, allowing for early arbitration and adjusting weights based on actual packet sizes once received, enabling overlapping arbitration and packet flow without waiting for the entire packet.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the switch waits for the entire packet to arrive before generating a tag for arbitration, then the packet size information is accurate, but the processing speed and transmission efficiency deteriorate

Engineering Contradiction:
Improvepacket size accuracyVSAvoidpacket processing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The switch generates a tag with an estimated packet size before the entire packet has arrived, allowing arbitration to proceed in advance. This preliminary action enables the arbitration process to start earlier based on partial packet information, improving processing speed while maintaining reasonable accuracy through subsequent weight adjustments when the full packet size is known

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the switch generates tags based on estimated packet sizes before full packet arrival, then the processing efficiency and transmission speed improve, but the packet size information accuracy deteriorates

Engineering Contradiction:
Improvepacket processing efficiencyVSAvoidpacket size estimation accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system implements feedback by adjusting the arbitration weight after the full packet size is known. The estimated packet size used in the tag is compared with the actual packet size, and the arbitration weight is modified accordingly. This feedback mechanism corrects the initial estimation error, ensuring that the arbitration decision remains fair and accurate despite the preliminary estimation

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The arbitration weight is made dynamic rather than static. Initially, the weight is based on the estimated packet size from the tag, but it is subsequently adjusted to reflect the actual packet size. This dynamic adjustment allows the system to adapt to the true packet characteristics while maintaining the benefits of early arbitration based on estimates

Inventive Principle:
Principle #15Dynamics

3Reliability

If the switch uses traditional arbitration schemes waiting for complete packets, then the arbitration decisions are accurate, but the network communication speed deteriorates

Engineering Contradiction:
Improvearbitration decision accuracyVSAvoidnetwork communication speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The switch performs preliminary arbitration based on estimated packet sizes from tags generated before full packet arrival. This allows the arbitration process to start earlier in the packet reception timeline, reducing the overall waiting time and improving network communication speed while maintaining decision accuracy through subsequent weight adjustments

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8116311B1Method and system for tag arbitration in switches
Publication Date: 2012.02.14 MARVELL ASIA PTE LTD
  • US8116311B1 patent drawing
  • US8116311B1 patent drawing
  • US8116311B1 patent drawing

AI summary

Method and system for a switch element is provided. The method includes (a) receiving a portion of a packet at a port of the switch element; (b) generating a tag based on an estimated packet size obtained from the portion of the packet; (c) sending the tag with the estimated packet size to a transmit segment of the port; (d) selecting a request from among a plurality of pending requests for processing the packet associated with the tag; (e) receiving an actual packet size for the packet in step (a); (f) determining if the actual packet size is different from the estimated packet size; and (g) adjusting an arbitration weight used for selecting the request in step (d), if the actual packet size is different from the estimated packet size.