Multicast Packet Cache Architecture for Network Switch Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network devices, such as switches and routers, face high throughput demands when handling multicast packets, requiring frequent reads from packet memory, which can lead to inefficiencies in processing and forwarding.

Innovation Solution

Implementing a packet cache system that stores multicast packet data, allowing subsequent instances to be forwarded from the cache without re-accessing the packet memory, reducing the number of memory reads and improving throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a network switch reads packets from packet memory for each port forwarding, then packet processing can be performed, but the throughput is limited due to frequent memory accesses

Engineering Contradiction:
Improvepacket forwarding throughputVSAvoidtime for repeated packet memory reads
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by reading the packet from packet memory once and storing it in a buffer before forwarding to multiple ports. This pre-loading of packet data eliminates the need for repeated memory reads during the forwarding process, thereby resolving the contradiction between throughput and memory access time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a buffer as an intermediary between packet memory and the forwarding process. This buffer temporarily holds packet data, allowing the network switch to read packets once from memory, store them in the buffer, and then forward multiple copies to different ports without repeatedly accessing the packet memory, thus improving throughput while reducing memory access time.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If packet memory is used to store packets during processing, then packets can be handled, but the memory must handle high throughput rates requiring frequent reads

Engineering Contradiction:
Improvepacket handling capacityVSAvoidmemory access requirements
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the packet handling process into distinct phases: reading packets from packet memory once, storing them in an intermediate buffer, and then forwarding to multiple ports. This segmentation separates the memory access operation from the forwarding operations, allowing packet memory to be accessed fewer times while maintaining high packet handling capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The buffer serves as an intermediary that decouples the packet memory from the forwarding process. It absorbs the complexity of repeated reads by providing local copies of packet data, thereby reducing the memory access requirements while maintaining high packet handling capacity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If multicast packets are forwarded to multiple ports, then coverage is improved, but processing efficiency decreases due to repeated memory accesses

Engineering Contradiction:
Improvemulticast packet distributionVSAvoidprocessing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-reading the packet from packet memory and storing it in a buffer before the multicast forwarding process. This allows the packet to be distributed to multiple ports efficiently without repeated memory accesses, thereby improving processing efficiency while maintaining multicast distribution capability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The buffer acts as an intermediary that enables efficient multicast forwarding. It stores the packet data once and allows multiple copies to be read from the buffer for different ports, eliminating repeated memory accesses and improving processing efficiency while maintaining adaptability for multicast distribution.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10015100B1Network device architecture using cache for multicast packets
Publication Date: 2018.07.03 MARVELL ISRAEL (M L S L) LTD
  • US10015100B1 patent drawing
  • US10015100B1 patent drawing
  • US10015100B1 patent drawing

AI summary

A packet received via a network is stored in a packet memory. Information in a header of the packet is analyzed to determine multiple ports to which the packet is to be forwarded. The packet is read from the packet memory in connection with transmitting the packet via a first port among the multiple ports. Packet data corresponding to the packet is stored in a packet cache different than the packet memory. In connection with forwarding one or more instances of the packet to ports among the multiple ports, the packet data is read, based on information included in a packet descriptor associated with the packet, from the packet cache. Ones of the one or more instances of the packet are forwarded, using the data corresponding to the packet read from the packet cache and without further accessing the packet memory, to respective one or more of the multiple ports.