Virtual Router ISSU with Duplicate Packet Forwarding Components

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud data centers, software updates for packet forwarding components of virtual routers often require downtime, disrupting network traffic and customer applications, as existing methods necessitate transitioning compute nodes offline to perform upgrades.

Innovation Solution

The In-Service Software Upgrade (ISSU) process dynamically spawns duplicate software components and a second virtual routing agent, synchronizing flow state information in real time, allowing seamless transition of traffic flows without interrupting service, thus enabling upgrades while retaining flow state information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software update is performed by transitioning compute node offline, then software upgrade can be completed, but network traffic flow and customer applications are interrupted

Engineering Contradiction:
Improvesoftware upgrade completenessVSAvoidnetwork traffic interruption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The virtual router is segmented into multiple packet forwarding components (PFCs) that can operate independently. During ISSU, the original PFC continues handling traffic while a new PFC is spawned and synchronized, allowing the upgrade to proceed without interrupting service. This segmentation enables parallel operation of old and new software versions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A new packet forwarding component is spawned and flow state information is synchronized in advance before the actual switchover occurs. This preliminary action ensures that when the transition happens, the new component is already prepared and can immediately take over without causing traffic interruption or loss of flow state information.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If compute node transitions offline for software update, then software can be upgraded, but customer traffic flow is interrupted

Engineering Contradiction:
Improvesoftware update processVSAvoidnetwork service continuity
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

Instead of modifying the existing PFC in place, a complete copy (new PFC) is created with the updated software version. Flow state information is copied and synchronized to this new instance, which then takes over traffic handling. This copying approach allows the original PFC to continue serving traffic during the transition, ensuring service continuity while enabling software updates.

Inventive Principle:
Principle #26Copying

3Quantity of substance

If original components are deallocated during ISSU, then memory is freed, but flow state information must be rebuilt

Engineering Contradiction:
Improvememory availabilityVSAvoidflow state reconstruction time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

Flow state information is synchronized to the new PFC before the original PFC is deallocated. This preliminary synchronization ensures that when the original component is freed, the new component already possesses all necessary flow state information and can continue processing traffic without requiring time-consuming reconstruction of flow tables.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10534601B1In-service software upgrade of virtual router with reduced packet loss
Publication Date: 2020.01.14 JUNIPER NETWORKS INC
  • US10534601B1 patent drawing
  • US10534601B1 patent drawing
  • US10534601B1 patent drawing

AI summary

Techniques are disclosed for performing an In-Service Software Upgrade (“ISSU”) of a first packet forwarding component (PFC) of a virtual router configured to forward traffic flows for a plurality of session instances within a cloud-based data center. The techniques described herein may retain flow state information throughout the ISSU process without interrupting network traffic flow. In one example, a processor of a plurality of compute nodes within the data center receives a request to perform an ISSU of the first PFC. The processor spawns a second virtual routing agent and a second PFC. The second virtual routing agent synchronizes flow state information with a first virtual routing agent for the virtual router. After synchronizing the flow state information, the virtual router switches from forwarding traffic flows by the first PFC to forwarding traffic flows by the second PFC. The ISSU process deactivates the first virtual router and the first PFC.