IP Library Granted Patent US 7,447,220
Granted Patent B2
US 7,447,220 · App. 11/031,101 · Granted Nov 4, 2008

Methods and systems for packet classification with improved memory utilization in a media gateway

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 7,447,220
App. No.
11/031,101
Granted
Nov 4, 2008
Kind
B2
Abstract

Methods and systems for classifying incoming and/or outgoing packets to sessions in a media gateway store session identifiers for active sessions in a media gateway in a memory. Each session identifier is a combination of a local network address, a local port number, a remote network address, and a remote port number for the session. Alternatively, each session identifier is a combination of a local network address and a local port number. An incoming and/or outgoing packet is classified to one of the active sessions by using network address and port number information from the packet to perform a lookup for a corresponding session identifier in the memory.

Claims (58)

1. A method for classifying incoming packets to sessions in a media gateway, the method comprising:

at a network interface in a media gateway:

(a) storing session identifiers for active sessions in the media gateway in a memory, each session identifier being a combination of a local network address and a local port number for the active session; and

(b) classifying an incoming packet to one of the active sessions by using a destination network address and a destination port number from the packet to perform a lookup for a corresponding session identifier in the memory.

2. The method of claim 1 wherein each session identifier in the memory consists exclusively of the local network address and the local port number.

3. The method of claim 1 wherein the local network address is an IP address and the local port number is a UDP port number.

4. The method of claim 1 wherein storing session identifiers for active sessions in a media gateway in a memory comprises storing session identifiers in a content addressable memory.

5. The method of claim 1 wherein classifying incoming packets to one of the active sessions comprises retrieving information about the session, the information being associated with the session identifier.

6. The method of claim 5 wherein the retrieved information comprises a remote network address and a remote port number associated with the session.

7. The method of claim 6 comprising verifying that the remote network address and the remote port number associated with the session corresponds to a source network address and a source port number of the packet.

8. The method of claim 1 comprising classifying an outgoing packet to one of the active sessions.

9. The method of claim 1 wherein each session identifier is assigned to a voice chip in the media gateway for a duration of the active session.

10. A method for classifying outgoing packets to sessions in a media gateway, the method comprising:

at a network interface in a media gateway:

(a) storing session identifiers for active sessions in the media gateway in a memory, each session identifier being a combination of a local network address and a local port number for the active session; and

(b) classifying an outgoing packet to one of the active sessions by using a source network address and a source port number from the outgoing packet to perform a lookup for a corresponding session identifier in the memory.

11. The method of claim 10 wherein each session identifier in the memory consists exclusively of the local network address and the local port number.

12. The method of claim 10 wherein the local network address is an IP address and the local port number is a UDP port number.

13. The method of claim 10 wherein storing session identifiers for active sessions in a media gateway in a memory comprises storing session identifiers in a content addressable memory.

14. The method of claim 10 wherein classifying outgoing packets to one of the active sessions comprises retrieving information about the session, the information being associated with the session identifier.

15. The method of claim 14 wherein the retrieved information comprises a remote network address and a remote port number associated with the session.

16. The method of claim 15 comprising verifying that the remote network address and the remote port number associated with the session corresponds to a destination network address and a destination port number of the packet.

17. The method of claim 10 comprising classifying an incoming packet to one of the active sessions.

18. The method of claim 10 wherein each session identifier is assigned to a voice chip in the media gateway for a duration of the active session.

19. A method for classifying incoming and outgoing packets to sessions in a media gateway, the method comprising:

at a network interface in a media gateway:

(a) storing session identifiers for active sessions in the media gateway in a memory, each session identifier including a combination of at least a local network address and a local port number for the active session;

(b) classifying an incoming packet to one of the active sessions by using at least a destination network address and a destination port number from the packet to perform a lookup for a corresponding session identifier in the memory; and

(c) classifying an outgoing packet to one of the active sessions by using at least a source network address and a source port number to perform a lookup for the same corresponding session identifier in the memory.

20. The method of claim 19 wherein storing session identifiers for active sessions in a media gateway in a memory comprises storing session identifiers in a content addressable memory.

21. The method of claim 19 wherein each session identifier is assigned to a voice chip in the media gateway for a duration of the active session.

22. A system for classifying incoming packets to sessions in a media gateway, the system comprising:

(a) a memory for storing session identifiers for active sessions in a media gateway, each session identifier being a combination of a local network address and a local port number for the session active session; and

(b) a network processor operatively associated with the memory and including logic configured to classify incoming packets to one of the active sessions by using a destination network address and a destination port number from the packet to perform a lookup for a corresponding session identifier in the memory, wherein the memory and the network processor are located at a network interface in the media gateway.

23. The system of claim 22 wherein each session identifier in the memory consists exclusively of the local network address and the local port number.

24. The system of claim 22 wherein the local network address is an IP address and the local port number is a UDP port number.

25. The system of claim 22 wherein the memory is a content addressable memory.

26. The system of claim 22 wherein the network processor includes logic configured to retrieve information about the session from the memory, the information being associated with the session identifier.

