IP Library Granted Patent US 9,225,550
Granted Patent B2
US 9,225,550 · App. 13/530,031 · Granted Dec 29, 2015

Switch monitoring statistics gathering at servers and gateways for overlay networks

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,225,550
App. No.
13/530,031
Granted
Dec 29, 2015
Kind
B2
Abstract

In one embodiment, a system includes a plurality of overlay-capable devices, each overlay-capable device having an interface adapted for terminating and/or originating tunnels in an overlay network with other overlay-capable devices, logic adapted for creating statistics about overlay-encapsulated packets which are received by or sent by the overlay-capable device, logic adapted for accumulating the statistics, and logic adapted for storing the statistics in an accessible memory of the overlay-capable device. In another embodiment, a method for generating statistics about encapsulated packets within a virtual overlay network includes creating statistics about overlay-encapsulated packets which are received by or sent by each overlay-capable device in an overlay network, accumulating the statistics for each overlay-capable device through which the overlay-encapsulated packets passed, and storing the statistics in an accessible manner.

Claims (97)

1. A system, comprising:

a plurality of overlay-capable devices, each overlay-capable device comprising:

an interface configured to terminate and/or originate tunnels in an overlay network with other overlay-capable devices;

a processor configured to perform logic;

a memory accessible to the overlay-capable device;

logic configured to create statistics about overlay-encapsulated packets received by the overlay-capable device by counting events associated with de-encapsulation of one or more inner packets from each overlay-encapsulated packet that is received by the overlay-capable device, the statistics comprising:

a number of inner packets de-encapsulated from each overlay-encapsulated packet; and

a size of each inner packet de-encapsulated from the overlay-encapsulated packets;

logic configured to record the statistics with a virtual network identifier and a tunnel identifier associated with the overlay-encapsulated packet;

logic configured to accumulate the statistics;

logic configured to maintain a table indexed for the virtual network identifier and the tunnel identifier, the table comprising:

the virtual network identifier;

the tunnel identifier; and

statistic bucket identifiers pointing to locations where statistics associated with the virtual network identifier and the tunnel identifier are stored; and

logic configured to store the statistics in the accessible memory of the overlay-capable device.

2. The system as recited in claim 1 , wherein the statistics are stored in the memory accessible to the overlay-capable device which created the statistics, and wherein the overlay-capable device is at least one of: an overlay network gateway, an overlay-capable server running a hypervisor, or an overlay-capable network interface card (NIC).

3. The system as recited in claim 1 , wherein the logic configured to create the statistics comprises logic configured to count occurrences of certain predetermined events.

4. The system as recited in claim 1 , further comprising:

logic configured to count events associated with encapsulation of one or more inner packets into each overlay-encapsulated packet that is sent by the overlay-capable device, the statistics comprising:

a number of inner packets encapsulated into the overlay-encapsulated packet; and

a size of each inner packet encapsulated into the overlay-encapsulated packet; and

logic configured to record the statistics with a virtual network identifier and a tunnel identifier associated with the overlay-encapsulated packet.

5. The system as recited in claim 1 , further comprising:

logic configured to correlate statistics associated with an overlay-encapsulated packet with statistics associated with one or more inner packets thereof.

6. The system as recited in claim 1 , further comprising:

logic configured to correlate statistics associated with each overlay network that utilizes a first tunnel with statistics associated with the first tunnel.

7. The system as recited in claim 1 , further comprising logic configured to perform at least one of: meter traffic flow on an overlay network based on statistics associated with the overlay network, or meter traffic flow across a tunnel based on statistics associated with the tunnel.

8. A method comprising:

creating statistics about overlay-encapsulated packets which are received by or sent by at least one overlay-capable device in an overlay network;

recording the statistics with a virtual network identifier and a tunnel identifier associated with at least one overlay-encapsulated packet for which the statistics are created;

maintaining a table indexed for the virtual network identifier and the tunnel identifier, the table comprising:

the virtual network identifier;

the tunnel identifier; and

statistic bucket identifiers pointing to locations where statistics associated with the virtual network identifier and the tunnel identifier are stored;

accumulating the statistics for at least one overlay-capable device through which the overlay-encapsulated packets passed; and

storing the statistics in an accessible manner.

9. The method as recited in claim 8 , wherein the statistics are stored in a memory of an overlay-capable device which created the statistics, and wherein the overlay-capable device is at least one of: an overlay network gateway, an overlay-capable server running a hypervisor, or an overlay-capable network interface card (NIC).

10. The method as recited in claim 8 , wherein creating the statistics comprises:

counting events associated with de-encapsulation of one or more inner packets from an overlay-encapsulated packet.

11. The method as recited in claim 8 , wherein creating the statistics comprises:

counting events associated with encapsulation of one or more inner packets into an overlay-encapsulated packet.

12. The method as recited in claim 8 , further comprising at least one of:

