Methods and apparatus for performing in-service software upgrade for a network device using system virtulization
First Claim
1. A method for program conversion for a network system, comprising:
- creating a second virtual machine (“
VM”
) running on a network device in response to a program modification signal;
building a second database having a second data structure and a second metadata coded in binary format in the second VM in accordance with requirements relating to a new version of software, wherein building a second database includes establishing a data structure containing a value field, a length field, and an offset field, and activating an in-service software upgrade (“
ISSU”
) manager and a virtual machine manager (“
VMM”
) for allowing the second VM running concurrently with the first VM on the network system;
accessing a first database having a first data structure in a first VM based on current version of software while the second database is being built;
generating binary information for the second metadata in response to a first metadata of the first database, wherein generating binary information for the second metadata includes loading first binary data from the first metadata of the first database and converting the first binary data to second binary data based on the new version of the software, wherein converting the first binary data includes converting the first binary data having a first binary format to second binary data with a second binary format based on the new version of the software; and
switching over from accessing the first database having the first data structure hosted by the first VM to the second database having the second data structure hosted by the second VM when a switchover command is received from the ISSU manager.
5 Assignments
0 Petitions
Accused Products
Abstract
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.
-
Citations
15 Claims
-
1. A method for program conversion for a network system, comprising:
-
creating a second virtual machine (“
VM”
) running on a network device in response to a program modification signal;building a second database having a second data structure and a second metadata coded in binary format in the second VM in accordance with requirements relating to a new version of software, wherein building a second database includes establishing a data structure containing a value field, a length field, and an offset field, and activating an in-service software upgrade (“
ISSU”
) manager and a virtual machine manager (“
VMM”
) for allowing the second VM running concurrently with the first VM on the network system;accessing a first database having a first data structure in a first VM based on current version of software while the second database is being built; generating binary information for the second metadata in response to a first metadata of the first database, wherein generating binary information for the second metadata includes loading first binary data from the first metadata of the first database and converting the first binary data to second binary data based on the new version of the software, wherein converting the first binary data includes converting the first binary data having a first binary format to second binary data with a second binary format based on the new version of the software; and switching over from accessing the first database having the first data structure hosted by the first VM to the second database having the second data structure hosted by the second VM when a switchover command is received from the ISSU manager. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A non-transitory computer-readable storage medium for updating program to a network router, comprising computer-readable instructions sorted in the storage medium executable by a processor to:
-
create a new virtual machine (“
VM”
) running on the network router in response to a program update signal;build a new database in the new VM in accordance with requirements relating to a new version of software, wherein building a new database includes establishing a data structure containing a value field, a length field, and an offset field, and activating an in-service software upgrade (“
ISSU”
) manager and a virtual machine manager (“
VMM”
) for allowing the new database running concurrently with an old VM on the network router;continue routing network traffics according to an old database having an old data structure in an old VM based on old version of software while the new database is being built; generate binary information for a new metadata in response to an old metadata of the old database, wherein generating binary information includes loading old binary data from the old metadata and converting old binary data to new binary data based on the new version of the software, wherein converting old binary data includes converting old binary data having an old binary format to new binary data with a new binary format based on the new version of the software; and gradually migrate network service from the old VM to the new VM according to a predefined resource allocation schedule when a switchover command is received from the ISSU manager. - View Dependent Claims (8, 9, 10, 11)
-
-
12. An apparatus for in-service software upgrade (“
- ISSU”
) in a network system, comprising;a central processing unit (“
CPU”
) capable of processing instruction;a memory coupled to the CPU and able to store microcode; and a network processor (“
NP”
) coupled to the CPU, wherein the NP is capable of executing the microcode for;providing network traffic routing based on a first database organized in a first data structure in a first virtual machine (“
VM”
) operating on the network system;creating a second VM operating on the network system in response to a program modification signal; generating a second database having a second data structure and a second metadata coded in binary format in the second VM based on a new version of software while current network traffic is served in accordance with current version of software, wherein generating the second database includes establishing a data structure containing a value field, a length field, and an offset field, and activating an in-service software upgrade (“
ISSU”
) manager and a virtual machine manager (“
VMM”
) for allowing the second VM running concurrently with the first VM on the network system, wherein generating the second metadata includes loading first binary data from a first metadata of the first database and converting the first binary data to second binary data based on the new version of the software, wherein converting the first binary data includes converting the first binary data having a first binary format to second binary data with a second binary format based on the new version of the software; andfacilitating the ISSU for at least one data-path module in response to the new version program. - View Dependent Claims (13, 14, 15)
- ISSU”
Specification