Optimal Routing of Audio, Video, and Control Data Through Heterogeneous Networks
First Claim
1. A method of effecting the transmission of video data across a network of resources, the network including incompatible resources, the method comprising:
- receiving information indicating a source device and a destination device, the source device originating the video data and the destination device to receive the video data;
identifying a plurality of paths between the source device and the destination device, each path defined by a set of resources, the set of resources including resources needed to transmit the video data across any incompatible resources in the path;
determining, from the plurality of paths, a best path for transmission of the video data, based on the set of resources for that path, a distance between the source device and the destination device along that path, and a quality of the video data maintained by that path; and
effecting the transmission of the video data across the determined best path.
5 Assignments
0 Petitions
Accused Products
Abstract
Effecting the transmission of video data across a network of resources that includes incompatible resources is disclosed. Information indicating a source device and a destination device is received. The source device originates the video data and the destination device is to receive the video data. A plurality of paths between the source device and the destination device is identified. Each path is defined by a set of resources, the set of resources including resources needed to transmit the video data across any incompatible resources in the path. From the plurality of paths, a best path for transmission of the video data is determined based on the set of resources for that path, a distance between the source device and the destination device along that path, and a quality of the video data maintained by that path. The transmission of the video data is then effected across the determined best path.
-
Citations
21 Claims
-
1. A method of effecting the transmission of video data across a network of resources, the network including incompatible resources, the method comprising:
-
receiving information indicating a source device and a destination device, the source device originating the video data and the destination device to receive the video data; identifying a plurality of paths between the source device and the destination device, each path defined by a set of resources, the set of resources including resources needed to transmit the video data across any incompatible resources in the path; determining, from the plurality of paths, a best path for transmission of the video data, based on the set of resources for that path, a distance between the source device and the destination device along that path, and a quality of the video data maintained by that path; and effecting the transmission of the video data across the determined best path. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer program product, stored on computer readable medium, for effecting the transmission of video data across a network of resources, the network including incompatible resources, the computer program product comprising:
-
computer program code for receiving information indicating a source device and a destination device, the source device originating the video data and the destination device to receive the video data; computer program code for identifying a plurality of paths between the source device and the destination device, each path defined by a set of resources, the set of resources including resources needed to transmit the video data across any incompatible resources in the path; computer program code for determining, from the plurality of paths, a best path for transmission of the video data, based on the set of resources for that path, a distance between the source device and the destination device along that path, and a quality of the video data maintained by that path; and computer program code for effecting the transmission of the video data across the determined best path. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer system comprising:
-
a memory; a processor; a network interface; and an interconnection mechanism coupling the memory, the processor, and the network interface, allowing communication there between; wherein the computer system is coupled to a network of resources through the network interface, the network including incompatible resources, and wherein the memory of the computer system is encoded with a dynamic route determination application, that when executed in the processor, provides a dynamic route determination process that effects the transmission of video data across the network of resources, by causing the computer system to perform operations of; receiving information indicating a source device and a destination device, the source device originating the video data and the destination device to receive the video data; identifying a plurality of paths between the source device and the destination device, each path defined by a set of resources, the set of resources including resources needed to transmit the video data across any incompatible resources in the path; determining, from the plurality of paths, a best path for transmission of the video data, based on the set of resources for that path, a distance between the source device and the destination device along that path, and a quality of the video data maintained by that path; and effecting the transmission of the video data across the determined best path. - View Dependent Claims (16, 17, 18, 19, 20, 21)
and wherein identifying comprises; identifying a plurality of paths between the source device and the destination device, each path defined by a set of resources, the set of resources including resources needed to transmit the video data and the audio data across any incompatible resources in the path; and wherein determining comprises; determining, from the plurality of paths, a best path for transmission of the video data and the audio data, based on the set of resources for that path, a distance between the source device and the destination device along that path, and a quality of the video data and the audio data maintained by that path; and wherein effecting comprises; effecting the transmission of the video data and the audio data across the determined best path.
-
-
17. The computer system of claim 16 wherein identifying comprises:
identifying a plurality of paths between the source device and the destination device, each path defined by a set of resources, the set of resources including resources needed to transmit the video data and the audio data across any incompatible resources in the path, wherein at least one path diverges into two branches for at least one hop in the path due to at least one resource that is not capable of transmitting both the video data and the audio data.
-
18. The computer system of claim 15 comprising:
-
identifying a plurality of control paths between the destination device and the source device across the network, each control path capable of carrying control data from the destination device to the source device, each control path defined by a set of resources, the set of resources including resources needed to transmit the control data across any incompatible resources in the control path; determining, from the plurality of control paths, a best control path for transmission of the control data, based on the set of resources for that control path, a distance between the destination device and the source device along that control path, and a quality of the control data maintained by that control path; and effecting the transmission of the control data across the determined best control path.
-
-
19. The computer system of claim 18 wherein the video data originates at a first source device and travels through a second source device to the destination device via the determined best path, wherein identifying a plurality of control paths comprises:
identifying a plurality of control paths between the destination device and the first and second source devices, each control path diverging at a point so as to carry control data from the destination device to the first source device and to the second source device, each control path defined by a set of resources, the set of resources including resources needed to transmit the control data across any incompatible resources in the control path.
-
20. The computer system of claim 15 wherein receiving comprises:
-
receiving information indicating a source device and a destination device, the source device originating the video data and corresponding audio data and to receive control data, and the destination device to receive the video data and the audio data and originating the control data; and wherein identifying comprises; identifying a plurality of paths between the source device and the destination device, the plurality of paths divided into a first group and a second group, the first group capable of transmitting audio data, video data, or both, wherein each path in the first group is defined by a set of resources, the set of resources including resources needed to transmit the video data and the audio data across any incompatible resources in the path, the second group capable of transmitting control data, wherein each path in the second group is defined by a set of resources, the set of resources including resources needed to transmit the control data across any incompatible resources in the path; and wherein determining comprises; determining, from the first group, a first best path for transmission of the video data and the audio data, based on the set of resources for that path, a distance between the source device and the destination device along that path, and a quality of the video data and the audio data maintained by that path; and determining, from the second group, a second best path for transmission of the control data, based on the set of resources for that path, a distance between the destination device and the source device along that path, and a quality of the control data maintained by that path; and wherein effecting comprises; effecting the transmission of the video data and the audio data across the determined first best path; and effecting the transmission of the control data across the determined second best path.
-
-
21. The computer system of claim 15 comprising:
prior to determining, obtaining status information on the set of resources for each path in the plurality of paths, the status information indicating an availability status for each resource in the set, the status information based in part on received event data pertaining to the resource.
Specification