Claims
- 1. A method for generating routes in a communication network, comprising:
generating an ordered set of layers, each of said layers including a subset of the links in said communication network, each of said layers associated with a layer number indicating an associated position in said ordered set of layers; determining a link to a first neighbor node; determining a layer number associated with said link to said first neighbor node; and generating a route information message, wherein said route information message indicates said first neighbor node as a destination node, and wherein said route information message further indicates said layer number associated with said link to said first neighbor node.
- 2. The method of claim 1, further comprising sending said route information message to at least one neighbor node other than said first neighbor node.
- 3. The method of claim 2, wherein said route information message further indicates said at least one neighbor node other than said first neighbor node.
- 4. The method of claim 1, wherein said route information message further indicates a source node associated with said route information message.
- 5. The method of claim 1, further comprising placing said route information message onto a processing queue.
- 6. The method of claim 1, wherein said route information message further comprises a distance value indicating a cost associated with said link to said first neighbor node.
- 7. The method of claim 4, wherein said source node is a node sending said route information message.
- 8. The method of claim 1, further comprising:
obtaining a subsequent route information message; determining a source node associated with said subsequent route information message; extracting a layer number from said subsequent route information message; determining a layer number associated with a link to said source node; comparing said layer number associated with said link to said source node with said layer number extracted from said subsequent route information message; and rejecting said subsequent route information message in the event that said layer number associated with said link to said source node is greater than said layer number extracted from said subsequent route information message.
- 9. The method of claim 8, further comprising:
in the event that said layer number associated with said link to said source node is not greater than said layer number extracted from said subsequent route information message, performing the following steps
adding a distance value from said subsequent route information message to a cost associated with said link to said source node to generate a result, comparing said result with a current cost associated with a current route to a destination node indicated by said subsequent route information message, and in the event that said result is greater than said cost associated with said current route to said destination node indicated by said subsequent route information message, rejecting said route information message.
- 10. The method of claim 9, further comprising:
in the event that said result is less than said cost associated with said current route to said destination node indicated by said subsequent route information message, accepting said subsequent route information message, wherein said accepting includes
removing indication of at least one higher cost previous route to said destination node indicated by said subsequent route information message, and storing indication of said link to said source node as an initial portion of a route to said destination node indicated by said subsequent route information message.
- 11. The method of claim 9, further comprising:
in the event that said result is not greater than said cost9 associated with said current route to said destination node indicated by said subsequent route information message, accepting said subsequent route information message, wherein said accepting includes sending a route constrain message to said source node, wherein said route constrain message includes a link layer number field indicating said link layer number associated with said link to said source node and said destination node indicated by said subsequent route information message.
- 12. The method of claim 9, further comprising:
in the event that said result is not greater than said cost associated with said current route to said destination node indicated by said subsequent route information message, accepting said subsequent route information message, wherein said accepting includes
generating at least one new route information message, wherein said new route information message includes indication of said destination node indicated by said subsequent route information message, a distance value equal to said result, and an indication of said layer number associated with said link to said source node, and sending said at least one new route information message to at least one neighbor node other than said source node.
- 13. The method of claim 1, further comprising:
receiving a route constrain message, wherein said route constrain message indicates a destination node and a layer number; marking at least one route to said destination node indicated by said route constrain message having a first link associated with a layer number lower than said layer number indicated by said route constrain message as unusable; and storing indication of a source node associated with said route constrain message in an unusable list associated with route to said destination node indicated by said route constrain message having a first link associated with a layer number lower than said layer number indicated by said route constrain message.
- 14. The method of claim 13, further comprising:
receiving a route unconstrain message, wherein said route unconstrain message indicates said destination node; removing said stored indication of said source node from said unusable list; determining whether said unusable list is empty; and responsive to a determination that said unusable list is empty, removing said marking of said at least one route to said destination node indicated by said route constrain message as unusable.
- 15. A system for generating routing information for devices in a communication network, comprising:
route generation logic operable to
generate an ordered set of layers, each of said layers including a subset of the links in said communication network, each of said layers associated with a layer number indicating an associated position in said ordered set of layers, determine a link to a first neighbor node, determine a layer number associated with said link to said first neighbor node, and generate a route information message, wherein said route information message indicates said first neighbor node as a destination node, and wherein said route information message further indicates said layer number associated with said link to said first neighbor node.
- 16. The system of claim 15, wherein said route generation logic is further operable to send said route information message to at least one neighbor node other than said first neighbor node.
- 17. The system of claim 15, wherein said route information message further indicates said at least one neighbor node other than said first neighbor node.
- 18. The system of claim 15, wherein said route information message further indicates a source node associated with said route information message.
- 19. The system of claim 15, wherein said route generation logic is further operable to place said route information message onto a processing queue.
- 20. The system of claim 15, wherein said route information message further comprises a distance value indicating a cost associated with said link to said first neighbor node.
- 21. The system of claim 18, wherein said source node is a node sending said route information message.
- 22. The system of claim 15, wherein said route generation logic is further operable to:
obtain a subsequent route information message; determine a source node associated with said subsequent route information message; extract a layer number from said subsequent route information message; determine a layer number associated with a link to said source node; compare said layer number associated with said link to said source node with said layer number extracted from said subsequent route information message; and reject said subsequent route information message in the event that said layer number associated with said link to said source node is greater than said layer number extracted from said subsequent route information message.
- 23. The system of claim 22, wherein said route generation logic is further operable, in the event that said layer number associated with said link to said source node is not greater than said layer number extracted from said subsequent route information message, perform the following steps:
add a distance value from said subsequent route information message to a cost associated with said link to said source node to generate a result; compare said result with a current cost associated with a current route to a destination node indicated by said subsequent route information message; and in the event that said result is greater than said cost associated with said current route to said destination node indicated by said subsequent route information message, reject said route information message.
- 24. The system of claim 23, wherein said route generation logic is further operable, in the event that said result is less than said cost associated with said current route to said destination node indicated by said subsequent route information message, to accept said subsequent route information message by performing the following steps:
removing indication of at least one higher cost previous route to said destination node indicated by said subsequent route information message, and storing indication of said link to said source node as an initial portion of a route to said destination node indicated by said subsequent route information message.
- 25. The system of claim 23, wherein said route generation is further operable, in the event that said result is not greater than said cost associated with said current route to said destination node indicated by said subsequent route information message, to accept said subsequent route information message by sending a route constrain message to said source node, wherein said route constrain message includes a link layer number field indicating said link layer number associated with said link to said source node and said destination node indicated by said subsequent route information message.
- 26. The system of claim 23, wherein said route generation logic is further operable, in the event that said result is not greater than said cost associated with said current route to said destination node indicated by said subsequent route information message, to accept said subsequent route information message by performing the following steps:
generating at least one new route information message, wherein said new route information message includes indication of said destination node indicated by said subsequent route information message, a distance value equal to said result, and an indication of said layer number associated with said link to said source node, and sending said at least one new route information message to at least one neighbor node other than said source node.
- 27. The system of claim 15, wherein said route generation logic is further operable to:
receive a route constrain message, wherein said route constrain message indicates a destination node and a layer number; mark at least one route to said destination node indicated by said route constrain message having a first link associated with a layer number lower than said layer number indicated by said route constrain message as unusable; and store indication of a source node associated with said route constrain message in an unusable list associated with route to said destination node indicated by said route constrain message having a first link associated with a layer number lower than said layer number indicated by said route constrain message.
- 28. The system of claim 27, wherein said route generation logic is further operable to:
receive a route unconstrain message, wherein said route unconstrain message indicates said destination node; remove said stored indication of said source node from said unusable list; determine whether said unusable list is empty; and responsive to a determination that said unusable list is empty, remove said marking of said at least one route to said destination node indicated by said route constrain message as unusable.
- 29. A system for generating routes in a communication network, comprising:
means for generating an ordered set of layers, each of said layers including a subset of the links in said communication network, each of said layers associated with a layer number indicating an associated position in said ordered set of layers; means for determining a link to a first neighbor node; means for determining a layer number associated with said link to said first neighbor node; and means for generating a route information message, wherein said route information message indicates said first neighbor node as a destination node, and wherein said route information message further indicates said layer number associated with said link to said first neighbor node.
- 30. A computer program product including a computer readable medium, said computer readable medium having a computer program stored thereon, said computer program for generating routing information, said computer program comprising:
program code for generating an ordered set of layers, each of said layers including a subset of the links in said communication network, each of said layers associated with a layer number indicating an associated position in said ordered set of layers; program code for determining a link to a first neighbor node; program code for determining a layer number associated with said link to said first neighbor node; and program code for generating a route information message, wherein said route information message indicates said first neighbor node as a destination node, and wherein said route information message further indicates said layer number associated with said link to said first neighbor node.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority under 35 U.S.C. §119(e) to provisional patent application serial No. 60/350,884 filed Jan. 23, 2002.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60350884 |
Jan 2002 |
US |