IP Library Granted Patent US 9,195,491
Granted Patent B2
US 9,195,491 · App. 13/678,520 · Granted Nov 24, 2015

Migrating middlebox state for distributed middleboxes

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,195,491
App. No.
13/678,520
Granted
Nov 24, 2015
Kind
B2
Abstract

A controller of a network control system for configuring several middlebox instances is described. The middlebox instances implement a middlebox in a distributed manner in several hosts. The controller configures, in a first host, a first middlebox instance to receive a notification from a migration module before a virtual machine (VM) running in the first host migrates to a second host and to send middlebox state related to the VM to the migration module.

Claims (36)

1. A non-transitory machine readable medium of a controller of a network control system for configuring a plurality of middlebox instances to implement a middlebox in a distributed manner in a plurality of hosts, the non-transitory machine readable medium storing sets of instructions for:

configuring, in a first host, a first middlebox instance to:

receive a notification from a migration module before a virtual machine (VM) running in the first host migrates to a second host; and

send middlebox state related to the VM to the migration module,

wherein the migration module migrates the middlebox state to the second host.

2. The non-transitory machine readable medium of claim 1 , wherein the sets of instructions further comprise a set of instructions for:

configuring, in the second host, a second middlebox instance to:

receive the middlebox state related to the VM; and

resume a middlebox service based on the middlebox state.

3. The non-transitory machine readable medium of claim 1 , wherein the migration module migrates the VM to the second host.

4. The non-transitory machine readable medium of claim 1 , wherein the migration module is part of a hypervisor of the first host.

5. A non-transitory machine readable medium storing a distributed middlebox application for execution by at least one processing unit of a host machine, the host machine comprising a migration module that migrates a virtual machine (VM) to another host machine, the distributed middlebox application comprising sets of instructions for:

receiving a notification from the migration module before the migration module migrates the VM to the other host machine;

identifying middlebox state that relates to the VM; and

supplying the identified middlebox state to the migration module,

wherein the migration module subsequently migrates the middlebox state to the other host machine.

6. The non-transitory machine readable medium of claim 5 , wherein the distributed middlebox application at least partially implements a logical middlebox that is part of a logical network.

7. The non-transitory machine readable medium of claim 6 , wherein the logical network includes a set of logical forwarding elements that are implemented in a plurality of managed switching elements.

8. The non-transitory machine readable medium of claim 7 , wherein a managed switching element is running in the hosted machine.

9. The non-transitory machine readable medium of claim 5 , wherein the migration module is part of a hypervisor of the host machine.

10. A non-transitory machine readable medium of a first controller of a network control system for configuring a plurality of middlebox instances to implement a middlebox in a distributed manner in a plurality of hosts, the network control system comprising a plurality of controllers, the non-transitory machine readable medium storing sets of instructions for:

receiving configuration data for configuring, in a first host, a middlebox instance to migrate middlebox state of a virtual machine (VM) to a second host when the VM migrates from the first host to the second host;

identifying a set of other controllers in the network control system that manage the middlebox instance; and

directing the identified set of other controllers to send the configuration data to the middlebox instance.

11. The non-transitory machine readable medium of claim 10 , wherein the configuration data includes a set of instructions for receiving a notification from a migration module of the first host.

12. The non-transitory machine readable medium of claim 11 , wherein the configuration data include a set of instructions for identifying middlebox state that relates to the VM.

13. The non-transitory machine readable medium of claim 12 , wherein the configuration data includes a set of instructions for supplying the identified middlebox state to the migration module.

14. The non-transitory machine readable medium of claim 12 , wherein the network control system is for generating physical control plane data for managing first and second managed forwarding elements that implement forwarding operations associated with a first logical datapath set, wherein the sets of instructions further comprise a set of instructions for converting logical control plane data for the first logical datapath set to universal physical control plane data.

15. The non-transitory machine readable medium of claim 14 , wherein the first controller is a master controller for the first logical datapath set, wherein each of the identified set of other controllers is a master controller for a set of managed forwarding elements that are hosted together with the middlebox instances.

16. A non-transitory machine readable medium of a controller of a network control system for configuring a plurality of middlebox instances to implement a middlebox in a distributed manner in a plurality of hosts, the non-transitory machine readable medium storing sets of instructions for:

configuring, in a first host, a first middlebox instance to:

share a first middlebox state with a second middlebox instance that is configured in a second host; and

send a second middlebox state to a migration module of the first host that subsequently migrates the second middlebox state,

wherein the first middlebox state and the second middlebox state relate to a virtual machine (VM) that is running in the first host.

17. The non-transitory machine readable medium of claim 16 , wherein the migration module migrates the VM to the second host.

18. The non-transitory machine readable medium of claim 16 , wherein the first middlebox state and the second middlebox state do not overlap.

Assignments (2)
MERGER Recorded Jan 27, 2025
From: NICIRA, INC.
To: VMWARE LLC
Reel/Frame 070187/0487 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2013
From: ZHANG, RONGHUA; KOPONEN, TEEMU; THAKKAR, PANKAJ; PADMANABHAN, AMAR; LAMBETH, W. ANDREW; CASADO, MARTIN
To: NICIRA, INC.
Reel/Frame 029740/0816 →