Virtual Router ISSU with Duplicate Packet Forwarding Components
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Ease of manufacture
If compute node transitions offline for software update, then software can be upgraded, but customer traffic flow is interrupted
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.
3Quantity of substance
If original components are deallocated during ISSU, then memory is freed, but flow state information must be rebuilt
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.
Data Source
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.