27. The system of claim 26 wherein the retrieved information comprises a remote network address and a remote port number associated with the session.

28. The system of claim 27 wherein the network processor includes logic configured to verify that the remote network address and the remote port number associated with the session corresponds to a source network address and a source port number of the packet.

29. The system of claim 22 wherein the network processor includes logic configured to classify outgoing packets by performing a lookup in the memory.

30. The system of claim 22 wherein each session identifier is assigned to a voice chip in the media gateway for a duration of the active session.

31. A system for classifying outgoing packets to sessions in a media gateway, the system comprising:

(a) a memory for storing session identifiers for active sessions in a media gateway, each session identifier being a combination of a local network address and a local port number for the session active session; and

(b) a network processor operatively associated with the memory for classifying outgoing packets to one of the active sessions by using a source network address and a source port number to perform a lookup for a corresponding session identifier in the memory, wherein the memory and the network processor are located at a network interface in the media gateway.

32. The system of claim 31 wherein each session identifier in the memory consists exclusively of the local network address and the local port number.

33. The system of claim 31 wherein the local network address is an IP address and the local port number is a UDP port number.

34. The system of claim 31 wherein the memory is a content addressable memory.

35. The system of claim 31 wherein the network processor includes logic configured to retrieve information about the session from the memory, the information being associated with the session identifier.

36. The system of claim 35 wherein the retrieved information comprises a remote network address and a remote port number associated with the session.

37. The system of claim 36 wherein the network processor includes logic configured to verify that the remote network address and the remote port number associated with the session corresponds to a destination network address and a destination port number of the packet.

38. The system of claim 31 wherein the network processor includes logic configured to classify incoming packets by performing a lookup in the memory.

39. The system of claim 31 wherein each session identifier is assigned to a voice chip in the media gateway for a duration of the active session.

40. A system for classifying incoming and outgoing packets to sessions in a media gateway, the system comprising:

(a) a memory for storing session identifiers for active sessions in a media gateway, each session identifier including a combination of at least a local network address and a local port number for the session active session; and

(b) a network processor operatively associated with the memory for classifying both incoming and outgoing packets to one of the active sessions using a combination of addresses from each packet to perform a lookup for a corresponding session identifier in the memory, wherein the memory and the network processor are located at a network interface in the media gateway.

41. The system of claim 40 wherein the memory is a content addressable memory.

42. The system of claim 40 wherein each session identifier is assigned to a voice chip in the media gateway for a duration of the active session.

Assignments (14)
RELEASE OF SECURITY INTEREST Recorded Jun 24, 2024
From: CITIZENS BANK, N.A.
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC. (F/K/A GENBAND US LLC AND SONUS NETWORKS, INC.)
Reel/Frame 067822/0433 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 044978/0801 Recorded Dec 6, 2021
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC. (F/K/A GENBAND US LLC AND SONUS NETWORKS, INC.)
Reel/Frame 058949/0497 →
SECURITY INTEREST Recorded Mar 3, 2020
From: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
To: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 052076/0905 →
SECURITY INTEREST Recorded Jan 2, 2018
From: GENBAND US LLC; SONUS NETWORKS, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 044978/0801 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT Recorded Dec 29, 2017
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: GENBAND US LLC
Reel/Frame 044986/0303 →
CORRECTIVE ASSIGNMENT TO CORRECT PATENT NO. 6381239 PREVIOUSLY RECORDED AT REEL: 039269 FRAME: 0234. ASSIGNOR(S) HEREBY CONFIRMS THE PATENT SECURITY AGREEMENT. Recorded Jan 3, 2017
From: GENBAND US LLC
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 041422/0080 →
RELEASE AND REASSIGNMENT OF PATENTS Recorded Jul 7, 2016
From: COMERICA BANK, AS AGENT
To: GENBAND US LLC
Reel/Frame 039280/0467 →
PATENT SECURITY AGREEMENT Recorded Jul 6, 2016
From: GENBAND US LLC
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 039269/0234 →
RELEASE OF SECURITY INTEREST Recorded Jan 10, 2014
From: ONE EQUITY PARTNERS III, L.P., AS COLLATERAL AGENT
To: GENBAND US LLC
Reel/Frame 031968/0955 →
SECURITY AGREEMENT Recorded Nov 9, 2010
From: GENBAND US LLC
To: COMERICA BANK
Reel/Frame 025333/0054 →
PATENT SECURITY AGREEMENT Recorded Jun 18, 2010
From: GENBAND US LLC
To: ONE EQUITY PARTNERS III, L.P., AS COLLATERAL AGENT
Reel/Frame 024555/0809 →
CHANGE OF NAME Recorded Jun 2, 2010
From: GENBAND INC.
To: GENBAND US LLC
Reel/Frame 024468/0507 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 5, 2009
From: SANTERA SYSTEMS, LLC
To: GENBAND, INC.
Reel/Frame 023471/0754 →
MERGER Recorded Jan 22, 2009
From: SANTERA SYSTEMS, INC.
To: SANTERA SYSTEMS, LLC
Reel/Frame 022151/0236 →