correlating statistics associated with an overlay-encapsulated packet with statistics associated with one or more inner packets thereof; or

correlating statistics associated with each overlay network that utilizes a first tunnel with statistics associated with the first tunnel.

13. The method as recited in claim 8 , further comprising at least one of:

metering traffic flow on an overlay network based on statistics associated with the overlay network; or

metering traffic flow across a tunnel based on statistics associated with the tunnel.

14. A computer program product, the computer program product comprising a computer readable hardware storage device having computer readable program code embodied therewith, the embodied computer readable program code comprising:

computer readable program code configured for creating statistics about overlay-encapsulated packets which are received by or sent by at least one overlay-capable device in an overlay network;

computer readable program code configured for recording the statistics with a virtual network identifier and a tunnel identifier associated with at least one overlay-encapsulated packet for which the statistics are created;

computer readable program code configured for maintaining a table indexed for the virtual network identifier and the tunnel identifier, the table comprising:

the virtual network identifier;

the tunnel identifier; and

statistic bucket identifiers pointing to locations where statistics associated with the virtual network identifier and the tunnel identifier are stored;

computer readable program code configured for accumulating the statistics for the at least one overlay-capable device through which the overlay-encapsulated packets passed; and

computer readable program code configured for storing the statistics in an accessible manner.

15. The computer program product as recited in claim 14 , wherein the statistics are stored in a memory of an overlay-capable device which created the statistics, and wherein the overlay-capable device is at least one of: an overlay network gateway, an overlay-capable server running a hypervisor, or an overlay-capable network interface card (NIC).

16. The computer program product as recited in claim 14 , wherein the computer readable program code configured for creating the statistics comprises:

computer readable program code configured for counting events associated with de-encapsulation of one or more inner packets from an overlay-encapsulated packet.

17. The computer program product as recited in claim 14 , wherein the embodied computer readable program code further comprises at least one of:

computer readable program code configured for metering traffic flow on an overlay network based on statistics associated with the overlay network; or

computer readable program code configured for metering traffic flow across a tunnel based on statistics associated with the tunnel.

18. The computer program product as recited in claim 14 , wherein the embodied computer readable program code further comprises

computer readable program code configured for counting events associated with encapsulation of one or more inner packets into an overlay-encapsulated packet.

19. The computer program product as recited in claim 14 , wherein the embodied computer readable program code further comprises at least one of:

computer readable program code configured for correlating statistics associated with an overlay-encapsulated packet with statistics associated with one or more inner packets thereof; or

computer readable program code configured for correlating statistics associated with each overlay network that utilize a first tunnel with statistics associated with the first tunnel.

20. An overlay network gateway, comprising:

a switching processor, comprising:

logic configured to terminate and/or originate tunnels in an overlay network;

logic configured to create statistics about overlay-encapsulated packets which are received by or sent by the overlay network gateway, comprising:

logic configured to count events associated with de-encapsulation of inner packets from overlay-encapsulated packets; and

logic configured to events associated with encapsulation of inner packets into overlay-encapsulated packets;

logic configured to accumulate the statistics;

logic configured to record the statistics with a virtual network identifier and a tunnel identifier associated with the overlay-encapsulated packets;

logic configured to maintain a table indexed for the virtual network identifier and the tunnel identifier, the table comprising:

the virtual network identifier;

the tunnel identifier; and

statistic bucket identifiers pointing to locations where statistics associated with the virtual network identifier and the tunnel identifier are stored; and

logic configured to store the statistics in a memory or a set of registers of the overlay network gateway.

21. An overlay-capable server, comprising:

a processor configured to perform logic;

logic configured to terminate and/or originate tunnels in an overlay network;

logic configured to create statistics about overlay-encapsulated packets which are received by or sent by the overlay-capable server, comprising:

logic configured to count events associated with de-encapsulation of inner packets from overlay-encapsulated packets; and

logic configured to count events associated with encapsulation of inner packets into overlay-encapsulated packets;

logic configured to accumulate the statistics;

logic configured to record the statistics with a virtual network identifier and a tunnel identifier associated with the overlay-encapsulated packets;

logic configured to maintain a table indexed for the virtual network identifier and the tunnel identifier, the table comprising:

the virtual network identifier;

the tunnel identifier; and

statistic bucket identifiers pointing to locations where statistics associated with the virtual network identifier and the tunnel identifier are stored; and

logic configured to store the statistics in a memory and/or a set of registers of the overlay-capable server.

22. The overlay-capable server as recited in claim 21 ,

wherein either a network interface card (NIC) or a hypervisor running on the overlay-capable server comprise all of the logic,

wherein the NIC stores the statistics in a memory and/or a set of registers of the NIC, and

wherein the hypervisor stores the statistics in a kernel memory.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2012
From: KAMBLE, KESHAV G.; PANDEY, VIJOY A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 028622/0745 →