Migrating middlebox state for distributed middleboxes

US9552219B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9552219-B2
Application numberUS-201514942948-A
CountryUS
Kind codeB2
Filing dateNov 16, 2015
Priority dateNov 15, 2011
Publication dateJan 24, 2017
Grant dateJan 24, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

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.

First claim

Opening claim text (preview).

What is claimed is: 1. For a first middlebox element executing on a first host, a method comprising: providing a middlebox service for a logical middlebox to a virtual machine (VM) operating in the first host, wherein the first middlebox element is one of a plurality of middlebox elements executing on a plurality of hosts that implement the logical middlebox to provide the middlebox service to a plurality of VMs operating in the plurality of hosts, the plurality of VMs logically connected through a logical network comprising the logical middlebox; receiving a notification from a migration module before the VM migrates from the first host to a second host; and supplying middlebox state information relating to the VM to the migration module, wherein the migration module subsequently sends the middlebox state information to the second host when the VM migrates to the second host, in order for a second middlebox element executing on the second host to continue providing the middlebox service to the VM operating in the second host. 2. The method of claim 1 , wherein the logical middlebox is one of a load balancer, network address translation, and firewall. 3. The method of claim 1 , wherein the logical network further comprises a set of logical forwarding elements that are implemented in a plurality of managed switching elements that execute on the plurality of hosts. 4. The method of claim 3 , wherein the plurality of VMs and the logical middlebox are logically connected to the logical forwarding elements. 5. The method of claim 1 , wherein the migration module sends the middlebox state information to another migration module operating in the second host. 6. The method of claim 1 , wherein the migration module operates within a hypervisor of the first host. 7. The method of claim 1 , wherein the first and second middlebox elements receive configuration data generated by a same network controller that is further for generating data for configuring managed forwarding elements executing on the plurality of hosts to implement the logical network of which the logical middlebox is a part. 8. The method of claim 1 , wherein the migration module facilitates migration of the VM to the second host. 9. The method of claim 1 , wherein the middlebox service is a first middlebox service, the VM is a first VM, the logical middlebox is a first logical middlebox, the logical network is a first logical network, and the plurality of VMs operating in the plurality of hosts are a first plurality of VMs operating in a first plurality of hosts, the method further comprising providing a second middlebox service for a second logical middlebox to a second VM operating in the first host, wherein the first middlebox element is one of a second plurality of middlebox elements executing on a second plurality of hosts that implement the second logical middlebox to provide the second middlebox service to a second plurality of VMs operating in the second plurality of hosts, the second plurality of VMs logically connected through a second logical network that includes the second logical middlebox. 10. The method of claim 9 further comprising: receiving a notification from the migration module before the second VM migrates from the first host to a third host; and supplying middlebox state information relating to the second VM to the migration module, wherein the migration module subsequently sends the middlebox state information relating to the second VM to the third host when the second VM migrates to the third host. 11. A non-transitory machine readable medium storing a first middlebox element for execution by at least one processing unit of a first host, the middlebox element comprising sets of instructions for: providing a middlebox service for a logical middlebox to a virtual machine (VM) operating in the first host, wherein the first middlebox element is one of a plurality of middlebox elements executing on a plurality of hosts that implement the logical middlebox to provide the middlebox service to a plurality of VMs operating in the plurality of hosts, the plurality of VMs logically connected through a logical network comprising the logical middlebox; receiving a notification from a migration module before the VM migrates from the first host to a second host; and supplying middlebox state information relating to the VM to the migration module, wherein the migration module subsequently sends the middlebox state information to the second host when the VM migrates to the second host, in order for a second middlebox element executing on the second host to continue providing the middlebox service to the VM operating in the second host. 12. The non-transitory machine readable medium of claim 11 , wherein the logical middlebox is one of a load balancer, network address translation, and firewall. 13. The non-transitory machine readable medium of claim 11 , wherein the logical network further comprises a set of logical forwarding elements that are implemented in a plurality of managed switching elements that execute on the plurality of hosts. 14. The non-transitory machine readable medium of claim 13 , wherein the plurality of VMs and the logical middlebox are logically connected to the logical forwarding elements. 15. The non-transitory machine readable medium of claim 11 , wherein the migration module sends the middlebox state information to another migration module operating in the second host. 16. The non-transitory machine readable medium of claim 11 , wherein the migration module operates within a hypervisor of the first host. 17. The non-transitory machine readable medium of claim 11 , wherein the first and second middlebox elements receive configuration data generated by a same network controller that is further for generating data for configuring managed forwarding elements executing on the plurality of hosts to implement the logical network of which the logical middlebox is a part. 18. The non-transitory machine readable medium of claim 11 , wherein the migration module facilitates migration of the VM to the second host. 19. The non-transitory machine readable medium of claim 11 , wherein the middlebox service is a first middlebox service, the VM is a first VM, the logical middlebox is a first logical middlebox, the logical network is a first logical network, and the plurality of VMs operating in the plurality of hosts are a first plurality of VMs operating in a first plurality of hosts, the program further comprising a set of instructions for providing a second middlebox service for a second logical middlebox to a second VM operating in the first host, wherein the first middlebox element is one of a second plurality of middlebox elements executing on a second plurality of hosts that implement the second logical middlebox to provide the second middlebox service to a second plurality of VMs operating in the second plurality of hosts, the second plurality of VMs logically connected through a second logical network that includes the second logical middlebox. 20. The non-transitory machine readable medium of claim 19 , wherein the program further comprises sets of instructions for: receiving a notification from the migration module before the second VM migrates from the first host to a third host; and supplying middlebox state information relating to the second VM to the migration module, wherein the migration module subsequently sends the middlebox state information relating to the second VM to the third host when the second VM migrates to the third host.

Assignees

Inventors

Classifications

  • based on parameters of servers, e.g. available memory or workload (monitoring of computer activity G06F11/30) · CPC title

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

  • Translation of Internet protocol [IP] addresses · CPC title

  • Virtual switches · CPC title

  • Techniques to speed-up the configuration process · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9552219B2 cover?
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 …
Who is the assignee on this patent?
Nicira Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 24 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 10 related publications on this page (citations in our corpus or others sharing the same primary CPC).