Multicast Queue Filter Configuration for SDN Packet Handling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In Software-Defined Networking (SDN) environments, multicast packet handling is limited by underlying hardware, leading to poor throughput and performance due to the use of a single queue for processing multicast packets, which results in tail drop and undesirable processing overhead.
Innovation Solution
Configuring queue filters based on outer multicast group addresses to assign ingress encapsulated multicast packets to multiple NIC queues, allowing for parallel processing and improving receive throughput by leveraging multiple CPU cores.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a single queue is used for processing multicast packets, then device complexity is reduced, but network throughput deteriorates due to tail drop and processing limitations
Solution Approach 1:
The patent segments the single multicast packet processing queue into multiple queues (first queue and second queue), each handling different outer multicast group addresses. This segmentation allows parallel processing of multicast packets across multiple CPU cores, thereby increasing network throughput while distributing the processing load to avoid tail drop issues associated with a single queue.
Solution Approach 2:
The patent introduces a new dimension to queue management by configuring queue filters that match outer multicast group addresses. This adds a filtering dimension based on multicast group identification, allowing packets to be routed to appropriate queues dynamically. This dimensional addition enables parallel processing paths without requiring complete redesign of the queue architecture.
2Productivity
If multiple queues are configured for multicast packet processing, then network throughput is improved through parallel processing, but processing overhead increases due to queue filter configuration and management
Solution Approach 1:
The patent performs preliminary action by pre-configuring queue filters with outer multicast group address mappings before multicast packet processing begins. The host proactively sets up the queue filter configuration based on expected multicast traffic patterns, so that when multicast packets arrive, they can be quickly routed to the appropriate queues without requiring complex runtime decisions. This preliminary setup reduces processing overhead during actual packet handling.
3Productivity
If queue filters are configured based on outer multicast group addresses, then multicast packet handling efficiency is improved, but device complexity increases due to dynamic filter configuration and removal
Solution Approach 1:
The patent implements dynamic queue filter configuration where the host can add or remove queue filters based on actual multicast traffic requirements. When a new outer multicast group address is detected in incoming packets, the host dynamically creates a corresponding queue filter. When no more packets with a particular outer multicast group address are received, the associated queue filter is automatically removed. This dynamic approach optimizes resource usage while maintaining efficient multicast packet handling.
Data Source
AI summary
Example methods are provided for a host to perform queue filter configuration for multicast packet handling in a software-defined networking (SDN) environment. One example method may comprise the host generating and sending a request to join an outer multicast group address to one or more multicast-enabled network devices; and configuring a queue filter based on the outer multicast group address. In response to detecting an ingress encapsulated multicast packet that includes an outer header addressed to the outer multicast group address, the host may assign the ingress encapsulated multicast packet to a particular NIC queue from the multiple NIC queues based on the queue filter; and retrieving, from the particular NIC queue, the ingress encapsulated multicast packet to generate and send a decapsulated multicast packet to a virtualized computing instance.


