# US 11,122,129 B2 · Virtual network function migration

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,122,129 B2
- Document ID: US11122129B2
- Status: Granted
- Kind: B2
- Application number: 15/396,441
- Filed: 2016-12-31
- Published: 2018-07-05
- Granted: 2021-09-14
- Earliest claimed: 2016-12-31
- Assignees: Intel Corporation
- Applicants: Intel Corporation
- Inventors: Ben-Zion Friedman; Eliezer Tamir; John J. Browne; Stephen Thomas Palermo
- Web page: https://patentgrep.com/patent/US11122129B2

## CPC

- H04L 67/148: Migration or transfer of sessions
- H04L 12/1403: {Architecture for metering, charging or billing}
- H04L 12/1407: {Policy-and-charging control [PCC] architecture}
- H04L 12/403: with centralised control, e.g. polling
- H04L 12/4641: {Virtual LANs, VLANs, e.g. virtual private networks [VPN] (LAN interconnection over a bridge based backbone H04L12/462; encapsulation techniques H04L12/4633; routing of packets H04L45/00; packet switches H04L49/00; virtual private networks for security H04L63/0272)}
- H04L 41/0806: for initial configuration or provisioning, e.g. plug-and-play
- H04L 41/084: Configuration by using pre-existing information, e.g. using templates or copying from other elements
- H04L 41/0846: {based on copy from other elements}
- H04L 41/0895: Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
- H04L 41/0897: by horizontal or vertical scaling of resources, or by migrating entities, e.g. virtual resources or entities
- H04L 47/125: by balancing the load, e.g. traffic engineering
- H04L 67/131: Protocols for games, networked simulations or virtual reality
- H04M 15/66: {Policy and charging system}
- H04W 4/24: Accounting or billing
- H04L 41/0813: characterised by the conditions triggering a change of settings
- H04L 41/40: using virtualisation of network functions or resources, e.g. SDN or NFV entities
- H04L 41/5003: Managing SLA; Interaction between SLA and QoS
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

There is disclosed in an example, a computer-implemented method of providing network function virtualization orchestration (NFVO), including: determining that a first virtual network function (VNF) instance, providing a virtual service appliance on a virtual network, is to be migrated; provisioning a second VNF instance of the virtual service appliance; cloning configuration data from the first VNF to the second VNF; starting the second VNF without copying traffic data; and halting the first VNF. There is also disclosed an apparatus for performing the method, and a computer-readable medium having instructions for performing the method.

## Claims

### Claim 1

A computing apparatus, comprising:
a processor;
a memory; and
circuitry to:
determine that a first virtual network function (VNF) instance, providing a virtual service appliance on a virtual network, is to be migrated;
provision a second VNF instance of the virtual service appliance;
copy configuration data and billing or statistical data from the first VNF instance to the second VNF instance;
snapshot in-flight traffic data of the first VNF instance;
while the first VNF instance is running, start the second VNF instance with the snapshot of the in-flight traffic data;
after determining that the second VNF instance has reached a state to handle traffic, halt the first VNF instance and begin directing traffic to the second VNF instance without attempting to synchronize in-flight traffic data between the first VNF instance and second VNF instance; and
retroactively correct the billing or statistical data of the second VNF instance.

### Claim 2 (depends on 1)

The computing apparatus of claim 1, wherein the first VNF instance is a network forwarding function.

### Claim 3 (depends on 1)

The computing apparatus of claim 1, wherein the circuitry is further to reconfigure the virtual network.

### Claim 4 (depends on 3)

The computing apparatus of claim 3, wherein reconfiguring the virtual network comprises gradually redirecting traffic from the first VNF instance to the second VNF instance.

### Claim 5 (depends on 3)

The computing apparatus of claim 3, wherein reconfiguring the virtual network comprises performing ordered close of management interface sessions on the first VNF instance.

### Claim 6 (depends on 1)

The computing apparatus of claim 1, wherein the circuitry is to provide smart failover from the first VNF instance to the second VNF instance.

### Claim 7 (depends on 1)

The computing apparatus of claim 1, wherein cloning the configuration data comprises iterating until a page containing the configuration data is clean.

