IP Library Granted Patent US 9,699,069
Granted Patent B1
US 9,699,069 · App. 13/841,929 · Granted Jul 4, 2017

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
H04L45/14H04L12/2854H04L45/22
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,699,069
App. No.
13/841,929
Granted
Jul 4, 2017
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 (49)

1. A method for optimizing communication sessions through one or more networks comprising a plurality of communication nodes, comprising the steps of:

receiving communication session parameters at a particular communication node of a series of communication nodes indicating initiation of a particular communication session, the communication session parameters including predetermined routing information for routing the particular communication session through the series of communication nodes and a particular communication session type associated with the particular communication session, wherein the particular communication node is an intermediary communication node in the series of communication nodes;

retrieving a prioritized list of possible communication nodes from a local particular communication node database, the prioritized list of possible communication nodes indicating possible communication nodes in the one or more networks through which communication sessions may be routed, wherein each of the possible communication nodes include one or more properties that optimize each possible communication node for one or more communication session types;

based on the communication session parameters corresponding to the particular communication session, identifying an optimized communication node through which the particular communication session should be routed, wherein the optimized communication node is identified at least in part by matching the particular communication session type of the particular communication session with a corresponding communication session type of the optimized communication node; and

modifying the predetermined routing information of the particular communication session to route the particular communication session through the identified optimized communication node,

whereby the particular communication session is transmitted from the particular communication node to the identified optimized communication node.

2. The method of claim 1 , wherein the predetermined routing information includes information defining a destination node for the particular communication session.

3. The method of claim 2 , wherein the destination node comprises a next-hop relay node.

4. The method of claim 1 , wherein the predetermined routing information includes a packet header identifying a first destination node for the particular communication session.

5. The method of claim 4 , wherein the step of modifying the predetermined routing information of the particular communication session comprises modifying the packet header to correspond to the identified optimized communication node.

6. The method of claim 1 , wherein the method steps are performed in an optimized communication system (OCS).

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

8. The method of claim 7 , wherein the identified optimized communication node is managed by the OCS server module.

9. The method of claim 7 , wherein the identified optimized communication node is not managed by the OCS server module.

10. The method of claim 1 , wherein the identified optimized communication node is selected from the group comprising: route nodes, media proxy nodes, provisioning nodes, statistics nodes, relay nodes, communication-type-defined nodes.

11. 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.

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

13. The method of claim 1 , wherein the optimized communication node is not in the series of communication nodes.

14. A system for optimizing communication sessions through one or more networks comprising a plurality of communication nodes, comprising:

a local particular communication node database for storing a prioritized list of possible communication nodes; and

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

receive communication session parameters at the particular communication node of a series of communication nodes indicating initiation of a particular communication session, the communication session parameters including predetermined routing information for routing the particular communication session through the series of communication nodes, wherein the particular communication node is an intermediary node of a series of communication nodes;

retrieve the prioritized list of possible communication nodes from the local particular communication node database, the prioritized list of possible communication nodes indicating possible communication nodes and node-based communication session parameters for each of the possible communication nodes in the one or more networks through which communication sessions may be routed;

based on the communication session parameters corresponding to the particular communication session, identify an optimized communication node through which the particular communication session should be routed; and

modify the predetermined routing information of the particular communication session based at least in part on the node-based communication session parameters for identifying optimized communication nodes to route the particular communication session through the identified optimized communication node,

whereby the particular communication session is transmitted from the particular communication node to the identified optimized communication node.

15. The system of claim 14 , wherein the predetermined routing information includes information defining a destination node for the particular communication session.

16. The system of claim 15 , wherein the destination node comprises a next-hop relay node.

17. The system of claim 14 , wherein the predetermined routing information includes a packet header identifying a first destination node for the particular communication session.

18. The system of claim 17 , wherein the step of modifying the predetermined routing information of the particular communication session comprises modifying the packet header to correspond to the identified optimized communication node.

19. The system of claim 14 , wherein the identified optimized communication node is managed by a central server.

20. The system of claim 14 , wherein the identified optimized communication node is not managed by a central server.

21. The system of claim 14 , wherein the identified optimized communication node is selected from the group comprising: route nodes, media proxy nodes, provisioning nodes, statistics nodes, relay nodes, communication-type-defined nodes.

22. The system of claim 14 , wherein the communication session parameters include a communication session type associated with the particular communication session.

23. 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.

24. The system of claim 14 , wherein the optimized communication node is not in the series of communication nodes.

25. The system of claim 14 , wherein the node-based communication parameters comprise parameters associated with a particular type of node optimized for the particular communication session.

26. The system of claim 14 , wherein:

the node-based communication session parameters comprise an indication of a weight assigned to one or more nodes; and

the weight is assigned to the one or more nodes based on the one or more nodes optimization for transmitting a particular type of communication session.

27. A system for optimizing communication sessions through one or more networks, the system comprising:

a plurality of communication nodes, each of the plurality of communication nodes operatively connected to at least one local database and comprising at least one hardware processor for executing program instructions stored on memory, wherein at least one of the plurality of communication nodes:

receives communication session parameters including a next node of the plurality of communication nodes to route a particular communication session and a particular communication session type associated with the particular communication session;

retrieves a prioritized list of possible communication nodes from the at least one local database, the prioritized list of possible communication nodes indicating possible communication nodes in the one or more networks through which communication sessions may be routed, wherein the prioritized list of possible communication nodes is prioritized with respect to each of the plurality of communication nodes, and wherein

each of the possible communication nodes include one or more properties that optimize each possible communication node for one or more communication session types;

identifies an optimized communication node through which the particular communication session should be routed next based on the communication session parameters and the prioritized list of possible communication nodes, wherein the optimized communication node is identified at least in part by matching the particular communication session type of the particular communication session with a corresponding communication session type of the optimized communication node;

modifies the predetermined routing information of the particular communication session; and

routes the particular communication session to the identified optimized communication node.

28. The system of claim 27 , wherein the optimized communication node is optimized for audio, video, or data types of communication sessions.

Assignments (10)
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 →
RELEASE OF SECURITY INTEREST Recorded Jan 14, 2020
From: SILICON VALLEY BANK, A CALIFORNIA CORPORATION
To: STAR2STAR COMMUNICATIONS, LLC
Reel/Frame 051504/0279 →
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/0368 →
Continuity (2)
Continuation In Part 13592035 · Aug 22, 2012
Provisional Application 61526119 · Aug 22, 2011