Packet Map Bit-Vector Storage for Ethernet Switch Memory Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional packet forwarding mechanisms in Ethernet switches require significant memory space due to the need to store pointers for multi-cast and broadcast packets across multiple output ports, leading to inefficient bandwidth usage and potential out-of-order packet transmission.
Innovation Solution
The implementation of a frame map system that uses bit maps to store packet information, allowing for efficient packet forwarding while maintaining First-In-First-Out (FIFO) rules, reducing memory usage by eliminating the need for direct pointer storage in output queues.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If pointers of multi-cast packets are copied to every output queue, then packet forwarding can be implemented, but massive amounts of storage memory are required
Solution Approach 1:
The patent segments the storage structure by creating separate bit maps for different packet types (multi-cast, broadcast, unicast) and different output ports. Instead of storing pointers in all output queues, it uses a segmented bit map structure where each segment tracks packets for specific port types, reducing overall memory requirements while maintaining forwarding capability.
Solution Approach 2:
The patent transitions from a one-dimensional pointer storage approach to a two-dimensional bit map structure. The bit maps use bit-level representation where each bit indicates the presence of a packet type for a specific output port, converting the storage problem from storing actual pointer data to storing compact presence information, thereby reducing memory consumption.
2Reliability
If dedicated multi-cast packet queue is created, then all multi-cast packet information can be stored, but out-of-order hazards occur
Solution Approach 1:
The patent segments the packet tracking mechanism into separate bit maps for multi-cast, broadcast, and unicast packets. Each segment independently tracks its packet type, allowing the system to maintain FIFO order within each segment while still providing comprehensive packet storage and forwarding capability across multiple output ports.
Solution Approach 2:
The patent performs preliminary classification of packets into different types (multi-cast, broadcast, unicast) when they are first received. This preliminary action allows the system to route packets to the appropriate bit map segment, ensuring that packets of the same type are processed in FIFO order while preventing out-of-order hazards that would occur with mixed packet types in a single queue.
3Ease of operation
If packet pointers are stored in output queues, then packet forwarding is simple, but bandwidth is wasted in the packet buffer
Solution Approach 1:
The patent extracts the packet type information from the packet data itself and stores it separately in bit maps. This extraction allows the system to forward packets based on type classification without needing to copy or store the actual packet data in multiple output queues, thereby reducing bandwidth consumption in the packet buffer while maintaining simple forwarding operations.
Solution Approach 2:
Instead of copying packet pointers to multiple output queues as in conventional systems, the patent copies only the compact bit map entries that indicate packet presence. This selective copying of minimal information (single bits rather than full pointers) reduces the bandwidth required in packet buffers while still enabling efficient packet forwarding to the appropriate output ports.
Data Source
AI summary
A packet forwarding mechanism using a packet map is disclosed. The method includes the packet map storing a packet forwarding information of each packet, where the packet map uses a single bit to indicate whether a packet is forwarding through a specific output port. In this way, the packet forwarding information can be stored in a very simple form such that less memory space is required for storing the packet forwarding information.


