Method and apparatus for advanced statistics collection

US2017078198A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017078198-A1
Application numberUS-201514855263-A
CountryUS
Kind codeA1
Filing dateSep 15, 2015
Priority dateSep 15, 2015
Publication dateMar 16, 2017
Grant date

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.

Systems, methods, and computer-readable media provide for collection of statistics relating to network traffic between virtual machines (VMs) in a network. In an example embodiment, a virtual switch hosted on a physical server provides network address information of VMs deployed on the physical server to a virtual switch controller. The controller collects this network address information from each virtual switch under its control, and distributes the aggregate address information to each switch. In this manner, the controller and each switch within the controller's domain can learn the network address information of each VM deployed on physical servers hosting switches under the controller's control. Each virtual switch can determine a classification of a frame passing through the switch (e.g., intra-server, inter-server and intra-domain, or inter-domain traffic), and statistics relating to the traffic. In an example embodiment, the virtual switch controller can collect the statistics from each switch within its domain.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method comprising: receiving, by a virtual switch, a frame including an original network protocol header that includes a network address, the virtual switch being controlled by a virtual switch controller and deployed on a physical server that also deploys a first virtual machine (VM); performing a lookup in a network address table of the virtual switch to determine that the network address corresponds to a second VM; analyzing the frame to determine one or more statistics relating to network traffic between the first VM and the second VM; and sending the one or more statistics to the virtual switch controller. 2 . The method of claim 1 , further comprising: sending, from the virtual switch to the virtual switch controller, a respective network address of each VM deployed on the physical server; receiving, by the virtual switch from the virtual switch controller, a plurality of network addresses that each correspond to one of a plurality of VMs, the plurality of VMs each deployed on one of a plurality of physical servers that each host one of a plurality of virtual switches controlled by the virtual switch controller; and updating the network address table of the virtual switch with each of the plurality of network addresses. 3 . The method of claim 2 , further comprising: sending, from the virtual switch controller to a second virtual switch controller, the plurality of network addresses; receiving, by the virtual switch controller from the second virtual switch controller, a second plurality of network addresses that each correspond to one of a second plurality of VMs, the second plurality of VMs each deployed on one of a second plurality of physical servers that each host one of a second plurality of virtual switches controlled by the second virtual switch controller; and sending, from the virtual switch controller to each of the plurality of virtual switches controlled by the virtual switch controller, the second plurality of network addresses. 4 . The method of claim 3 , further comprising: receiving, to the virtual switch from the virtual switch controller, the second plurality of network addresses; and updating the network address table of the virtual switch with each of the second plurality of network addresses. 5 . The method of claim 3 , wherein sending the plurality of network addresses and receiving the second plurality of network addresses is performed based at least in part on Border Gateway Protocol (BGP). 6 . The method of claim 1 , wherein the frame is an Ethernet frame, the network protocol header is an Internet Protocol (IP) header, and the network address is an IP address. 7 . The method of claim 1 , further comprising: determining that the frame corresponds to one of intra-server, inter-server and intra-domain, or inter-domain VM-to-VM network traffic. 8 . The method of claim 1 , further comprising: filtering the one or more statistics based on at least one of one or more virtual switch controllers, one or more virtual switches, one or more VMs, or one or more virtual ports. 9 . The method of claim 1 , wherein the frame is received to a downlink of the virtual switch, and the method further comprises: performing a second lookup in a forwarding table of the virtual switch using a first Layer 2 (L2) destination address included in the frame to determine a virtual tunnel network address and a virtual network identifier that corresponds to the first L2 destination address; encapsulating the frame with a virtual network overlay encapsulation that includes a second L2 destination address of a next hop for the frame, an L2 source address of the virtual switch, the virtual tunnel network address, a source network address of the virtual switch, and the virtual network identifier to generate an encapsulated frame; and sending the encapsulated frame from the virtual switch to a physical switch. 10 . The method of claim 1 , wherein the frame further includes a virtual network overlay encapsulation, and the frame is received by an uplink of the virtual switch, and the method further comprises: de-encapsulating the virtual network overlay encapsulation from the frame at the virtual switch to generate a de-encapsulated frame; and sending the de-encapsulated frame from the virtual switch to the first VM. 11 . The method of claim 1 , further comprising: migrating a VM from a first physical server to a second physical server based at least in part on the one or more statistics. 12 . The method of claim 1 , further comprising: displaying a topology of a data center including the physical server, a second physical server on which the second VM is deployed, and one or more physical switches to which the physical server and the second physical server are connected; and displaying a representation of the network traffic between the first VM and the second VM based at least in part on the one or more statistics. 13 . A non-transitory computer-readable storage medium having stored therein instructions that, upon being executed by a processor, cause the processor to: receive, by a virtual switch controller of a network, a plurality of Internet Protocol (IP) addresses each corresponding to one of a plurality of virtual machines (VMs) of the network, each of the plurality of VMs corresponding to one of a plurality of virtual switches controlled by the virtual switch controller; update, by the virtual switch controller, a VM IP address table with the plurality of IP addresses; send, from the virtual switch controller, at least a respective subset of the plurality of IP addresses to each of the plurality of virtual switches; and receive, to the virtual switch controller, one or more statistics relating to network traffic between a first VM of the plurality of VMs and a second VM of the plurality of VMs. 14 . The non-transitory computer-readable storage medium of claim 13 , wherein the instructions upon being executed further cause the processor to: send, from the virtual switch controller, the plurality of IP addresses to a second virtual switch controller; receive, by the virtual switch controller from the second virtual switch controller, a second plurality of IP addresses that each correspond to one of a second plurality of VMs, each of the second plurality of VMs corresponding to one of a second plurality of virtual switches controlled by the second virtual switch controller; update, by the virtual switch controller, the VM IP address table with the second plurality of IP addresses; and send, from the virtual switch controller, the second plurality of IP addresses to the plurality of virtual switches. 15 . The non-transitory computer-readable storage medium of claim 14 , wherein the virtual switch controller and the plurality of virtual switches communicate via a packet interface of the virtual switch controller, and the virtual switch controller and the second virtual switch controller communicate via Border Gateway Protocol (BGP). 16 . The non-transitory computer-readable storage medium of claim 13 , wherein the one or more statistics correspond to one of local, east-bound, or north-bound VM-to-VM network traffic. 17 . A system comprising: a processor; and memory including instructions that, upon being executed by the processor, cause the system to: send, from a virtual switch deployed on the system to a virtual switch controller, a first IP address of a first virtual machine (VM) deployed on the system; receive, by the virtual switch from the virtual switch controller, a se

Assignees

Inventors

Classifications

  • Layer 2 routing, e.g. in Ethernet based MAN's · CPC title

  • Virtual switches · CPC title

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

  • Hypervisor-specific management and integration aspects · CPC title

  • Network integration; Enabling network access in virtual machine instances · 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 US2017078198A1 cover?
Systems, methods, and computer-readable media provide for collection of statistics relating to network traffic between virtual machines (VMs) in a network. In an example embodiment, a virtual switch hosted on a physical server provides network address information of VMs deployed on the physical server to a virtual switch controller. The controller collects this network address information from …
Who is the assignee on this patent?
Cisco Tech Inc
What technology area does this patent fall under?
Primary CPC classification H04L45/745. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Mar 16 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 9 related publications on this page (citations in our corpus or others sharing the same primary CPC).