IP Library Granted Patent US 9,106,511
Granted Patent B1
US 9,106,511 · App. 13/841,837 · Granted Aug 11, 2015

Systems and methods for optimizing application data delivery over third party networks

Inventors: Kristian Kielhofner (Sarasota, FL); Gabriel Shepard (Parrish, FL); Shawn Solomon (Palmetto, FL)
Assignee: Star2Star Communications, LLC
H04L41/00H04L29/08072H04W28/18
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,106,511
App. No.
13/841,837
Granted
Aug 11, 2015
Kind
B1
Abstract

Aspects of the present disclosure generally relate to systems and methods for managing and optimizing end-to-end communication sessions involving the delivery of application data (e.g., audio data, audio/video data, electronic file download data, etc.) over third party networks using an optimized communication system (OCS), as described herein. Embodiments of the disclosed system enable optimal quality (e.g., reduced delay, packet loss, jitter, etc.) of communication sessions. In one example, the system provides a real-time or close to real-time evaluation of network conditions, e.g., network congestion, nodes best-suited for application data transfer, etc., and other factors associated with geographically diverse and unpredictable routing infrastructure characteristics of the Internet to enable optimized communication sessions.

Claims (92)

1. In an optimized communication system (©CS) including operative connections through one or more networks to a plurality of communication nodes for enabling communication sessions via the one or more networks, a method for optimizing incoming communication sessions, comprising the steps of:

receiving an indication at a particular communication node of an incoming communication session, wherein the indication includes information identifying a sending node;

upon determination that the sending node is not an OCS-compliant node, retrieving a predetermined list of preferred communication nodes from a local communication node database;

parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes upon determination that the sending node is present in the predetermined list of preferred communication nodes, accepting the incoming communication session from the sending node; and

parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes, wherein the parsing takes into account a communication session type associated with each node.

2. The method of claim 1 , wherein the indication includes parameters defining the incoming communication session.

3. The method of claim 1 , wherein the sending node comprises a source node that originated the incoming communication session.

4. The method of claim 1 , wherein the sending node comprises a relay node that did not originate the incoming communication session.

5. The method of claim 1 , wherein the OCS includes an OCS server module for performing various functionalities of the OCS.

6. The method of claim 5 , wherein the preferred communication nodes are managed by the OCS server module.

7. The method of claim 5 , wherein the preferred communication nodes are not managed by the OCS server module.

8. The method of claim 1 , wherein the preferred communication nodes are selected from the group comprising: route nodes, media proxy nodes, provisioning nodes, statistics nodes, relay nodes, communication-type-defined nodes.

9. The method of claim 1 , wherein the predetermined list of preferred communication nodes is defined by one or more of the following: an ©CS administrator, a local user of the particular communication node, automatically by the particular communication node, automatically by an ©CS server module.

10. The method of claim 1 , wherein the particular communication node comprises a network edge device.

11. The method of claim 1 , wherein the step of parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes takes into account network characteristic information corresponding to the preferred communication nodes.

12. The method of claim 1 , wherein the particular communication node is operatively connected to one or more communication assets for enabling communication sessions through the one or more networks with other communication assets.

13. The method of claim 1 , wherein the one or more networks comprise the Internet.

14. An optimized communication system (OCS) including operative connections through one or more networks to a plurality of communication nodes for enabling communication sessions via the one or more networks, comprising:

a local communication node database for storing a predetermined list of preferred communication nodes; and

a particular communication node operatively coupled to the local communication node database and comprising a processor operative to:

receive an indication at the particular communication node of an incoming communication session, wherein the indication includes information identifying a sending node;

upon determination that the sending node is not an OCS-compliant node, retrieve the predetermined list of preferred communication nodes from the local communication node database;

parse the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes; and

upon determination that the sending node is present in the predetermined list of preferred communication nodes, accept the incoming communication session from the sending node;

parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes, wherein the parsing takes into account a communication session type associated with each node.

15. The system of claim 14 , wherein the indication includes parameters defining the incoming communication session.

16. The system of claim 14 , wherein the sending node comprises a source node that originated the incoming communication session.

17. The system of claim 14 , wherein the sending node comprises a relay node that did not originate the incoming communication session.

18. The system of claim 14 , wherein the preferred communication nodes are managed by a central OCS server.

19. The system of claim 14 , wherein the preferred communication nodes are not managed by a central OCS server.

