IP Library Granted Patent US 9,893,962
Granted Patent B2
US 9,893,962 · App. 14/879,185 · Granted Feb 13, 2018

Port mirroring for sampling measurement of network flows

Inventors: Kanak B. Agarwal (Austin, TX); John B. Carter (Austin, TX); Colin K. Dixon (Austin, TX); Jeffrey T. Rasley (Providence, RI)
Assignee: International Business Machines Corporation
H04L43/04H04L41/14H04L43/022H04L43/0876
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,893,962
App. No.
14/879,185
Granted
Feb 13, 2018
Kind
B2
Abstract

Mechanisms are provided for analyzing data traffic through a network. The mechanisms sample data packets of a data flow through a normal port of a network forwarding device of the network. The sampling is performed at least by configuring the network forwarding device to implement port mirroring of the normal port to a designated mirror port of the network forwarding device. The mechanisms forward sampled data packets, copied to the mirror port by virtue of the port mirroring, to a collector computing device. The mechanisms process, by the collector computing device, the sampled data packets to analyze the data flow through the normal port of the network forwarding device. The mechanisms perform, by the collector computing device, an operation based on results of the analysis.

Claims (56)

1. A method, in a data processing system, for analyzing data traffic through a network, the method comprising:

sampling data packets of a data flow through a normal port of a network forwarding device of the network, wherein the sampling is performed at least by configuring the network forwarding device to implement port mirroring of the normal port to a designated mirror port of the network forwarding device;

forwarding sampled data packets, copied to the mirror port by virtue of the port mirroring, to a collector computing device;

processing, by the collector computing device, the sampled data packets to analyze the data flow through the normal port of the network forwarding device; and

performing, by the collector computing device, an operation based on results of the analysis, wherein sampling data packets of the data flow comprises oversubscribing the designated mirror port so as to saturate the designated mirror port under non-light loads, wherein data packets that are sampled are data packets that do not exceed a bandwidth of the designated mirror port, and wherein data packets from a plurality of normal ports of the network forwarding device are mirrored to the designated mirror port to facilitate oversubscribing the designated mirror port.

2. The method of claim 1 , wherein the sampled data packets are forwarded to the collector computing device without involving a control plane processor of the network forwarding device.

3. The method of claim 1 , wherein a number of sampled data packets forwarded per period of time to the collector computing device is dynamic based on an amount of traffic received over the normal port during the period of time.

4. The method of claim 1 , further comprising:

configuring a network adapter of the collector computing device to be in a promiscuous mode of operation.

5. The method of claim 1 , further comprising:

recovering original input port metadata associated with the sampled data packets based on data packet forwarding rules implemented in the network forwarding device of the network.

6. The method of claim 1 , further comprising:

selecting a number of normal ports of the network forwarding device to be forwarded to the designated mirror port to ensure oversubscribing of the designated mirror port under a specified load condition of the normal ports of the network forwarding device; and

configuring the network forwarding device to implement port mirroring based on the selected number of normal ports.

7. A method, in a data processing system, for analyzing data traffic through a network, the method comprising:

sampling data packets of a data flow through a normal port of a network forwarding device of the network, wherein the sampling is performed at least by configuring the network forwarding device to implement port mirroring of the normal port to a designated mirrorport of the network forwarding device;

forwarding sampled data packets, copied to the mirror port by virtue of the port mirroring, to a collector computing device;

processing, by the collector computing device, the sampled data packets to analyze the data flow through the normal port of the network forwarding device,

performing, by the collector computing device, an operation based on results of the analysis; and

recovering original input port metadata associated with the sampled data packets based on data packet forwarding rules implemented in the network forwarding device of the network, wherein recovering original input port metadata for the sampled data packets comprises, for each sampled data packet:

correlating packet header information of the sampled data packet with the forwarding rules to determine another device in the network from which the sampled data packet was received; and

determining an input port of the network forwarding device through which the sampled data packet was received based on the determination of the another device.

8. The method of claim 1 , wherein a number of mirror ports and a number of normal ports in the network forwarding device are configured according to a desired sampling size or desired sampling rate.

9. The method of claim 1 , wherein the network forwarding device is a network switch, the network switch is either a physical or virtual switch of a data processing device, and the normal port and mirror port are either physical or virtual ports of a data processing device.

10. The method of claim 1 , wherein the operation is one of a traffic analysis operation or a traffic engineering operation.

11. A computer program product comprising a non-transitory computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a data processing system comprising a network forwarding device and a collector computing device, causes the data processing system to:

sample data packets of a data flow through a normal port of the network forwarding device, wherein the sampling is performed at least by configuring the network forwarding device to implement port mirroring of the normal port to a designated mirror port of the network forwarding device;

forward sampled data packets, copied to the mirror port by virtue of the port mirroring, to the collector computing device;

process, by the collector computing device, the sampled data packets to analyze the data flow through the normal port of the network forwarding device; and

perform, by the collector computing device, an operation based on results of the analysis, wherein sampling data packets of the data flow comprises oversubscribing the designated mirror port so as to saturate the designated mirror port under non-light loads, wherein data packets that are sampled are data packets that do not exceed a bandwidth of the designated mirror port, and wherein data packets from a plurality of normal ports of the network forwarding device are mirrored to the designated mirror port to facilitate oversubscribing the designated mirror port.

12. The computer program product of claim 11 , wherein the sampled data packets are forwarded to the collector computing device without involving a control plane processor of the network forwarding device.

13. The computer program product of claim 11 , wherein a number of sampled data packets forwarded per period of time to the collector computing device is dynamic based on an amount of traffic received over the normal port during the period of time.

14. The computer program product of claim 11 , wherein the computer readable program further causes the data processing system to:

configure a network adapter of the collector computing device to be in a promiscuous mode of operation.

15. The computer program product of claim 11 , wherein the computer readable program further causes the data processing system to:

recover original input port metadata associated with the sampled data packets based on data packet forwarding rules implemented in the network forwarding device of the network.

16. The computer program product of claim 11 , wherein the computer readable instructions further cause the data processing system to:

select a number of normal ports of the network forwarding device to be forwarded to the designated mirror port to ensure oversubscribing of the designated mirror port under a specified load condition of the normal ports of the network forwarding device; and

configure the network forwarding device to implement port mirroring based on the selected number of normal ports.

17. A computer program product comprising a non-transitory computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a data processing system comprising a network forwarding device and a collector computing device, causes the data processing system to:

sample data packets of a data flow through a normal port of the network forwarding device, wherein the sampling is performed at least by configuring the network forwarding device to implement port mirroring of the normal port to a designated mirror port of the network forwarding device;

forward sampled data packets, copied to the mirrorport by virtue of the port mirroring, to the collector computing device;

process, by the collector computing device, the sampled data packets to analyze the data flow through the normal port of the network forwarding device;

perform, by the collector computing device, an operation based on results of the analysis; and

recover original input port metadata associated with the sampled data packets based on data packet forwarding rules implemented in the network forwarding device of the network, wherein the computer readable program causes the data processing system to recover original input port metadata for the sampled data packets at least by, for each sampled data packet:

correlating packet header information of the sampled data packet with the forwarding rules to determine another device in the network from which the sampled data packet was received; and

determining an input port of the network forwarding device through which the sampled data packet was received based on the determination of the another device.

18. The computer program product of claim 11 , wherein a number of mirror ports and a number of normal ports in the network forwarding device are configured according to a desired sampling size or desired sampling rate.

19. The computer program product of claim 11 , wherein the network forwarding device is a network switch, the network switch is either a physical or virtual switch of a data processing device, and the normal port and mirror port are either physical or virtual ports of a data processing device.

20. A system comprising:

a network forwarding device; and

a collector computing device communicatively coupled to the network forwarding device, wherein the network forwarding device is configured to:

sample data packets of a data flow through a normal port of the network forwarding device, wherein the sampling is performed at least by configuring the network forwarding device to implement port mirroring of the normal port to a designated mirror port of the network forwarding device; and

forwarding sampled data packets, copied to the mirror port by virtue of the port mirroring, to the collector computing device, and wherein the collector computing devices is configured to:

process the sampled data packets to analyze the data flow through the normal port of the network forwarding device; and

perform, by the collector computing device, an operation based on results of the analysis, wherein sampling data packets of the data flow comprises oversubscribing the designated mirror port so as to saturate the designated mirror port under non-light loads, wherein data packets that are sampled are data packets that do not exceed a bandwidth of the designated mirror port, and wherein data packets from a plurality of normal ports of the network forwarding device are mirrored to the designated mirror port to facilitate oversubscribing the designated mirror port.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 9, 2015
From: AGARWAL, KANAK B.; CARTER, JOHN B.; DIXON, COLIN K.; RASLEY, JEFFREY T.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 036763/0347 →
Continuity (2)
Continuation 14034666 · Sep 24, 2013
Related Publication 20160036659A1 · Feb 4, 2016