### Claim 8 (depends on 1)

The computing apparatus of claim 1, wherein the configuration data comprises routing tables.

### Claim 9 (depends on 1)

The computing apparatus of claim 1, wherein cloning the configuration data comprises reading the configuration data from a disk.

### Claim 10 (depends on 1)

The computing apparatus of claim 1, wherein the circuitry is further to read static data for the first VNF instance from non-volatile storage.

### Claim 11

One or more tangible, non-transitory computer-readable storage mediums having stored thereon executable instructions to:
determine that a first virtual network function (VNF) instance, providing a virtual service appliance on a virtual network, is to be migrated;
provision a second VNF instance of the virtual service appliance;
copy configuration data and billing or statistical data from the first VNF instance to the second VNF instance;
snapshot in-flight traffic data of the first VNF instance;
while the first VNF instance is running, start the second VNF instance with the snapshot of the in-flight traffic data;
after determining that the second VNF instance has reached a state to handle traffic, halt the first VNF instance and begin directing traffic to the second VNF instance without attempting to synchronize in-flight traffic data between the first VNF instance and second VNF instance; and
retroactively correct the billing or statistical data of the second VNF instance.

### Claim 12 (depends on 11)

The one or more tangible, non-transitory computer-readable mediums of claim 11, wherein the first VNF instance is a network forwarding function.

### Claim 13 (depends on 11)

The one or more tangible, non-transitory computer-readable mediums of claim 11, wherein the instructions are further to reconfigure the virtual network.

### Claim 14 (depends on 13)

The one or more tangible, non-transitory computer-readable mediums of claim 13, wherein reconfiguring the virtual network comprises gradually redirecting traffic from the first VNF instance to the second VNF instance.

### Claim 15 (depends on 13)

The one or more tangible, non-transitory computer-readable mediums of claim 13, wherein reconfiguring the virtual network comprises performing ordered close of management interface sessions on the first VNF instance.

### Claim 16 (depends on 11)

The one or more tangible, non-transitory computer-readable mediums of claim 11, wherein cloning the configuration data comprises iterating until a page containing the configuration data is clean.

### Claim 17 (depends on 11)

The one or more tangible, non-transitory computer-readable mediums of claim 11, wherein the configuration data comprises routing tables.

### Claim 18 (depends on 11)

The one or more tangible, non-transitory computer-readable mediums of claim 11, wherein cloning the configuration data comprises reading the configuration data from a disk.

### Claim 19 (depends on 11)

The one or more tangible, non-transitory computer-readable mediums of claim 11, wherein the instructions are further to read static data for the first VNF instance from non-volatile storage.

### Claim 20

A computer-implemented method, comprising:
determining that a first virtual network function (VNF) instance, providing a virtual service appliance on a virtual network, is to be migrated;
provisioning a second VNF instance of the virtual service appliance;
copying configuration data and billing or statistical data from the first VNF instance to the second VNF instance;
snapshot in-flight traffic data of the first VNF instance;
while the first VNF instance is running, starting the second VNF instance with the snapshot of the in-flight traffic data;
after determining that the second VNF instance has reached a state to handle traffic, halting the first VNF instance and begin directing traffic to the second VNF instance without attempting to synchronize in-flight traffic data between the first VNF instance and second VNF instance; and
retroactively correcting the billing or statistical data of the second VNF instance.

### Claim 21 (depends on 11)

The one or more tangible, non-transitory computer-readable mediums of claim 11, wherein the instructions are to provide smart failover from the first VNF instance to the second VNF instance.

### Claim 22 (depends on 20)

The computer-implemented method of claim 20, wherein the first VNF instance is a network forwarding function.

### Claim 23 (depends on 20)

The computer-implemented method of claim 20, further comprising reconfiguring the virtual network.

### Claim 24 (depends on 23)

The computer-implemented method of claim 23, wherein reconfiguring the virtual network comprises gradually redirecting traffic from the first VNF instance to the second VNF instance.

### Claim 25 (depends on 23)

The computer-implemented method of claim 23, wherein reconfiguring the virtual network comprises performing ordered close of management interface sessions on the first VNF instance.