20. The system of claim 14 , wherein the preferred communication nodes are selected from the group comprising: route nodes, media proxy nodes, provisioning nodes, statistics nodes, relay nodes, communication-type-defined nodes.

21. The system of claim 14 , wherein the predetermined list of preferred communication nodes is defined by one or more of the following: an ©CS administrator, a local user of the particular communication node, automatically by the particular communication node, automatically by an ©CS server module.

22. The system of claim 14 , wherein the particular communication node comprises a network edge device.

23. The system of claim 14 , wherein the step of parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes takes into account a communication session type associated with each node.

24. The system of claim 14 , wherein the step of parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes takes into account network characteristic information corresponding to the preferred communication nodes.

25. The system of claim 14 , wherein the particular communication node is operatively connected to one or more communication assets for enabling communication sessions through the one or more networks with other communication assets.

26. The system of claim 14 , wherein the one or more networks comprise the Internet.

27. In an optimized communication system (OCS) including operative connections through one or more networks to a plurality of communication nodes for enabling communication sessions via the one or more networks, a method for optimizing incoming communication sessions, comprising the steps of:

receiving an indication at a particular communication node of an incoming communication session, wherein the indication includes information identifying a sending node;

upon determination that the sending node is not an OCS-compliant node, retrieving a predetermined list of preferred communication nodes from a local communication node database;

parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes;

upon determination that the sending node is not present in the predetermined list of preferred communication nodes, determining whether the incoming communication session has been attempted through all preferred communication nodes in the predetermined list of communication nodes;

upon determination that the incoming communication session has not been attempted through all preferred communication nodes in the predetermined list of communication nodes, rejecting the incoming communication session,

whereby the incoming communication session is received at the particular communication node via a second sending node; and

parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes, wherein the parsing takes into account a communication session type associated with each node.

28. The method of claim 27 , further comprising the steps of:

determining whether the second sending node is present in the predetermined list of preferred communication nodes; and

upon determination that the second sending node is present in the predetermined list of preferred communication nodes, accepting the incoming communication session from the second sending node.

29. The method of claim 27 , wherein the step of rejecting the incoming communication session comprises sending an error message to the sending node.

30. The method of claim 27 , wherein the indication includes parameters defining the incoming communication session.

31. The method of claim 27 , wherein the sending node comprises a source node that originated the incoming communication session.

32. The method of claim 27 , wherein the sending node comprises a relay node that did not originate the incoming communication session.

33. The method of claim 27 , wherein the OCS includes an OCS server module for performing various functionalities of the OCS.

34. The method of claim 33 , wherein the preferred communication nodes are managed by the OCS server module.

35. The method of claim 33 , wherein the preferred communication nodes are not managed by the OCS server module.

36. The method of claim 27 , wherein the preferred communication nodes are selected from the group comprising: route nodes, media proxy nodes, provisioning nodes, statistics nodes, relay nodes, communication-type-defined nodes.

37. The method of claim 27 , wherein the predetermined list of preferred communication nodes is defined by one or more of the following: an ©CS administrator, a local user of the particular communication node, automatically by the particular communication node, automatically by an ©CS server module.

38. The method of claim 27 , wherein the particular communication node comprises a network edge device.

39. The method of claim 27 , wherein the step of parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes takes into account network characteristic information corresponding to the preferred communication nodes.

40. The method of claim 27 , wherein the particular communication node is operatively connected to one or more communication assets for enabling communication sessions through the one or more networks with other communication assets.

41. The method of claim 27 , wherein the one or more networks comprise the Internet.

42. In an optimized communication system (©CS) including operative connections through one or more networks to a plurality of communication nodes for enabling communication sessions via the one or more networks, comprising:

a local communication node database for storing a predetermined list of preferred communication nodes; and

a particular communication node operatively coupled to the local communication node database and comprising a processor operative to:

receive an indication at the particular communication node of an incoming communication session, wherein the indication includes information identifying a sending node;

upon determination that the sending node is not an OCS-compliant node, retrieve the predetermined list of preferred communication nodes from the local communication node database;

parse the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes;

upon determination that the sending node is not present in the predetermined list of preferred communication nodes, determine whether the incoming communication session has been attempted through all preferred communication nodes in the predetermined list of communication nodes; and

upon determination that the incoming communication session has not been attempted through all preferred communication nodes in the predetermined list of communication nodes, reject the incoming communication session,

whereby the incoming communication session is received at the particular communication node via a second sending node;

parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes, wherein the parsing takes into account a communication session type associated with each node.

