Network Appliance Data Plane Upgrade Without Downtime
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Network appliances face disruptions during upgrades, as existing techniques require taking them offline, leading to service degradations and downtime, especially when pipeline memory is full, making concurrent storage of two versions of flow tables impossible.
Innovation Solution
The solution involves separately upgrading the data plane and control plane without restarting the network appliance, allowing the data plane to continue processing packets by clearing its memory during the upgrade, enabling continuous network communication and meeting quality of service obligations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the network appliance is taken offline for upgrading the data plane and control plane, then the upgrade can be performed safely, but network service continuity is disrupted and downtime occurs
Solution Approach 1:
The upgrade process is segmented into distinct phases: data plane upgrade first (with control plane on standby), then control plane upgrade (with data plane already upgraded and running). This segmentation allows each plane to be upgraded independently while the other maintains network operations, eliminating the need to take the entire appliance offline.
Solution Approach 2:
The data plane is upgraded in advance before the control plane upgrade. This preliminary action allows the data plane to be ready and operational before the control plane is upgraded, ensuring that network traffic can continue to be processed without interruption throughout the entire upgrade process.
2Reliability
If two versions of flow tables are stored concurrently in pipeline memory, then rollback capability is enabled, but pipeline memory capacity is exceeded
Solution Approach 1:
The system dynamically manages flow table versions based on the upgrade phase. During data plane upgrade, the old control plane maintains the previous flow table for potential rollback. During control plane upgrade, the new control plane manages the new flow table. This dynamic allocation ensures rollback capability without requiring both versions to reside simultaneously in pipeline memory.
Solution Approach 2:
The control plane acts as an intermediary that manages flow table versions and coordinates between the data plane and pipeline memory. It handles the complexity of version management and rollback logic, allowing the data plane to operate with a single active flow table version while maintaining rollback capability through coordinated control plane actions.
3Reliability
If the packet processing pipeline circuit is halted for pipeline upgrade, then the upgrade can be performed, but packet processing is interrupted
Solution Approach 1:
The upgrade is segmented so that only the control plane is halted during its upgrade phase, while the data plane continues processing packets. This segmentation minimizes the scope of interruption to only control plane functions, maintaining packet processing continuity throughout the upgrade process.
Data Source
AI summary
A network appliance can continue operation at a degraded level during an upgrade that requires less free pipeline memory than other upgrade techniques. The network appliance has a control plane and has a data plane with a packet processing pipeline circuit. Before the upgrade, the control plane has configured the packet processing pipeline circuit to process a network flow. The packet processing pipeline may be halted in order to perform a pipeline upgrade during which the packet processing pipeline circuit's pipeline memory is cleared. The packet processing pipeline circuit is restarted after the pipeline upgrade after which the control plane can reconfigure the packet processing pipeline circuit to process the network flow. The packet processing pipeline circuit can therefore process the network flow after the pipeline upgrade.


