Network path selection using bandwidth prediction
First Claim
1. A computer-implemented method for routing a data stream from a source to a destination through a network including a plurality of forwarding devices interconnected with links, comprising:
- (a) receiving, at a control device, a request to create a path for the data stream from the source to the destination through the plurality of forwarding devices, the data stream having a type;
(b) determining the path based on historical usage characteristics of data streams having the type, the historical usage characteristics including an amount of bandwidth utilized by previously transmitted data streams of the type and a length of previously transmitted data streams of the type;
(c) for respective forwarding devices along the path, determining a routing table indicating which port of the respective forwarding device to route data from the new data stream along the path determined in (b); and
(d) for each of the respective forwarding devices, transmitting the routing table determined in (c) to configure the forwarding device.
2 Assignments
0 Petitions
Accused Products
Abstract
In an embodiment, a system routes a new data stream from a source to a destination through a plurality of forwarding devices interconnected with links. The system includes a control device that receives a request to create a path through the plurality of interconnected forwarding devices for a new data stream and determines a type of the new data stream. A data flow database stores historical usage characteristics of data streams having the determined type. A path computation module determines, based on the historical usage characteristics of data streams having the determined type, the requested path through plurality of interconnected forwarding devices from the source to the destination.
16 Citations
20 Claims
-
1. A computer-implemented method for routing a data stream from a source to a destination through a network including a plurality of forwarding devices interconnected with links, comprising:
-
(a) receiving, at a control device, a request to create a path for the data stream from the source to the destination through the plurality of forwarding devices, the data stream having a type; (b) determining the path based on historical usage characteristics of data streams having the type, the historical usage characteristics including an amount of bandwidth utilized by previously transmitted data streams of the type and a length of previously transmitted data streams of the type; (c) for respective forwarding devices along the path, determining a routing table indicating which port of the respective forwarding device to route data from the new data stream along the path determined in (b); and (d) for each of the respective forwarding devices, transmitting the routing table determined in (c) to configure the forwarding device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for routing a data stream from a source to a destination through a network including a plurality of forwarding devices interconnected with links, comprising:
-
a control device configured to receive a request to create a path for the data stream from the source to the destination through the plurality of forwarding devices, the data stream having a type; a path computation module configured to determine the path based on historical usage characteristics of data streams having the type, the historical usage characteristics including an amount of bandwidth utilized by previously transmitted data streams of the type and a length of previously transmitted data streams of the type; and a routing table module configured to (i) for respective forwarding devices along the path, determine a routing table indicating which port of the respective forwarding device to route data from the new data stream along the path, and (ii) for each of the respective forwarding devices, transmit the determined routing table to configure the forwarding device. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A non-transitory program storage device tangibly embodying a program of instructions executable by at least one machine to perform a method for routing a data stream from a source to a destination through a plurality of forwarding devices interconnected with links, the method comprising:
-
(a) receiving, at a control device, a request to create a path for the data stream from the source to the destination through the plurality of forwarding devices, the data stream having a type; (b) determining the path based on historical usage characteristics of data streams having the type, the historical usage characteristics including an amount of bandwidth utilized by previously transmitted data streams of the type and a length of previously transmitted data streams of the type; (c) for respective forwarding devices along the path, determining a routing table indicating which port of the respective forwarding device to route data from the new data stream along the path determined in (b); and (d) for each of the respective forwarding devices, transmitting the routing table determined in (c) to configure the forwarding device. - View Dependent Claims (19, 20)
-
Specification