43. The system of claim 42 , wherein the processor is further operative to:

determine whether the second sending node is present in the predetermined list of preferred communication nodes; and

upon determination that the second sending node is present in the predetermined list of preferred communication nodes, accept the incoming communication session from the second sending node.

44. The system of claim 42 , wherein the processor is further operative to:

determine whether the second sending node is present in the predetermined list of preferred communication nodes; and

upon determination that the second sending node is not present in the predetermined list of preferred communication nodes, check one or more additional nodes to determine of the one or more additional nodes are in the predetermined list of preferred communication nodes.

45. The system of claim 44 , wherein the processor is further operative to:

upon determination that none of the one or more additional nodes are in the predetermined list of preferred communication nodes, accept the incoming communication session from any node.

46. The system of claim 42 , wherein the step of rejecting the incoming communication session comprises sending an error message to the sending node.

47. The system of claim 42 , wherein the indication includes parameters defining the incoming communication session.

48. The system of claim 42 , wherein the sending node comprises a source node that originated the incoming communication session.

49. The system of claim 42 , wherein the sending node comprises a relay node that did not originate the incoming communication session.

50. The system of claim 42 , wherein the OCS includes an OCS server module for performing various functionalities of the OCS.

51. The system of claim 50 , wherein the preferred communication nodes are managed by the OCS server module.

52. The system of claim 50 , wherein the preferred communication nodes are not managed by the ©CS server module.

53. The system of claim 42 , wherein the preferred communication nodes are selected from the group comprising: route nodes, media proxy nodes, provisioning nodes, statistics nodes, relay nodes, communication-type-defined nodes.

54. The system of claim 42 , wherein the predetermined list of preferred communication nodes is defined by one or more of the following: an ©CS administrator, a local user of the particular communication node, automatically by the particular communication node, automatically by an ©CS server module.

55. The system of claim 42 , wherein the particular communication node comprises a network edge device.

56. The system of claim 42 , wherein the step of parsing the predetermined list of preferred communication nodes to determine whether the sending node is present in the predetermined list of preferred communication nodes takes into account network characteristic information corresponding to the preferred communication nodes.

57. The system of claim 42 , wherein the particular communication node is operatively connected to one or more communication assets for enabling communication sessions through the one or more networks with other communication assets.

58. The system of claim 42 , wherein the one or more networks comprise the Internet.

Assignments (9)
NUNC PRO TUNC ASSIGNMENT Recorded Aug 28, 2025
From: STAR2STAR COMMUNICATIONS, LLC
To: SANGOMA US INC.
Reel/Frame 072691/0660 →
SECURITY AGREEMENT Recorded Apr 1, 2021
From: STAR2STAR COMMUNICATIONS, LLC
To: THE TORONTO-DOMINION BANK, AS ADMIN. AGENT
Reel/Frame 055808/0781 →
SECURITY INTEREST Recorded Mar 13, 2020
From: STAR2STAR COMMUNICATIONS, LLC
To: AB PRIVATE CREDIT INVESTORS LLC
Reel/Frame 052113/0163 →
RELEASE OF SECURITY INTEREST Recorded Mar 13, 2020
From: WESTERN ALLIANCE BANK
To: STAR2STAR COMMUNICATIONS, LLC
Reel/Frame 052113/0075 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2019
From: KIELHOFNER, KRISTIAN; SHEPARD, GABRIEL; SOLOMON, SHAWN
To: STAR2STAR COMMUNICATIONS, LLC
Reel/Frame 050564/0821 →
SECURITY INTEREST Recorded Mar 12, 2018
From: STAR2STAR COMMUNICATIONS, LLC
To: WESTERN ALLIANCE BANK
Reel/Frame 045174/0814 →
RELEASE OF SECURITY INTEREST Recorded Mar 12, 2018
From: SILICON VALLEY BANK
To: STAR2STAR COMMUNICATIONS, LLC
Reel/Frame 045557/0100 →
SECURITY AGREEMENT Recorded Dec 29, 2015
From: STAR2STAR COMMUNICATIONS, LLC
To: SILICON VALLEY BANK
Reel/Frame 037396/0928 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2013
From: KIELHOFNER, KRISTIAN; SHEPARD, GABRIEL; SOLOMON, SHAWN
To: STAR2STAR COMMUNICATIONS, LLC
Reel/Frame 030703/0155 →
Continuity (2)
Continuation In Part 13592035 · Aug 22, 2012
Provisional Application 61526119 · Aug 22, 2011