Multicast Cloud Controller for MPLS Virtual Switches
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current cloud computing systems do not support multicast protocols effectively due to the large control state required, which exceeds host machine capacity and diminishes data center performance.
Innovation Solution
Implementing a multicast cloud controller (MCC) that manages multicast traffic using multiprotocol label switching (MPLS) and top of rack switches, allowing for efficient deletion of flow table entries and rules to handle VM movement and subscription changes, thereby reducing control state requirements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multicast protocols are implemented in cloud systems, then multicast traffic delivery to group of VMs is enabled, but control state requirements exceed host machine capacity and performance diminishes
Solution Approach 1:
The patent extracts the multicast control state from the host machines and relocates it to the MCC (Multicast Cloud Controller). The MCC maintains the global multicast group membership state, while host machines only maintain local flow table entries for active VMs. This extraction resolves the contradiction by enabling multicast delivery without overwhelming host machine capacity with control state.
Solution Approach 2:
The MCC acts as an intermediary between the multicast protocol and the cloud infrastructure. It translates multicast group membership information into MPLS label switching rules that the virtual switches and physical switches can execute. This intermediary role allows multicast functionality to be provided without requiring the host machines to directly handle complex multicast control state.
2Adaptability or versatility
If flow table entries are maintained for each VM in multicast groups, then multicast traffic can be delivered to individual VMs, but the number of flow table entries increases exponentially with the number of VMs
Solution Approach 1:
The patent changes the parameter representation from individual VM identifiers to MPLS labels that represent multicast groups. Instead of maintaining separate flow table entries for each VM-multicast group combination, the system uses MPLS labels to encode group membership, dramatically reducing the number of flow table entries required while maintaining the ability to deliver to individual VMs.
Solution Approach 2:
The flow table entries in the virtual switches are designed to be multi-functional, handling both unicast and multicast traffic using the same forwarding mechanism. The MPLS labels serve multiple purposes: identifying the destination VM, indicating multicast group membership, and specifying the appropriate forwarding action. This universality reduces the overall complexity of the flow table.
3Ease of operation
If multicast control state is maintained on host machines, then local multicast management is simplified, but host machine capacity is exceeded and data center performance diminishes
Solution Approach 1:
The patent segments the multicast control functionality into two parts: global control state management handled by the MCC, and local forwarding decisions handled by the virtual switches. This segmentation allows each component to focus on its specific role, with the MCC managing overall group membership and the virtual switches handling local packet forwarding, thereby maintaining ease of operation while preserving data center performance.
Data Source
Figure 1A~1B
Figure 2
Figure 3A~3C
AI summary
A multicast cloud controller ("MCC") in a cloud system implements a process to manage multicast traffic in a cloud network. The MCC is coupled to at least one virtualized server for hosting one or more virtual machines ("VM"), wherein the virtualized server comprises at least one virtual switch ("VS") that supports multiprotocol label switching (MPLS) and the virtual switch is coupled to a top of rack switch ("TORS") that supports MPLS. MPLS is utilized to support multicast data traffic in the cloud system such that the system and method reduces state and is scalable.