Data-Plane Forwarding Circuit Floating Point Computation
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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
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.
Data Source
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.


