Method of optimizing network capacity and fault tolerance in deadlock-free routing
First Claim
1. A method for selecting routing information to be provided to devices in a communication network, comprising:
- obtaining routing information describing a plurality of routes between forwarding devices of said communication network, wherein said plurality of routes is deadlock free, and wherein said routing information includes a plurality of alternative routes;
selecting one of said plurality of alternative routes, wherein said selecting optimizes a performance metric; and
delivering said selected one of said plurality of alternative routes to at least one forwarding device in said communication network.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for selecting routing information from a routing table describing alternative routes between end nodes. The routing table represents a set of minimum cost, deadlock-free routes between end nodes. The selected routing information is included in forwarding tables, and sent to networking devices in the network. The selected routing information is optimized for at least one network performance metric, such as overall network capacity or fault tolerance. Capacity optimization is obtained by selecting from alternative routes stored within the routing table such that the standard deviation of the number of routes flowing over each link in the network is minimized. Fault tolerance optimization is achieved by selecting from the alternative routes stored in the routing table such that the selected route for a given end node pair has a “failover” route with a maximum number of dissimilar links from the selected route.
75 Citations
16 Claims
-
1. A method for selecting routing information to be provided to devices in a communication network, comprising:
-
obtaining routing information describing a plurality of routes between forwarding devices of said communication network, wherein said plurality of routes is deadlock free, and wherein said routing information includes a plurality of alternative routes;
selecting one of said plurality of alternative routes, wherein said selecting optimizes a performance metric; and
delivering said selected one of said plurality of alternative routes to at least one forwarding device in said communication network. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for selecting routing information to be provided to devices in a communication network, comprising routing logic operable to:
-
obtain routing information describing a plurality of routes between forwarding devices of said communication network, wherein said plurality of routes is deadlock free, and wherein said routing information includes a plurality of alternative routes;
select one of said plurality of alternative routes, wherein said selecting optimizes a performance metric; and
deliver said selected one of said plurality of alternative routes to at least one forwarding device in said communication network. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
-
-
15. A system for selecting routing information to be provided to devices in a communication network, comprising:
-
means for obtaining routing information describing a plurality of routes between forwarding devices of said communication network, wherein said plurality of routes is deadlock free, and wherein said routing information includes a plurality of alternative routes;
means for selecting one of said plurality of alternative routes, wherein said selecting optimizes a performance metric; and
means for delivering said selected one of said plurality of alternative routes to at least one forwarding device in said communication network.
-
-
16. A computer program product including a computer readable medium, said computer readable medium having a computer program stored thereon, said computer program for selecting routing information for distribution to at least one networking device, said computer program comprising:
-
program code for obtaining routing information describing a plurality of routes between forwarding devices of said communication network, wherein said plurality of routes is deadlock free, and wherein said routing information includes a plurality of alternative routes;
program code for selecting one of said plurality of alternative routes, wherein said selecting optimizes a performance metric; and
program code for delivering said selected one of said plurality of alternative routes to at least one forwarding device in said communication network.
-
Specification