MANAGING NETWORK COMMUNICATIONS BETWEEN NETWORK NODES AND STREAM TRANSPORT PROTOCOL
First Claim
1. A method, comprising by a server network node:
- determining one or more pairs of client network nodes that are connected to a server application hosted by the server network node, wherein the constituent client network nodes of each of the pairs have one or more active sets of complementary sources and sinks of respective data stream content types; and
for each of the determined pairs of client network nodes, sending to each of the constituent client network nodes of the pair a respective session definition defining a respective peer-to-peer session over a network connection between the constituent client network nodes of the pair.
2 Assignments
0 Petitions
Accused Products
Abstract
A stream transport protocol supports realtime network communications between communicants operating on respective network nodes. The stream transport protocol supports remote management of client communication sessions, including provisioning of each pair of client network nodes with a respective session definition defining a respective peer-to-peer session over a network connection between the constituent client network nodes of the pair. The stream transport protocol has relatively low computational resource requirements so that realtime communications performance can be achieved using a wide range of computing devices and network connections that currently are available.
184 Citations
71 Claims
-
1. A method, comprising by a server network node:
-
determining one or more pairs of client network nodes that are connected to a server application hosted by the server network node, wherein the constituent client network nodes of each of the pairs have one or more active sets of complementary sources and sinks of respective data stream content types; and for each of the determined pairs of client network nodes, sending to each of the constituent client network nodes of the pair a respective session definition defining a respective peer-to-peer session over a network connection between the constituent client network nodes of the pair. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. Apparatus, comprising:
-
a computer-readable memory storing computer-readable instructions; and a data processor coupled to the memory, operable to execute the instructions, and based at least in part on the execution of the instructions operable to perform operations comprising determining one or more pairs of client network nodes that are connected to a server application hosted by the server network node, wherein the constituent client network nodes of each of the pairs have one or more active sets of complementary sources and sinks of respective data stream content types; and for each of the determined pairs of client network nodes, sending to each of the constituent client network nodes of the pair a respective session definition defining a respective peer-to-peer session over a network connection between the constituent client network nodes of the pair.
-
-
19. At least one computer-readable memory device having computer-readable program code embodied therein, the computer-readable program code adapted to be executed by a computer to implement a method comprising:
-
determining one or more pairs of client network nodes that are connected to a server application hosted by the server network node, wherein the constituent client network nodes of each of the pairs have one or more active sets of complementary sources and sinks of respective data stream content types; and for each of the determined pairs of client network nodes, sending to each of the constituent client network nodes of the pair a respective session definition defining a respective peer-to-peer session over a network connection between the constituent client network nodes of the pair.
-
-
20. A method, comprising by a given client network node:
-
connecting to a server application hosted by a server network node and to which are connected one or more other client network nodes, wherein each of the given client network node and the one or more other client network nodes has one or more sources and sinks of respective data stream content types; receiving from the server network node a respective session definition between the given client network node and a respective session partner one of the other client network nodes for each of the other client network nodes with which the given client network node has at least one active source or sink that is complementary to an active one of the one or more sources and sinks of the other client network node; and for each of the received session definitions, establishing a respective peer-to-peer session over a respective network connection between the given client network node and the respective session partner client network node based on the session definition. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47)
-
-
48. Apparatus, comprising:
-
a computer-readable memory storing computer-readable instructions; and a data processor coupled to the memory, operable to execute the instructions, and based at least in part on the execution of the instructions operable to perform operations comprising connecting to a server application hosted by a server network node and to which are connected one or more other client network nodes, wherein each of the given client network node and the one or more other client network nodes has one or more sources and sinks of respective data stream content types; receiving from the server network node a respective session definition between the given client network node and a respective session partner one of the other client network nodes for each of the other client network nodes with which the given client network node has at least one active source or sink that is complementary to an active one of the one or more sources and sinks of the other client network node; and for each of the received session definitions, establishing a respective peer-to-peer session over a respective network connection between the given client network node and the respective session partner client network node based on the session definition.
-
-
49. At least one computer-readable memory device having computer-readable program code embodied therein, the computer-readable program code adapted to be executed by a computer to implement a method comprising:
-
connecting to a server application hosted by a server network node and to which are connected one or more other client network nodes, wherein each of the given client network node and the one or more other client network nodes has one or more sources and sinks of respective data stream content types; receiving from the server network node a respective session definition between the given client network node and a respective session partner one of the other client network nodes for each of the other client network nodes with which the given client network node has at least one active source or sink that is complementary to an active one of the one or more sources and sinks of the other client network node; and for each of the received session definitions, establishing a respective peer-to-peer session over a respective network connection between the given client network node and the respective session partner client network node based on the session definition.
-
-
50. A method, comprising by a given client network node:
-
storing multiple addresses for negotiating respective network connections with a session partner client network node; and attempting to establish respective network connections with the session partner client network node through all of the multiple respective addresses associated with the session definition. - View Dependent Claims (51, 52, 53, 54)
-
-
55. A method, comprising by a given client network node
establishing a network connection with a session partner client network node, wherein the establishing comprises: -
sending an outbound message containing a unique station identifier assigned to the given client network node to the session partner client network node; and in response to receipt of an inbound message responsive to the outbound message and containing a unique station identifier assigned to the session partner client network node, extracting a source network address from the inbound message and binding the session partner client network node to the extracted source network address. - View Dependent Claims (56)
-
-
57. A method, comprising by a given client network node:
-
establishing a peer-to-peer session with a session partner client network node; on the established peer-to-peer session, publishing local publish channels that are available from the given client network node, wherein the channels logically divide data transported on the peer-to-peer session by data stream content type. - View Dependent Claims (58, 59, 60)
-
-
61. A method, comprising by a given client network node:
-
establishing a peer-to-peer session with a session partner client network node; storing definitions of respective channels that logically divide data transported on the peer-to-peer session by data stream content type; and transmitting data streams to the session partner client network node on the peer-to-peer session in respective channels according to content type of the data streams. - View Dependent Claims (62, 63, 64, 65, 66, 67, 68, 69)
-
-
70. A method, comprising by the given client network node:
-
establishing a peer-to-peer session with a session partner client network node; receiving from the session partner client network node a session maintenance message comprising a first time parameter value and a second time parameter value; in response to a determination that the peer-to-peer session is in an active state, transmitting packet receipt acknowledgement session maintenance messages to the session partner client network node with a maximum interval set by the first time parameter value; and in response to a determination that the peer-to-peer session is in an idle state, transmitting packet receipt acknowledgement session maintenance messages to the session partner client network node with a maximum interval set by the second time parameter value. - View Dependent Claims (71)
-
Specification