Multicast Packet Buffer Memory Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High-speed packet switches face inefficiencies in buffer memory allocation for multicast packets, leading to memory wastage as they allocate buffer space proportional to the number of replicas, rather than just a single copy, complicating the handling and forwarding of multicast traffic.
Innovation Solution
Implementing a shared buffer system where packet processing logic allocates space for a single copy of a multicast packet and replicates it for multiple egress interfaces, maintaining a count of transmitted copies to efficiently manage and release buffer space, allowing for accurate tracking and reuse.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If buffer space is allocated proportional to the number of multicast packet replicas, then each egress interface can transmit its copies independently, but memory wastage increases significantly
Solution Approach 1:
The patent merges multiple buffer allocations for multicast packet replicas into a single shared buffer space. Instead of allocating separate buffer spaces for each replica destined for different egress interfaces, the system allocates one buffer space to store the original multicast packet and uses replica descriptors to manage multiple virtual copies, thereby eliminating redundant memory usage while maintaining independent transmission capabilities.
Solution Approach 2:
The patent creates virtual copies of the multicast packet through replica descriptors rather than physical memory copies. Each replica descriptor contains metadata (egress interface identifier, quality of service level, sequence number) that enables the system to simulate multiple packet copies without actually duplicating the packet data in memory, thus reducing buffer memory wastage while preserving multicast functionality.
2Loss of substance
If a single buffer space is allocated for the original multicast packet, then memory efficiency improves, but tracking and managing multiple transmitted copies becomes more complex
Solution Approach 1:
The patent segments the buffer management function into two distinct components: (1) a single buffer space for storing the original multicast packet, and (2) multiple replica descriptors for tracking transmitted copies. This segmentation allows the system to maintain simple buffer storage while managing copy tracking through structured descriptor data that contains egress interface identifiers, quality of service levels, and sequence numbers.
Solution Approach 2:
The patent introduces replica descriptors as intermediary data structures between the single buffer space and multiple egress interfaces. These descriptors act as mediators that contain all necessary information (egress interface identifier, quality of service level, sequence number) to manage packet transmission and tracking without requiring complex buffer management logic, thus reducing overall system complexity while enabling efficient multicast handling.
3Ease of operation
If multiple buffer spaces are allocated for multicast packets, then buffer release accounting becomes simpler, but memory availability for other packets decreases
Solution Approach 1:
The patent makes the single buffer space universal by allowing it to serve multiple purposes: storing the original multicast packet, and serving as the source for multiple virtual replicas destined for different egress interfaces. The replica descriptors reference this single buffer space, enabling the same memory region to be shared across multiple transmission paths without requiring additional buffer allocations, thus maximizing memory availability while maintaining proper release accounting through descriptor management.
Data Source
AI summary
Communication apparatus includes multiple interfaces connected to a packet data network. A memory is coupled to the interfaces and configured as a buffer to contain packets received through ingress interfaces while awaiting transmission to the network via respective egress interfaces. Packet processing logic is configured, upon receipt of a multicast packet through an ingress interface, to identify a number of the egress interfaces through which respective copies of the multicast packet are to be transmitted, to allocate a space in the buffer for storage of a single copy of the multicast packet, to replicate and transmit multiple copies of the stored copy of the multicast packet through the egress interfaces, to maintain a count of the replicated copies that have been transmitted, and when the count reaches the identified number, to release the allocated space in the buffer.


