Flow Table Aging via DRAM Cache Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems for managing flow tables in network components, stored in dynamic random access memory (DRAM), face bandwidth limitations and latency issues due to frequent access, leading to potential faults and unacceptable delays.

Innovation Solution

A method for managing flow tables involves maintaining a flow table age cache and an age state table, where the flow table management module updates timer information and evaluates entry ages based on activity, removing entries if they exceed a threshold time value, and using a multi-bit clock for age evaluation, thereby reducing bandwidth consumption and improving processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If flow table aging is implemented by continuously accessing the flow table in DRAM, then flow entries can be properly maintained and stale entries removed, but bandwidth limitations are overwhelmed leading to faults and unacceptable latencies

Engineering Contradiction:
Improveflow table entry maintenanceVSAvoidbandwidth
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent segments the flow table management by separating the aging function into a dedicated aging counter and comparator circuitry that operates independently from the main flow table lookup path. This segmentation allows aging operations to proceed without blocking or overwhelming the primary DRAM bandwidth, as the aging counters are maintained in separate storage registers rather than requiring continuous DRAM access.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary aging counter mechanism that mediates between the flow table entries and the aging determination logic. The aging counters serve as intermediaries that track entry age without requiring direct DRAM access for each aging check, thus reducing bandwidth consumption while maintaining reliable flow table management.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If flow table entries are frequently accessed for aging determination, then stale entries can be identified and removed, but latency increases due to continuous DRAM access

Engineering Contradiction:
Improvestale entry detectionVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-incrementing aging counters whenever flow table entries are modified or added. This preliminary aging tracking eliminates the need for continuous DRAM access during aging determination, as the age information is already maintained in the aging counters. The comparator circuitry can then determine staleness by simple comparison operations without requiring time-consuming DRAM reads.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent substitutes the mechanical DRAM access system with a faster aging counter-based timing mechanism. Instead of mechanically accessing DRAM to determine entry age, the system uses electronic aging counters that increment automatically and can be compared in place, providing much faster aging determination with minimal latency.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Productivity

If the flow table cache is made larger to reduce queries to the full flow table, then processing speed improves, but the bandwidth limitations and latency issues persist for DRAM access

Engineering Contradiction:
Improveprocessing speedVSAvoidbandwidth
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent segments the memory hierarchy by maintaining a separate aging counter structure that is independent of the flow table cache size. This segmentation allows the aging function to operate efficiently regardless of cache dimensions, as the aging counters are maintained in separate storage registers rather than consuming cache bandwidth.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal aging mechanism that works independently of the flow table cache implementation. The aging counters and comparator circuitry provide multi-functional capability by supporting flow table aging regardless of whether entries are in the cache or in the full DRAM table, thus eliminating the trade-off between cache size and aging bandwidth.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP3970328B1Flow table aging optimized for dram access
Publication Date: 2024.10.30 GOOGLE LLC
  • EP3970328B1 patent drawingFigure 1
  • EP3970328B1 patent drawingFigure 2~3
  • EP3970328B1 patent drawingFigure 4

AI summary

A flow table management system can include a hardware memory module communicatively coupled to a network interface card. The hardware memory module is configured to store a flow table including a plurality of network flow entries. The network interface card further includes a flow table age cache configured to store a set of recently active network flows and a flow table management module configured to manage a duration for which respective network flow entries in the flow table stored in the hardware memory module remain in the flow table using the flow table age cache. In some implementations, age information about each respective flow in the flow table is stored in the hardware memory module in an age state table that is separate from the flow table.