Dynamic Memory Allocation for Packet Processing Subsystems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Packet processing devices with independent datapath and control path memories suffer from memory usage inefficiency, as one subsystem may not utilize all its memory while the other subsystem requires more, leading to suboptimal memory allocation and performance.
Innovation Solution
A packet processing system that allows dynamic allocation of a portion of the datapath memory to the control path subsystem or control path memory to the datapath subsystem, enabling the control path subsystem to use datapath memory if needed and vice versa, with a memory allocation element ensuring that both portions are never allocated concurrently.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If independent memory partition is used between datapath and control path subsystems, then each subsystem has dedicated memory space, but memory usage efficiency deteriorates when one subsystem does not need all its memory while the other needs more
Solution Approach 1:
The patent implements a memory allocation element that enables memory resources to serve multiple purposes. The datapath memory can be allocated to the control path subsystem and vice versa, allowing the same physical memory resources to fulfill different functional requirements based on system needs, thereby improving overall memory utilization efficiency
Solution Approach 2:
The patent introduces dynamic memory allocation through a memory allocation element that can adjust memory distribution between datapath and control path subsystems based on real-time requirements. This dynamic reconfiguration capability allows the system to optimize memory usage efficiency while maintaining adequate memory availability for both subsystems
2Device complexity
If fixed memory allocation is used for datapath and control path subsystems, then memory allocation is simple, but system adaptability deteriorates when deployment location changes require different memory configurations
Solution Approach 1:
The patent implements dynamic memory allocation that allows the system to adapt to different deployment scenarios. The memory allocation element can reconfigure memory distribution between subsystems based on whether the device is deployed at network edge or core, providing deployment flexibility without requiring complete hardware redesign
Solution Approach 2:
The memory allocation element serves as a universal interface that manages memory resources for both datapath and control path subsystems. This universal memory management approach allows the same memory pool to be dynamically assigned to different subsystems based on deployment requirements, enhancing system versatility
Data Source
AI summary
A packet processing system having a control path memory of a control path subsystem and a datapath memory of a datapath subsystem. The datapath subsystem stores packet data of incoming packets and the control path subsystem performs matches of a subset of packet data, or a hash of the packet data, against the contents of a the control path memory in order to process the packets. The packet processing system enabling a portion of the datapath memory to be used by the control subsystem if needed or a portion of the control path memory to be used by the datapath subsystem if needed.


