In-Service Software Upgrade via Virtual Machine Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional software upgrades for network devices require downtime, leading to network outages and increased hardware complexity and costs due to redundancy, and result in software version discrepancies across devices.

Innovation Solution

Implementing in-service software upgrade (ISSU) using virtualization technology, where a new virtual machine is created to migrate software versions while maintaining ongoing network service, allowing for simultaneous conversion of data-path modules without rebooting, and utilizing type, length, and offset (TLO) metadata for seamless internal state conversion.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional software upgrade method is used, then software version is updated, but network service interruption occurs

Engineering Contradiction:
Improvenetwork service continuityVSAvoidsoftware upgrade downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

A second virtual machine is created and the new software version is installed in advance before the upgrade is activated. This preliminary preparation allows the system to switch to the new version without interruption, as the new software is ready to take over immediately when the switch occurs.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses a virtual machine as an intermediary layer between the hardware and the software. By creating a second virtual machine that can run the new software version while the first virtual machine continues to handle network traffic, the system enables seamless software updates without service interruption.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If hardware redundancy is implemented to avoid service interruption, then network service continuity is maintained, but hardware complexity and cost increase

Engineering Contradiction:
Improvenetwork service continuityVSAvoidhardware redundancy complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of creating physical hardware copies for redundancy, the patent creates a virtual copy (second virtual machine) that can run the new software version. This virtual copying approach maintains service continuity during upgrades without the hardware complexity and costs associated with physical redundancy.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent transitions from physical hardware redundancy to virtual machine redundancy, moving the redundancy concept to a different dimension (virtualization layer). This allows multiple software versions to coexist on the same hardware platform, eliminating the need for additional hardware resources.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If rolling upgrade is performed to maintain service, then software version is updated, but version discrepancies occur across devices

Engineering Contradiction:
Improvenetwork service continuityVSAvoidsoftware version consistency
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The system uses a manager that can coordinate upgrades across multiple network devices, monitoring the upgrade status and ensuring all devices transition to the same software version. This feedback mechanism prevents version discrepancies by controlling the upgrade process centrally and ensuring consistency across the network.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10372437B2Methods and apparatus for performing in-service software upgrading for a network device using system virtualization
Publication Date: 2019.08.06 TELLABS OPERATIONS
  • US10372437B2 patent drawing
  • US10372437B2 patent drawing
  • US10372437B2 patent drawing

AI summary

A method and/or network system is able to perform an in-service software upgrade (“ISSU”) using virtualization technology while ongoing network service is maintained. After receipt of an upgrade signal such as a command of software upgrade, a new or second virtual machine (“VM”) is created in response to the upgrade signal. After downloading the new version of program to the second VM while maintaining the first version of program running on the first VM, the process for providing network management begins to migrate from the first version of program to the new version of program. The process simultaneously facilitates ISSU for a data-path module such as a line card to convert from the previous version of software to the new version of the software.