Network Devices Offload Neural Network Computations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current load balancing techniques in computer networks are inefficient as they often rely on expensive hardware and are agnostic to application workloads, leading to uneven traffic distribution and increased server resource overload, especially in scenarios like database systems with variable request costs.

Innovation Solution

Implementing a method where network devices perform a subset of artificial neural network computations on network packets, encoding the results in packet headers, allowing servers to anticipate and reduce the computational load by selecting the best-suited server for request processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If network devices perform neural network computations on network packets, then server load is reduced and load distribution is improved, but network device complexity increases

Engineering Contradiction:
Improveserver processing throughputVSAvoidnetwork device computational capability
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The neural network computation is segmented into two parts: a subset of computations is performed by network devices on network packets, while the remaining computations are performed by servers. This segmentation allows the network devices to offload computational tasks to servers, reducing server load and improving overall system productivity without requiring network devices to perform all computations alone.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Network devices act as intermediaries between clients and servers by performing partial neural network computations on network packets and encoding the results in packet headers. This intermediary role allows servers to receive pre-processed information and reduce their computational workload, effectively mediating the computation distribution without requiring servers to handle all processing themselves.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If more memory is used for lookup tables in switching chips, then packet classification capability increases, but hardware cost increases

Engineering Contradiction:
Improvepacket classification capabilityVSAvoidswitching chip cost
Core Design Contradiction:
Adaptability or versatilityVSWeight of stationary object

Solution Approach 1:

The patent replaces traditional hardware-based lookup tables with neural network computations performed by programmable switching chips. Instead of using large memory structures for packet classification, the system uses computational models that can be configured through software, reducing the need for expensive hardware resources while maintaining or improving classification capabilities.

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

Solution Approach 2:

The system changes the approach to packet classification from static lookup tables to dynamic neural network computations. By parameterizing the classification function through learnable models rather than fixed hardware entries, the system achieves adaptability without proportionally increasing hardware cost, as the computational models can be trained and configured through software updates.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10892953B2Network-based application acceleration
Publication Date: 2021.01.12 NEC CORP
  • US10892953B2 patent drawing
  • US10892953B2 patent drawing
  • US10892953B2 patent drawing

AI summary

A method for load balancing in a computer network includes receiving application information for an application and information relating to an artificial neural network (NN) computation to be executed by the application. A configuration is derived for one or more network devices based on the application information and the information relating to the NN computation. The configuration is installed in the one or more network devices such that at least one of the network devices on a path of a network packet performs a subset of the NN computation and encodes a result of the subset of the NN computation into a header of the network packet.