System and method for multi-layered network communications
First Claim
1. A method of sending first data from a first device to a destination device via a network to which a plurality of second devices are also connected, said first device being connected to a data session in a session/transport layer of the network, said data session of the session/transport layer of the network having a first session topology which defines a first set of one or more of said second devices to which data may be directly addressed from said first device in said session/transport layer, said method comprising the acts of:
- joining an audio session in an audio layer of the network, said audio session having a second session topology which defines a second set of one or more of said second devices to which data may be directly addressed from said first device in said audio layer, the session topology of the audio session in said audio layer being different from the session topology of the data session in said session/transport layer such that said second set of devices to which data may be directly addressed from said first device in said audio session of said audio layer is different from said first set of devices to which data may be directly addressed from said first device in said session of said session/transport layer, said destination device being a member of said audio session, wherein the audio layer exposes an application programming interface (API) to the session/transport layer to establish a link with the session transport layer;
creating a first data package which contains;
(a) said first data; and
(b) a header;
addressing said first data package to said destination device in accordance with the session topology of said audio session of said audio layer; and
sending said first data package to said destination device via said data session of said session/transport layer.
2 Assignments
0 Petitions
Accused Products
Abstract
A multi-layered network for transporting data comprises a first network layer that provides a first session topology, and a second network layer that provides a second session topology. The second network layer uses the first network layer to transport data. In one embodiment of the invention, the data sent by the second layer is real-time audio data, such as voice. Each session topology may be either peer-to-peer or client/server. The first and second layers may have different topologies and/or different session hosts. A deterministic algorithm is provided whereby a new session host is selected when the current host leaves the session.
-
Citations
14 Claims
-
1. A method of sending first data from a first device to a destination device via a network to which a plurality of second devices are also connected, said first device being connected to a data session in a session/transport layer of the network, said data session of the session/transport layer of the network having a first session topology which defines a first set of one or more of said second devices to which data may be directly addressed from said first device in said session/transport layer, said method comprising the acts of:
-
joining an audio session in an audio layer of the network, said audio session having a second session topology which defines a second set of one or more of said second devices to which data may be directly addressed from said first device in said audio layer, the session topology of the audio session in said audio layer being different from the session topology of the data session in said session/transport layer such that said second set of devices to which data may be directly addressed from said first device in said audio session of said audio layer is different from said first set of devices to which data may be directly addressed from said first device in said session of said session/transport layer, said destination device being a member of said audio session, wherein the audio layer exposes an application programming interface (API) to the session/transport layer to establish a link with the session transport layer; creating a first data package which contains; (a) said first data; and (b) a header; addressing said first data package to said destination device in accordance with the session topology of said audio session of said audio layer; and sending said first data package to said destination device via said data session of said session/transport layer. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. One or more computer-readable storage media having computer-executable instructions to perform a method of sending first data from a first device to a destination device via a network to which a plurality of second devices are also connected, said first device being connected to a data session in a session/transport layer of a network, said data session of the session/transport layer of the network having a first session topology which defines a first set of one or more of said second devices to which data may be directly addressed from said first device in said session/transport layer, said method comprising the acts of:
-
joining an audio session in an audio layer of the network, said audio session having a second session topology which defines a second set of one or more of said second devices to which data may be directly addressed from said first device in said audio layer, the session topology of the audio session in said audio layer being different from the session topology of the data session in said session/transport layer such that said second set of devices to which data may be directly addressed from said first device in said audio session of said audio layer is different from said first set of devices to which data may be directly addressed from said first device in said session of said session/transport layer, said destination device being a member of said audio session, wherein the audio layer exposes an application programming interface (API) to the session/transport layer to establish a link with the session transport layer; creating a first data package which contains; (a) said first data; and (b) a header; addressing said first data package to said destination device in accordance with said session topology of said audio session of said audio layer; and sending said first data package to said destination device via said data session of said session/transport layer. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A method of sending first data from a first device to a destination device via a network to which a plurality of second devices are also connected, said first device being connected to a data session in a session/transport layer of the network, said data session of the transport/session layer of the network having a first session topology that comprises one of either a peer-to-peer session topology or a client-server topology and which defines a first set of one or more of said second devices to which data may be directly addressed from said first device in said data session of the session/transport layer, said method comprising the acts of:
-
joining an audio session in an audio layer of the network, said audio session of the audio layer having a second session topology that is different from the session topology of the data session of the session/transport layer and comprises one of either a peer to-peer topology, a forwarding topology, a mixing topology or an echo topology and which defines a second set of one or more of said second devices to which data may be directly addressed from said first device in said audio session of said audio layer, said second set of devices to which data may be directly addressed from said first device in said audio session of said audio layer being different from said first set of devices to which data may be directly addressed from said first device in said data session of said session/transport layer, said destination device being a member of said second set, wherein the session/transport layer and the audio layer each exposes a respective application programming interface (API) to the other layer, and wherein the two layers establish a link between them by providing each other with pointers to their respective APIs; creating a first data package which contains; (a) said first data; and (b) a header; addressing said first data package to said destination device in accordance with said session topology of said audio session of said audio layer; and
sending said first data package to said destination device via said data session of said session/transport layer.
-
Specification