Data-Plane Forwarding Circuit Floating Point Computation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current network operations often underutilize the processing power of network forwarding elements, as data compute servers handle network operations with computational resources that are not fully leveraged, leading to inefficiencies in data processing rates.

Innovation Solution

Implementing a data-plane forwarding circuit with a parameter collecting and distributing mechanism that stores and forwards parameter values computed by machines in a network, allowing for distributed computing operations to be performed at faster rates by utilizing the packet processing capabilities of network forwarding elements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data compute servers handle network operations with computational resources, then computational tasks can be performed, but the processing power of network forwarding elements remains underutilized

Engineering Contradiction:
Improvecomputational processing rateVSAvoidsystem resource utilization
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The network forwarding element is enhanced to perform both traditional packet forwarding and floating-point computational operations. The data plane is equipped with floating-point units and parameter collecting circuits that enable it to execute distributed computing operations locally, making the forwarding element multi-functional and reducing reliance on separate data compute servers.

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

Solution Approach 2:

A parameter collecting circuit is introduced as an intermediary component within the data plane. This circuit collects parameters from incoming packets, stores them temporarily, and makes them available for floating-point computations performed by the data plane's computational units, enabling efficient local processing without external server intervention.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If data compute servers are used for network operations, then computational tasks can be completed, but data processing rates are limited by server computational power

Engineering Contradiction:
Improvedata processing rateVSAvoidcomputational throughput
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent replaces the traditional server-based computational model with a network-embedded computational model. Instead of relying on centralized data compute servers to process network operations, the forwarding elements themselves perform floating-point computations directly on packet data, substituting the external server system with distributed in-network computing capability.

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

3Speed

If packet processing line rates of network forwarding elements are increased, then faster data forwarding is achieved, but computational powers of data compute servers become the bottleneck

Engineering Contradiction:
Improvepacket processing line rateVSAvoidcomputational power utilization
Core Design Contradiction:
SpeedVSPower

Solution Approach 1:

The computational workload is segmented and distributed across multiple network forwarding elements rather than being centralized on data compute servers. Each forwarding element independently performs floating-point operations on its local packet data, dividing the overall computational task into parallel segments that can be processed simultaneously at high line rates.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11658923B2Forwarding element data plane performing floating point computations
Publication Date: 2023.05.23 INTEL CORP
  • US11658923B2 patent drawing
  • US11658923B2 patent drawing
  • US11658923B2 patent drawing

AI summary

Some embodiments provide a network forwarding element with a data-plane forwarding circuit that has a parameter collecting circuit to store and distribute parameter values computed by several machines in a network. In some embodiments, the machines perform distributed computing operations, and the parameter values that compute are parameter values associated with the distributed computing operations. The parameter collecting circuit of the data-plane forwarding circuit (data plane) in some embodiments (1) stores a set of parameter values computed and sent by a first set of machines, and (2) distributes the collected parameter values to a second set of machines once it has collected the set of parameter values from all the machines in the first set. The first and second sets of machines are the same set of machines in some embodiments, while they are different sets of machines (e.g., one set has at least one machine that is not in the other set) in other embodiments. In some embodiments, the parameter collecting circuit performs computations on the parameter values that it collects and distributes the result of the computations once it has processed all the parameter values distributed by the first set of machines. The computations are aggregating operations (e.g., adding, averaging, etc.) that combine corresponding subset of parameter values distributed by the first set of machines.