Hash-Based Preemption for Core Router Congestion Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network congestion management systems face challenges in handling topology changes and unexpected failures, leading to severe Quality of Service (QoS) degradation due to the lack of effective preemption mechanisms that can selectively drop or mark flows to alleviate congestion without requiring per-flow state or per-ingress/egress monitoring.

Innovation Solution

The implementation of hash-based preemption systems in core routers, which utilize multiple hash-buckets to dynamically adjust packet forwarding or marking based on load measurements, allowing for self-policing and congestion management without the need for per-flow states or edge device cooperation, enabling selective flow preemption to maintain QoS for other flows.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If per-flow state tracking and per-ingress-egress congestion estimation are implemented, then preemption accuracy is improved, but device complexity and operational difficulty increase significantly

Engineering Contradiction:
Improvepreemption accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts the complex per-flow state tracking and per-ingress-egress monitoring functions from the core network devices and relocates them to edge devices. The core router only maintains simple hash-bucket states and performs basic load measurements, while edge devices handle flow identification, state tracking, and congestion estimation. This extraction resolves the contradiction by maintaining preemption accuracy at the edge while simplifying core device complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces hash-buckets as intermediary aggregation units that group multiple flows together. Instead of tracking individual flows through the core, the system uses hash-buckets as mediators that aggregate flow states. The core router only needs to manage hash-bucket states rather than individual flow states, significantly reducing complexity while maintaining the ability to perform targeted preemption through the intermediary hash-bucket structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If per-flow preemption is implemented, then QoS degradation is reduced for non-preempted flows, but implementation complexity and policing difficulty increase

Engineering Contradiction:
ImproveQoS guaranteeVSAvoidpolicing difficulty
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent extracts the policing function from core network devices and relocates it to edge devices. Edge devices are responsible for identifying flows, determining which flows to preempt based on hash-bucket states, and executing the preemption actions. This extraction makes policing easier at the edge where flow context is available, while core devices only perform simple load measurement and hash-bucket state management.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements a self-service mechanism where edge devices autonomously perform flow identification, congestion estimation, and preemption decisions based on hash-bucket states received from the core. The system does not require complex centralized control or intricate coordination between devices. Each edge device independently manages its own flows and preemption actions, simplifying overall system operation while maintaining QoS guarantees for non-preempted flows.

Inventive Principle:
Principle #25Self-service

3Device complexity

If hash-bucket aggregation is used, then device complexity is reduced, but measurement precision for congestion detection decreases

Engineering Contradiction:
Improvestate tracking complexityVSAvoidcongestion estimation accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent applies local quality by performing precise per-flow congestion estimation at the edge devices where flow context is available, while using aggregated hash-bucket measurements only for high-level load monitoring at the core. Each edge device maintains accurate knowledge of individual flow states and performs precise congestion estimation locally, compensating for the aggregation at the core. This local precision resolves the contradiction by maintaining measurement accuracy where needed while accepting aggregation elsewhere.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent resolves the precision-loss issue by adding a spatial dimension to the measurement architecture. Instead of a single centralized measurement point, the system implements a hierarchical measurement structure with hash-bucket aggregation at the core (coarse-grained) and per-flow measurement at the edge (fine-grained). This multi-dimensional measurement approach allows the system to use aggregated data for overall load management while maintaining precise per-flow measurements at the edge for accurate congestion estimation and preemption decisions.

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

Data Source

PatentUS7675918B2Hash-based preemption
Publication Date: 2010.03.09 CISCO TECHNOLOGY INC
  • US7675918B2 patent drawing
  • US7675918B2 patent drawing
  • US7675918B2 patent drawing

AI summary

Methods and systems for preemption in a network having a core device with at least one egress interface are disclosed. In one embodiment, the method includes performing flow-based hash utilizing a plurality of hash-buckets each set to a first state or a second state and computing a load based on a rate measurement that excludes flows which hash into hash-buckets having a state set to the second state. The computed load is compared to a preemption threshold and if the computed load exceeds the preemption threshold, the state of at least one of the hash-buckets is changed from the first state to the second state. An action, such as dropping all packets or marking all packets, is performed on flows hashing in a hash-bucket in the second state.