Network Flow Alignment to Processing Nodes in SDN
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software-defined networking (SDN) controllers lack the ability to make fine-grained forwarding decisions based on individual components or groups of components of a destination computing device, leading to inefficient processing and increased latency in network traffic management.
Innovation Solution
A system that includes a network controller capable of receiving architectural information from computing devices, determining network flow information, and configuring flow filters in network adapters to align network packets with the appropriate processing nodes, thereby optimizing network flow processing within the same processing node as the executing application.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If SDN controllers make forwarding decisions on a system level rather than component level, then the controller complexity is reduced, but the forwarding decision precision deteriorates
Solution Approach 1:
The patent segments the forwarding decision process into two levels: system-level decisions made by the SDN controller and component-level decisions made by the intelligent network device. The intelligent network device is divided into multiple processing nodes (CPU, GPU, FPGA, etc.), each capable of independent forwarding decisions for specific network flows. This segmentation allows the SDN controller to maintain low complexity while achieving high forwarding precision through the distributed intelligence of individual processing nodes.
2Adaptability or versatility
If network packets are forwarded to different processing nodes than where applications execute, then network adaptability is improved, but processing latency increases
Solution Approach 1:
The patent implements a feedback mechanism where the intelligent network device receives information about application execution locations from the computing device and uses this feedback to make informed forwarding decisions. The processing node determination module queries which processing node is executing the target application and routes network packets to that same processing node. This feedback loop ensures packets are forwarded to the correct processing node with minimal latency while maintaining network adaptability through flexible routing based on real-time application location information.
3Productivity
If network packets are processed across multiple processing nodes, then processing capacity is increased, but memory resource consumption increases
Solution Approach 1:
The patent applies local quality by having each processing node dedicated to specific applications and processing network packets locally at that node. Instead of distributing packets across multiple nodes which would require synchronized memory access and data replication, each processing node maintains its own local processing environment and memory resources. The intelligent network device determines which processing node should handle each network flow and routes packets exclusively to that node, enabling efficient local processing without the memory overhead of multi-node coordination.
Data Source
AI summary
Technologies for aligning network flows to processing resources include a computing device having multiple processing nodes, a network switch, and a network controller operating in a software-defined network. Each processing node of the computing device may include a processor, memory, and network adapter. The network switch may receive a network packet and request forwarding information from the network controller. The network controller may determine flow information corresponding to the network packet that indicates the application targeted by the network packet and the processing node executing the application. The flow information may be transmitted to the computing device, which may program a flow filter in the network adapter of the processing node executing the application. The network controller may also transmit forwarding information to the network switch, which may forward the received network packet to the network adapter of the processing node executing the application based on the forwarding information.


