IP Library Granted Patent US 10,230,667
Granted Patent B2
US 10,230,667 · App. 15/168,428 · Granted Mar 12, 2019

Pre-sorter systems and methods for distributing GTP packets

Inventors: Stefan Johansson (Round Rock, TX); Robin O'Connor (Austin, TX)
Assignee: Keysight Technologies Singapore (Holdings) Pte Ltd
H04L49/25H04L69/325
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,230,667
App. No.
15/168,428
Granted
Mar 12, 2019
Kind
B2
Abstract

Pre-sorter systems and methods are disclosed for distributing GTP packets. The pre-sorter forwards GTP packets based upon entries within one or more pre-sort tables, and the entries associate F-TEIDs with output ports that can be coupled to GTP sessions controllers and/or other external systems. The F-TEIDs represent a combination of a destination IP address and a tunnel endpoint identifier (TEID) for each GTP packet. For some embodiments, GTP session controllers analyze the GTP packets and determine F-TEIDs that are created, modified, and/or dropped for user sessions, and the GTP session controllers send control messages to the pre-sorter to determine the entries stored within the pre-sort table(s). For other embodiments, other external systems such as network monitoring tools are coupled to the GTP packet pre-sorter rather than GTP session controllers. Pre-sorters having multiple pre-sort modules with local pre-sort tables, as well as two-stage pre-sort architectures, can also be used.

Claims (29)

1. A system for distributing GTP (GPRS (General Packet Radio Service) Tunneling Protocol) packets, comprising:

a pre-sorter comprising at least one of a processor or an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit) programmed to determine F-TEIDs (F-tunnel endpoint identifiers) for incoming GTP packets and to forward GTP packets to output ports for the pre-sorter based upon entries within a plurality of pre-sort tables, the entries associating F-TEIDs with the output ports and each F-TEID representing a combination of a destination IP address and a tunnel endpoint identifier (TEID) for a GTP packet; and

a plurality of external systems coupled to the output ports for the pre-sorter, each of the plurality of external systems comprising at least one of a processor or an FPGA or an ASIC programmed to analyze GTP packets to determine F-TEIDs for the GTP packets associated with tracked user sessions and to send control messages to the pre-sorter to at least in part determine the entries stored within the plurality of pre-sort tables.

2. The system of claim 1 , wherein the external systems comprise a plurality of GTP session controllers coupled to the output ports and having GTP packets received from the pre-sorter as outputs to a plurality of additional external systems.

3. The system of claim 1 , wherein the external systems comprise a plurality of monitoring tools coupled to the output ports.

4. The system of claim 1 , wherein the at least one of a processor or an FPGA or an ASIC for the external systems are further programmed to send control messages to the pre-sorter to delete entries in the plurality of pre-sort tables.

5. The system of claim 1 , wherein the pre-sorter further comprises a port selector coupled to input ports for the pre-sorter, the port selector identifying new sessions for the incoming GTP packets and allocating the new sessions to the output ports.

6. The system of claim 1 , wherein the at least one of a processor or an FPGA or an ASIC for the external systems are further programmed to determine whether GTP packets received by the externals systems represent new, modified, or deleted F-TEIDs.

7. The system of claim 6 , wherein the control messages include F-TEID updates for the plurality of pre-sort tables for new, modified, or deleted F-TEIDs.

8. A pre-sorter for distributing GTP (GPRS (General Packet Radio Service) Tunneling Protocol) packets, comprising:

a plurality of input ports having GTP packets as inputs;

a plurality of output ports having GTP packets as outputs;

a plurality of pre-sort tables having entries associating F-TEIDs (F-tunnel endpoint identifiers) with the output ports, each F-TEID representing a combination of a destination IP address and a tunnel endpoint identifier (TEID) for a GTP packet; and

at least one controller comprising at least one of a processor or an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit) programmed to determine F-TEIDs for received GTP packets and to determine the output ports to receive the GTP packets based upon the plurality of pre-sort tables, the entries within the plurality of pre-sort tables being determined at least in part by control messages received from external systems coupled to the output ports for the pre-sorter.

9. The pre-sorter of claim 8 , further comprising a non-volatile storage medium, the non-volatile storage medium storing the entries for the plurality of pre-sort tables.

10. The pre-sorter of claim 8 , further comprising a port selector coupled to the input ports, the port selector identifying new sessions for the incoming GTP packets and allocating the new sessions to the output ports.

11. The pre-sorter of claim 8 , wherein the control messages include F-TEID updates for the plurality of pre-sort tables for new, modified, or deleted F-TEIDs determined by the external systems.

12. A method for distributing GTP (GPRS (General Packet Radio Service) Tunneling Protocol) packets comprising

receiving GTP packets with a pre-sorter having a plurality of output ports;

determining F-TEIDs (F - tunnel endpoint identifiers) for the GTP packets within the pre-sorter, each F-TEID representing a combination of a destination IP address and a tunnel endpoint identifier (TEID) for a GTP packet;

identifying the output ports to receive the GTP packets based upon entries within a plurality of pre-sort tables within the pre-sorter, the entries associating F-TEIDs with the output ports;

forwarding the GTP packets to the output ports;

receiving control messages from a plurality of external systems coupled to the output ports for the pre-sorter; and

using the control messages within the pre-sorter to at least in part determine the entries stored within the plurality of pre-sort tables.

13. The method of claim 12 , wherein the control messages are received from a plurality of monitoring tools coupled to the output ports.

14. The method of claim 12 , wherein the control messages are received from a plurality of GTP session controllers coupled to the output ports and having GTP packets as outputs to a plurality of additional external systems.

15. The method of claim 12 , further comprising identifying new sessions for the incoming GTP packets and allocating the new sessions to the output ports.

16. The method of claim 12 , wherein the control messages include F-TEID updates for the plurality of pre-sort tables for new, modified, or deleted F-TEIDs determined by the external systems.

17. The method of claim 16 , further comprising updating the plurality of pre-sort tables based upon the control messages.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2018
From: KEYSIGHT TECHNOLOGIES SINGAPORE (HOLDINGS) PTE. LTD.
To: KEYSIGHT TECHNOLOGIES SINGAPORE (SALES) PTE. LTD.
Reel/Frame 048225/0065 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2017
From: ANUE SYSTEMS, INC.
To: KEYSIGHT TECHNOLOGIES SINGAPORE (HOLDINGS) PTE. LTD.
Reel/Frame 043898/0920 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2016
From: JOHANSSON, STEFAN; O'CONNOR, ROBIN
To: ANUE SYSTEMS, INC.
Reel/Frame 038748/0385 →
Continuity (2)
Continuation 14108513 · Dec 17, 2013
Related Publication 20160277321A1 · Sep 22, 2016