Quality of service using multiple flows
First Claim
Patent Images
1. A method comprising:
- establishing by a first digital device a plurality of inter-device flows between the first digital device and a second digital device, the first digital device in communication with the second digital device via a communication network, wherein the establishing is without regard to the communication network between the first and second digital devices and only concerned with the plurality of inter-device flows themselves;
receiving a packet at the first digital device via an inter-computer flow;
determining at least one flow metric associated with each of the plurality of inter-device flows, wherein the at least one flow metric is iteratively determined;
classifying each of the plurality of inter-device flows based at least in part on the at least one flow metric;
selecting preferred inter-device flows from the plurality of inter-device flows based at least in part on the classification of the inter-device flows;
amending header information on the packet based at least in part on the selected preferred inter-device flows;
directing the amended packet to be sent by the first digital device to the second digital device without regard to the communication network via the selected preferred inter-device flows;
updating the at least one flow metric based at least in part on the directed amended packet sent by the first digital device to the second digital device via the selected preferred inter-device flows; and
updating the classification of each of the plurality of inter-device flows based at least in part on the updated at least one flow metric.
5 Assignments
0 Petitions
Accused Products
Abstract
A method, system, and computer program are provided for quality of service using multiple flows. At a first digital device, a plurality of inter-device flows is established between the first digital device and a second digital device via a communication network. At least one flow metric associated with each of the inter-device flows is determined, which may include, for example, a latency metric, a loss metric, and/or a re-ordering metric. According to various embodiments, flow metrics may form a basis for categorizing the inter-device flows. One or more preferred flows are selected based on the flow metrics. Finally, a packet to be sent to the second device is directed to one of the preferred flows.
-
Citations
14 Claims
-
1. A method comprising:
-
establishing by a first digital device a plurality of inter-device flows between the first digital device and a second digital device, the first digital device in communication with the second digital device via a communication network, wherein the establishing is without regard to the communication network between the first and second digital devices and only concerned with the plurality of inter-device flows themselves; receiving a packet at the first digital device via an inter-computer flow; determining at least one flow metric associated with each of the plurality of inter-device flows, wherein the at least one flow metric is iteratively determined; classifying each of the plurality of inter-device flows based at least in part on the at least one flow metric; selecting preferred inter-device flows from the plurality of inter-device flows based at least in part on the classification of the inter-device flows; amending header information on the packet based at least in part on the selected preferred inter-device flows; directing the amended packet to be sent by the first digital device to the second digital device without regard to the communication network via the selected preferred inter-device flows; updating the at least one flow metric based at least in part on the directed amended packet sent by the first digital device to the second digital device via the selected preferred inter-device flows; and updating the classification of each of the plurality of inter-device flows based at least in part on the updated at least one flow metric. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
a first digital device configured to; establish a plurality of inter-device flows between the first digital device and a second digital device, the first digital device in communication with the second digital device via a communication network including one or more nodes, wherein the establishing is without regard to the communication network between the first and second digital devices and only concerned with the plurality of inter-device flows themselves; receive a packet at the first digital device via an inter-computer flow; determine at least one flow metric associated with each of the plurality of inter-device flows, wherein the at least one flow metric is iteratively determined; classify each of the plurality of inter-device flows based at least in part on the at least one flow metric; select preferred inter-device flows from the plurality of inter-device flows based at least in part on the classification of the inter-device flows; amend header information on the packet based at least in part on the selected preferred inter-device flows; direct the amended packet to be sent to the second digital device without regard to the communication network via the selected preferred inter-device flows, wherein packets of an inter-computer flow travel on two or more paths between two computing devices; update the at least one flow metric based at least in part on the directed amended packet sent by the first digital device to the second digital device via the selected preferred inter-device flows; and update the classification of each of the plurality of inter-device flows based at least in part on the updated at least one flow metric. - View Dependent Claims (11, 12, 13)
-
-
14. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor for performing a method, the method comprising:
-
at a first digital device; establishing by the first digital device a plurality of inter-device flows between the first digital device and a second digital device, the first digital device in communication with the second digital device via a communication network including one or more nodes, wherein the establishing is without regard to the communication network between the first and second digital devices and only concerned with the plurality of inter-device flows themselves; receiving a packet at the first digital device via an inter-computer flow; determining at least one flow metric associated with each of the plurality of inter-device flows, wherein the at least one flow metric is iteratively determined; classifying each of the plurality of inter-device flows based at least in part on the at least one flow metric; selecting preferred inter-device flows from the plurality of inter-device flows based at least in part on the classification of the inter-device flows; amending header information on the packet based at least in part on the selected preferred inter-device flows; directing the amended packet to be sent by the first digital device to the second digital device without regard to the communication network via the selected preferred inter-device flows, wherein packets of an inter-computer flow travel on two or more paths between two computing devices; updating the at least one flow metric based at least in part on the directed amended packet sent by the first digital device to the second digital device via the selected preferred inter-device flows; and updating the classification of each of the plurality of inter-device flows based at least in part on the updated at least one flow metric.
-
Specification