Atomic Counters for Accurate Packet Statistics in Active Networks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current packet and byte counting methodologies in computer networks fail to provide accurate and consistent statistics on network traffic flow, limiting their diagnostic value in identifying network errors and failures.

Innovation Solution

The implementation of atomic counters and label-specific packet counters across the network, which increment and read values in a coordinated manner to determine consistent packet statistics, including the number of packets or bytes received at specific locations, even across latency and distance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If current packet counting methodologies are used, then packet statistics can be obtained, but the statistics are inaccurate and inconsistent

Engineering Contradiction:
Improvepacket statistic accuracyVSAvoidstatistic consistency
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent segments the packet counting process into distinct phases using labeled packet groups. Packets are assigned labels (e.g., Group 1, Group 2) and counters are incremented only for packets with matching labels. This segmentation allows the system to isolate counting operations and eliminate interference from concurrent packet flows, thereby improving both accuracy and consistency of packet statistics.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements periodic action by cycling through different packet groups with distinct labels. The system transmits packets in periodic groups (Group 1, then Group 2, then Group 1 again, etc.), and the counters are periodically read and reset. This periodic structure ensures that counting operations are performed in controlled intervals, preventing race conditions and ensuring consistent statistics even in active networks with packets-in-flight.

Inventive Principle:
Principle #19Periodic action

2Productivity

If packet counters are incremented continuously in active networks, then all packets are counted, but packets-in-flight cause inconsistent statistics

Engineering Contradiction:
Improvepacket counting coverageVSAvoidstatistic consistency
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent applies preliminary action by assigning labels to packets before they are transmitted into the network. Each packet group is pre-labeled (e.g., all packets in Group 1 receive label 1, all packets in Group 2 receive label 2) before entering the network. This preliminary labeling allows the counting system to selectively increment counters only for packets with the expected label, ensuring that only complete packet groups are counted and eliminating inconsistencies caused by packets-in-flight from other groups.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces labels as an intermediary mechanism between packet transmission and counting. The label acts as a mediator that connects the transmitted packet groups with the counting operation. By using this intermediary, the system can distinguish between packets belonging to different groups and ensure that counters are incremented only when the complete labeled packet group has drained from the network, thereby maintaining statistic consistency while achieving full packet coverage.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If multiple packet groups are transmitted with different labels, then accurate statistics can be determined, but the system complexity increases

Engineering Contradiction:
Improvepacket statistic accuracyVSAvoidcounter management complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies universality by designing a labeling system that can accommodate any number of packet groups using a standardized labeling scheme. The same counter incrementing logic and label-matching mechanism work regardless of whether there are 2 groups or 10 groups of packets. This universal approach simplifies the system architecture compared to having separate counting mechanisms for each group, as the same multi-functional label-comparison logic handles all groups uniformly.

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

Solution Approach 2:

The patent uses parameter changes by varying the label parameter (e.g., label value 1, 2, 3, etc.) to differentiate between packet groups. Instead of creating complex separate counting systems for each group, the invention changes the label parameter value to identify different groups while using the same counter and comparison logic. This parameter-based differentiation reduces device complexity by maintaining a uniform counting mechanism that adapts to different numbers of groups through simple parameter variation.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10412615B2Networking apparatuses and packet statistic determination methods employing atomic counters
Publication Date: 2019.09.10 CISCO TECHNOLOGY INC
  • US10412615B2 patent drawing
  • US10412615B2 patent drawing
  • US10412615B2 patent drawing

AI summary

Disclosed herein are methods and related apparatuses for determining statistics descriptive of packets received at a particular location on a network out of a set of packets transmitted on the network, which include transmitting first and second groups of packets on the network, the packets in the first and second groups labeled with first and second labels, respectively (the packets in the second group not in the first group), incrementing first and second packet counters associated with the particular network location in response to packet(s) in the first and second groups, respectively, being received at the network location until all packets in the first and second groups have drained from the network, and using values read from the first and second packet counters to determine a statistic descriptive of the packets received at the particular network location out of those in the first and second groups transmitted on the network.