IP Library Granted Patent US 8,254,265
Granted Patent B2
US 8,254,265 · App. 11/427,234 · Granted Aug 28, 2012

Methods and apparatus for routing IP media data based on cost

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 8,254,265
App. No.
11/427,234
Granted
Aug 28, 2012
Kind
B2
Abstract

A session controller configured to receive a data packet from a packet-switched network having multiple communication links is disclosed. The disclosed session controller is further configured to define a call-routing policy based on layer-five information, layer-two information, layer-three information and layer-seven information from the data packet. The call-routing policy is configured to define a least-cost routing (LCR) call route for an ingress call over at least one of the plurality of communication links. The LCR call route is associated with an operational cost that is lower than an operational cost associated with at least one other call route over at least one communication link from the plurality of communication links. The session controller is also configured to associate the ingress call to an egress-call peer based on the call routing policy.

Claims (79)

1. An apparatus, comprising:

a session controller configured to receive a data packet from a packet-switched network having a plurality of communication links, the data packet having a virtual local area network (VLAN) identifier and Internet protocol (IP) subnet information and being associated with an ingress call,

the session controller further configured to determine, based on the VLAN identifier and the IP subnet information located in the data packet, a source of the ingress call and to identify, using the source, a call routing policy to apply for routing the ingress call to an egress call peer, the call routing policy configured to define a least cost routing (LCR) call route for an ingress call over at least one of the plurality of communication links, the LCR call route being associated with an operational cost, the operational cost being lower than an operational cost associated with at least one other call route over at least one communication link from the plurality of communication links,

the session controller further configured to associate the ingress call to the egress call peer based on the call routing policy, the session controller is further configured to define the call routing policy based on a route cost associated with buying or selling at least a portion of at least one call route over at least one communication link from the plurality of communication links,

the call routing policy adapted to provide a most profit routing (MPR) call route for an ingress call, the MPR call route having an associated operational profit higher than the operational profit associated with at least one other call route over at least one from the plurality of communication links.

2. The apparatus of claim 1 , wherein the session controller is further configured to modify the ingress call based on the call routing policy.

3. The apparatus of claim 1 , wherein the session controller is further configured to modify layer-five information of the ingress call based on the call routing policy.

4. The apparatus of claim 1 , wherein the session controller is further configured to modify layer-two information of the ingress call based on the call routing policy.

5. The apparatus of claim 1 , wherein the session controller is further configured to modify a protocol of the ingress call based on the call routing policy.

6. The apparatus of claim 1 , wherein the session controller is further configured to modify an origination or destination telephone number of the ingress call based on the call routing policy.

7. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on an origination cost associated with buying or selling at least a portion of at least one call route over at least one communication link from the plurality of communication links.

8. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on a termination cost associated with buying or selling at least a portion of at least one call route over at least one communication link from the plurality of communication links.

9. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on a quality factor associated with at least a portion of at least one call route from the plurality of call routes.

10. The apparatus of claim 1 , wherein the session controller is configured to associate the ingress call to the egress call peer by instantiating the egress call peer.

11. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based upon a Diffserv/TOS marking associated with a data packet for the ingress call.

12. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based upon a coding and decoding device preference.

13. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on a mean opinion score qualifier for a previous call.

14. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on a listening quality for a previous call.

15. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on a conversational quality for a previous call.

16. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on a latency of an incoming media stream.

17. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on at least one of a jitter in a forward communication or a jitter in a reverse communication.

18. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on at least one of a packet loss in a forward communication or a packet loss in a reverse communication.

19. The apparatus of claim 1 , wherein the session controller is configured to calculate a mean opinion score qualifier for a previous call based on the ITU-T standard E-model and to define the call routing policy based on the mean opinion score qualifier.

20. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on a post dial delay.

21. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on an answer seizure ratio.

22. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on a packet discard rate.

23. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on at least one of a burst density or a burst duration.

24. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on a gap density.

25. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on an R factor.

26. A method, comprising:

receiving at a session controller an ingress call indicator associated with an ingress call originated at an ingress call peer, wherein the ingress call indicator includes a data packet having a virtual local area network (VLAN) identifier and Internet protocol (IP) subnet information;

