Virtual Packet Switching Device Upgrade Without Downtime

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Upgrading packet switching devices often requires taking them offline, leading to packet loss and service disruptions, which negatively impacts service provider availability and customer agreements.

Innovation Solution

Implementing virtual machines within a single physical packet switching device to create multiple virtual devices, allowing for seamless version changes without restarting or adding hardware, by using virtual routers and processing contexts to manage forwarding information bases and packet processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the packet switching device is taken offline for software upgrades, then the software version can be updated, but packet loss occurs and network availability decreases

Engineering Contradiction:
Improvenetwork availabilityVSAvoiddowntime during upgrade
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the packet switching device into multiple virtual machines (VMs), each capable of running independently with different software versions. This segmentation allows one VM to be upgraded while others continue operating, eliminating the need to take the entire device offline and preventing packet loss during upgrades.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a preliminary action by creating a standby virtual machine with the upgraded software version before taking down the active VM. This allows the system to switch to the pre-prepared upgraded VM without interruption, ensuring continuous packet forwarding and maintaining network availability during the upgrade process.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If multiple virtual machines are implemented on the same hardware, then hardware requirements are reduced and upgrade flexibility increases, but device complexity increases

Engineering Contradiction:
Improvesoftware version flexibilityVSAvoidvirtual machine management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent makes the hardware platform universal by designing it to support multiple virtual machines with different software versions simultaneously. This multi-functionality allows the same physical hardware to run various operating versions, enabling flexible upgrades and A/B testing without additional hardware requirements.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces a virtualization layer as an intermediary between the physical hardware and the packet switching software. This intermediary manages the complexity of running multiple VMs by handling resource allocation, isolation, and switching between versions, thereby simplifying the overall system management despite the underlying complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9596175B2Virtual machines in a packet switching device
Publication Date: 2017.03.14 CISCO TECHNOLOGY INC
  • US9596175B2 patent drawing
  • US9596175B2 patent drawing
  • US9596175B2 patent drawing

AI summary

In one embodiment, a packet switching device creates multiple virtual packet switching devices within the same physical packet switching device using virtual machines and sharing particular physical resources of the packet switching device. One embodiment uses this functionality to change the operating version (e.g., upgrade or downgrade) of the packet switching device by originally operating according to a first operating version, operating according to both a first and second operating version, and then ceasing operating according to the first operating version. Using such a technique, a packet switching device can be upgraded or downgraded while fully operating (e.g., without having to reboot line cards and route processing engines).