In-Service Software Upgrade (ISSU) is typically implemented in dual Routing Engine (RE), chassis-based modular systems only available in the core of the network, forcing architects and engineers to work around this limitation for ToR switches, many times they have to build a redundant topology with limited protocol support. Now QFX5100 can do a true Topology-Independent In-Service Software Upgrade(TISSU) regardless of the topology and protocols.
In the QFX5100, however, Junos OS runs as a virtual machine (VM) in a KVM hypervisor on top of the switch hardware. Multiple Junos VMs can operate in the hypervisor, enabling software upgrades to be done on a rotation basis. This means software can be upgraded on one VM while another is running the switch; once the upgrade is complete, the VM with the new software takes over while the old VM goes away. No downtime is incurred, just like how it's done in a traditional dual RE system. Third-party services and other applications can also run as VMs, ensuring that other service and upgrades are also hitless.
Figure 1: Software architecture on QFX5100
In the architecture shown in Figure 1, the active Junos VM owns the PFE, FRU, management port and console interface. Each VM has its own software, storage place and file structures. During the ISSU process, the system management function, including control plane, will be “hot moved” to the new (or standby) Junos VM for a seamless software upgrade. The hardware will never reset; all forwarding states, interfaces, kernel, protocol and PFE states, tables, and database are preserved.
From an operational perspective, all the complexity of the virtualized software architecture and process handling of ISSU is hidden from the user. Junos CLI is exactly the same as before. After all, it’s the same Junos, just running as a VM.
So if you need to upgrade your data center software, get ready, set and go—TISSU!