determining, based on the VLAN identifier and Internet protocol (IP) subnet information located in the data packet, a source of the ingress call and identifying, using the source, a call routing policy to apply for routing the ingress call to an egress call peer;

receiving at the session controller an indicator of a route cost associated with buying or selling at least a portion of a call route having at least a portion within a packet-switched network, the route cost being further associated with routing of the ingress call to an egress call peer;

calculating a quality factor associated with the call route;

defining, using the call routing policy, a least cost route (LCR) call route based on the quality factor and the route cost, the LCR call route having an operational cost associated with the egress call peer, the operational cost being lower than an operational cost for at least one other call route associated with the egress call peer;

defining a most profit routing (MPR) call route based on at least one of an origination cost associated with the ingress call or a termination cost associated with the ingress call, and

the MPR call route associated with an operational profit greater than an operational profit associated with at least one other call route associated with the ingress call; and

associating the ingress call with the egress call peer based on the call routing policy.

27. The method of claim 26 , wherein the associating includes instantiating the egress call peer.

28. The method of claim 26 , wherein the defining is based on a layer-two identifier of a call data packet associated with the ingress call.

29. The method of claim 26 , wherein the defining is based on a layer-three identifier of a call data packet associated with the ingress call.

30. The method of claim 26 , wherein the defining is based on a Diffserv/TOS marking associated with a data packet for the ingress call.

31. The method of claim 26 , wherein the defining is based on a coding and decoding device preference associated with a data packet for the ingress call.

32. The method of claim 26 , wherein the defining is based on a mean opinion score qualifier for a previous call.

33. The method of claim 26 , wherein the defining is based on an indicator of a latency of an incoming media stream associated with the ingress call.

34. The method of claim 26 , wherein the defining is based on at least one of an indicator of jitter in a forward communication or an indicator of jitter in a reverse communication.

35. The method of claim 26 , wherein the defining is based on at least one of an indicator of packet loss in a forward communication or an indicator of packet loss in a reverse communication.

36. The method of claim 26 , wherein the defining is based on a mean opinion score qualifier for a previous call, the mean opinion score qualifier computed according to the ITU-T standard E-model.

37. The method of claim 26 , wherein the quality factor is a post dial delay.

38. The method of claim 26 , wherein the quality factor is an answer seizure ratio.

39. The method of claim 26 , further comprising modifying the ingress call before associating the ingress call to the egress call peer or after associating the ingress call to the egress call peer.

40. The method of claim 26 , further comprising modifying a protocol of the ingress call based on the route cost or the quality factor.

41. The method of claim 26 , further comprising modifying at least one of an origination telephone number of the ingress call or a destination telephone number of the ingress call.

42. A computer program stored on a non-transitory computer readable medium, the computer program comprising:

a receiving instruction to receive an ingress call indicator associated with an ingress call originated at an ingress call peer, wherein the ingress call indicator includes a data packet having a virtual local area network (VLAN) identifier and Internet protocol (IP) subnet information;

a determining instruction to determine, based on the VLAN identifier and Internet protocol (IP) subnet information located in the data packet, a source of the ingress call and to identify, using the source, a call routing policy to apply for routing the ingress call to an egress call peer;

an input instruction to receive an indicator of a route cost associated with buying or selling at least a portion of a call route having at least a portion within a packet-switched network and associated with routing the ingress call to the egress call peer;

a calculation instruction to calculate a quality factor associated with the call route, the calculation instruction is further to define a call routing policy adapted to select a most profit routing (MPR) call route based on at least one of an origination cost associated with the call route or a termination cost associated with the call route, and

the MPR call route having an operational profit associated with the ingress call that is greater than an operational profit associated with at least one other call route for the ingress call;

a definition instruction to define, using a call routing policy, a LCR call route based on the quality factor and the route cost, the LCR call route having an operational cost associated with the egress call peer lower than an operational cost for at least one other call route associated with the egress call peer; and

an association instruction to associate the ingress call with an egress call peer based on the call routing policy.

43. The computer program stored on a non-transitory computer readable medium of claim 42 , further comprising an instantiating instruction to instantiate the egress call peer based on a template.

44. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the defining instruction is further configured to define the call routing policy based on at least one of a layer-seven identifier of a call data packet, a layer-two identifier of a call data packet or a layer-three identifier of the call data packet, the call data packet being associated with the ingress call.

45. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the defining instruction is further configured to define the call routing policy based on IP subnet information associated with the ingress call.

46. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the defining instruction is further configured to define the call routing policy based on a Diffserv/TOS marking associated with the ingress call.

47. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the defining instruction is further configured to define the call routing policy based on a coding and decoding device preference associated with the ingress call.

48. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the defining instruction is further configured to define the call routing policy based on a mean opinion score qualifier for a previous call.

49. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the defining instruction is further configured to define the call routing policy based on an indicator of a latency of an incoming media stream associated with the ingress call.

50. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the defining instruction is further configured to define the call routing policy based on at least one of an indicator of a jitter in a forward communication or an indicator of a jitter in a backward communication.

51. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the defining instruction is further configured to define the call routing policy based on at least one of an indicator of a packet loss in a forward communication or an indicator of a packet loss in a reverse communication.

52. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the defining instruction is further configured to define the call routing policy based on a mean opinion score qualifier for a previous call, the mean opinion score qualifier computed according to the ITU-T standard E-model.

53. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the calculation instruction is further configured to calculate the quality factor based on a post dial delay.

54. The computer program stored on a non-transitory computer readable medium of claim 42 , wherein the calculating instruction is further configured to calculate the quality factor based on an answer seizure ratio.

55. The computer program stored on a non-transitory computer readable medium of claim 42 , the computer program further comprising a tagging instruction configured to modify the ingress call based on the quality factor or the route cost.

56. The computer program stored on a non-transitory computer readable medium of claim 42 , the computer program further comprising a tagging instruction configured to modify at least one of layer-two information of the ingress call, layer-seven information of the ingress call, or layer-five information of the ingress call.

57. The computer program stored on a non-transitory computer readable medium of claim 42 , the computer program further comprising a tagging instruction configured to modify a protocol of the ingress call based on the quality factor or the route cost.

58. The computer program stored on a non-transitory computer readable medium of claim 42 , further comprising a tagging instruction configured to modify at least one of an origination telephone number associated with the ingress call or a destination telephone number associated with the ingress call.

59. The method of claim 26 , wherein the defining is based on IP subnet information associated with the ingress call.

60. The apparatus of claim 1 , wherein the session controller is configured to define the call routing policy based on IP subnet information associated with the ingress call.

Assignments (18)
SHORT-FORM PATENTS SECURITY AGREEMENT Recorded Sep 5, 2024
From: RIBBON COMMUNICATIONS OPERATING COMPANY, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS ADMINISTRATIVE AGENT
Reel/Frame 068857/0290 →
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 May 20, 2009
From: NEXTPOINT NETWORKS, INC.
To: GENBAND INC.
Reel/Frame 022716/0303 →
RELEASE OF SECURITY INTEREST Recorded Oct 28, 2008
From: COLUMBIA PARTNERS, L.L.C., AS AGENT AND INVESTMENT MANAGER
To: NEXTPOINT NETWORKS, INC.
Reel/Frame 021744/0677 →
CHANGE OF NAME Recorded Mar 18, 2008
From: NEXTONE COMMUNICATIONS, INC.
To: NEXTPOINT NETWORKS, INC.
Reel/Frame 020663/0632 →
SECURITY AGREEMENT Recorded Jan 10, 2008
From: NEXTPOINT NETWORKS, INC. (F/K/A NEXTONE COMMUNICATIONS, INC.)
To: COLUMBIA PARTNERS, L.L.C. INVESTMENT MANAGEMENT
Reel/Frame 020351/0432 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2006
From: RAMACHANDRAN, SRIDHAR; TYAGI, PARITOSH; MALLESAN, SARAVANAN; RAMAN, ROHINI; BAHTIA, MEDHAVI; KULSHRESHTHA, GAURAV; SHETTY, SOHAN
To: NEXTONE COMMUNICATIONS, INC.
Reel/Frame 018687/0565 →