Shared-Memory Firewall SVM High Availability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High availability (HA) solutions are not currently available for shared-memory-based service virtual machines (SVMs), leading to potential data packet redirection halts and dropped traffic if an SVM fails.

Innovation Solution

Implementing HA for shared-memory-based SVMs by configuring a pair of SVMs to provide redundancy, where one SVM is active and the other is standby, with a hypervisor managing shared memory devices and agent processes to ensure continuous data traffic handling, and using a heartbeat link to detect failures and maintain service availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single SVM is used to provide network services, then the system structure is simple, but the system reliability deteriorates because data packet redirection halts and traffic is dropped if the SVM fails

Engineering Contradiction:
Improvesystem availabilityVSAvoidSVM configuration
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates a standby copy of the SVM with identical configuration and shared memory access. When the active SVM fails, the standby SVM is already prepared and can immediately take over without requiring system reconfiguration or traffic redirection changes, thus maintaining reliability while keeping the copying mechanism simple

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The standby SVM is pre-configured with all necessary settings, rules, and shared memory access permissions before any failure occurs. This preliminary preparation ensures that failover can happen immediately without delay for configuration or setup, maintaining system availability while avoiding complex real-time reconfiguration

Inventive Principle:
Principle #10Preliminary action

2Reliability

If HA mechanisms are implemented for guest VMs with host failure, then system reliability improves, but the complexity of failure recovery increases due to IP address modification and migration overhead

Engineering Contradiction:
Improveservice continuityVSAvoidfailover process
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the failover capability into the existing SVM architecture by using shared memory that is already accessible by multiple SVMs. The standby SVM shares the same memory space and configuration as the active SVM, eliminating the need for separate IP address modification and complex migration processes required in traditional guest VM HA solutions

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The standby SVM is a prepared copy with identical shared memory access rights and configuration. When failover is needed, the standby simply becomes active without requiring IP address changes or complex state migration, thus improving service continuity while keeping the failover process simpler than traditional VM migration

Inventive Principle:
Principle #26Copying

3Measurement precision

If the hypervisor needs to know the active status of each SVM for packet queuing, then packet routing precision improves, but the hypervisor complexity and information management overhead increase

Engineering Contradiction:
Improvepacket routing accuracyVSAvoidhypervisor management
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The standby SVM is configured as a copy with identical shared memory access permissions and packet processing capabilities. Both active and standby SVMs can independently access the same shared memory queues, eliminating the need for the hypervisor to track which SVM is active for routing decisions, thus maintaining routing precision while reducing hypervisor complexity

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The SVM pair autonomously manages its own active/standby status through shared memory access rights without requiring hypervisor intervention for status tracking. The hypervisor simply queues packets to the shared memory device, and the active SVM processes them without needing explicit status information from the hypervisor, reducing information management overhead

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11409621B2High availability for a shared-memory-based firewall service virtual machine
Publication Date: 2022.08.09 VMWARE INC
  • US11409621B2 patent drawing
  • US11409621B2 patent drawing
  • US11409621B2 patent drawing

AI summary

A method for a shared-memory-based SVM to provide high availability of service is disclosed. In an embodiment, an agent process of the SVM receives a signal that one or more data packets have been queued in a shared memory device of one or more shared memory devices. Upon receiving the signal, the agent process determines whether the SVM has been designated as active for the shared memory device, and if it has, the agent process reads the one or more data packets from the shared memory device. As the data packets are read from the shared memory device: for each data packet, of the one or more data packets read from the shared memory device: the agent process determines whether an indication that the packet is to be transmitted to its destination is received, and if the indication is received, the packet is placed back to the shared memory device.