IP Library Granted Patent US 10,992,569
Granted Patent B2
US 10,992,569 · App. 15/905,594 · Granted Apr 27, 2021

System and method for real-time load balancing of network packets

Inventor: Bruce A. Kelley, Jr. (Westford, MA)
Assignee: NetScout Systems, Inc.
H04L45/24H04L29/12405H04L61/2528H04W24/00H04W24/08H04W28/08H04W76/12
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 10,992,569
App. No.
15/905,594
Granted
Apr 27, 2021
Kind
B2
Abstract

Internet protocol packets are statelessly identified as associated with a particular session-instance by identifying a key, or session-instance identifier, within the data (or payload) portion of a user plane packet. This identifier is specific to the session-instance and remains constant throughout the session-instance. Using this stateless identification, transmitted user plane packets are automatically routed at the transmission speed of the transmission link using a method that automatically balances the analysis processing load between network probes. The load is balanced by routing the user plane packet to a network probe that is either already analyzing the session-instance or by routing the user plane packet to a system that has processing capacity to analyze a new session-instance. The network probe then analyzes the user plane packet and the session-instance to measure the quality of the user experience of the session-instance and performance of the network.

Claims (45)

1. A method for automatically distributing a user plane packet to one of at least two network probes to automatically balance the monitoring load, the distributing comprising:

receiving at a packet flow switch a packet having a header portion and a payload portion, the packet flow switch in communication with the at least two network probes;

determining whether the received packet is a user plane packet or a control plane packet;

responsive to determining that the received packet is a control plane packet, sending the control plane packet to all of the probes;

statelessly identifying a session-instance identifier of a received user plane packet using a value in a payload portion of the packet regardless of association with a control plane packet;

determining whether the packet is associated with an existing session-instance being analyzed by a first network probe or a new session-instance, the determining using the session-instance identifier;

responsive to identifying that the packet is associated with the existing session-instance, sending the received user plane packet to the first network probe;

responsive to identifying that the packet is associated with the new session-instance, assigning the packet to one of the network probes and updating a session-instance database to include an identified packet session-instance if determined a new session-instance;

purging a control packet from each of the probes it is distributed to contingent upon inactivity of an associated session-instances;

receiving the user plane packet of the session-instance from one of a plurality of network transmission links; and

using the session-instance identifier to send subsequently received user plane packets of the session-instance transmitted through any of a plurality of network transmission links to the selected network probe.

2. The method of claim 1 , wherein assigning the packet associated with a new session-instance includes:

selecting a network probe;

saving the identity of the selected network probe and associating the packet session-instance identifier with the saved identity of the selected network probe; and

sending the packet to the selected network probe.

3. The method of claim 1 wherein the session-instance identifier is a GTP field in the user plane packet.

4. A method for automatically distributing a user plane packet to one of at least two network probes to automatically balance the monitoring load, the distributing comprising:

receiving at a packet flow switch a packet having a header portion and a payload portion, the packet flow switch in communication with the at least two network probes;

determining whether the received packet is a user plane packet or a control plane packet;

responsive to determining that the received packet is a control plane packet, sending the control plane packet to all of the probes;

statelessly identifying a session-instance identifier of a received user plane packet using a value in a payload portion of the packet regardless of association with a control place packet;

determining whether the packet is associated with an existing session-instance being analyzed by a first network probe or a new session-instance, the determining using the session-instance identifier;

responsive to identifying that the packet is associated with the existing session-instance, sending the received user plane packet to the first network probe;

responsive to identifying that the packet is associated with the new session-instance, assigning the packet to one of the network probes and updating a session-instance database to include an identified packet session-instance if determined a new session-instance;

purging a control packet from each of the probes it is distributed to contingent upon inactivity of an associated session-instances;

receiving the user plane packet of the session-instance from one of a plurality of network transmission links; and

using the session-instance identifier to send subsequently received user plane packets of the session-instance transmitted through any of a plurality of network transmission links to the selected network probe.

5. The method of claim 4 wherein the session-instance identifier is a GTP field in the user plane packet.

6. The method of claim 1 , wherein each of the probes generate Key Performance Indicators (KPIs) and Adaptive Session Records (ASRs).

7. The method of claim 1 , wherein the prescribed period for purging a control plane packet from each of the probes includes a time duration of a session instance.

8. The method of claim 4 , wherein each of the probes generate Key Performance Indicators (KPIs) and Adaptive Session Records (ASRs).

9. The method of claim 4 , wherein the prescribed period for purging a control plane packet from each of the probes includes a time duration of a session instance.

10. A method for automatically distributing a user plane packet to one of at least two network probes to automatically balance the monitoring load, the distributing comprising:

receiving at a packet flow switch a packet having a header portion and a payload portion, the packet flow switch in communication with the at least two network probes;

determining whether the received packet is a user plane packet or a control plane packet;

responsive to determining that the received packet is a control plane packet, sending the control plane packet to all of the probes;

statelessly identifying a session-instance identifier of a received user plane packet using a value in a payload portion of the packet regardless of association with a control place packet;

determining whether the packet is associated with an existing session-instance being analyzed by a first network probe or a new session-instance, the determining using the session-instance identifier;

responsive to identifying that the packet is associated with the existing session-instance, sending the received user plane packet to the first network probe;

responsive to identifying that the packet is associated with the new session-instance, assigning the packet to one of the network probes and updating a session-instance database to include an identified packet session-instance if determined a new session-instance;

purging a control packet from each of the probes it is distributed to contingent upon inactivity of an associated session-instance wherein the prescribed period for purging a control plane packet from each of the probes includes a time duration of a session instance.

11. The method as recited in claim 10 , further comprising receiving the user plane packet of the session-instance from one of a plurality of network transmission links.

12. The method as recited in claim 11 , further comprising using the session-instance identifier to send subsequently received user plane packets of the session-instance transmitted through any of a plurality of network transmission links to the selected network probe.

13. The method of claim 11 wherein the session-instance identifier is a GTP field in the user plane packet.

14. The method of claim 10 , wherein each of the probes generate Key Performance Indicators (KPIs) and Adaptive Session Records (ASRs).

Assignments (1)
SECURITY INTEREST Recorded Jul 27, 2021
From: NETSCOUT SYSTEMS, INC.; ARBOR NETWORKS, INC.; AIRMAGNET, INC.; NETSCOUT SYSTEMS TEXAS, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 056997/0847 →
Continuity (2)
Division 13647503 · Oct 9, 2012
Related Publication 20180183705A1 · Jun 28, 2018