Claims
- 1. A method for updating routers in a network, comprising the steps of:employing one or more traceroute trees, where each tree has a root node, leaf nodes, and edges that connect each leaf node to the root node, through n intermediate nodes, where n is an integer ≧0, where the trees, collectively, cover the routers to be updated, where nodes and edges of each tree are labeled with a tree identifier, and where nodes that belong to more than one tree, when such nodes exist, are labeled with one tree identifier; updating said routers, starting with leaves of said trees, and proceeding towards the respective roots of the trees.
- 2. The method of claim 1, carried out with a tool that is resident on a computer that is coupled to said network.
- 3. The method of claim 2 where said one or more trees have root nodes that are accessible by said computer.
- 4. The method of claim 2 where said one or more trees have root nodes that are selected from a set comprising said computer, routers which said computer can reach via an out-of-band connection, area border routes, and gateway routers.
- 5. The method of claim 1 further comprising a step of constructing said one or more trees.
- 6. The method of claim 5 where said step of constructing said one or more trees selects nodes that are reachable from a computer that carries out said method, at random.
- 7. The method of claim 5 where said step of constructing said one or more trees selects nodes as root nodes from a preferable subset of nodes that are reachable from a computer that carries out said method, at random.
- 8. The method of claim 7 where said computer reaches said root nodes by executing a telnet process.
- 9. The method of claim 1 where said step of employing develops a sequence for updating said nodes to be updates, and said step of updating said routers updates in accordance with said sequence.
- 10. The method of claim 9 where said sequence is developed in a node-centric manner.
- 11. The method of claim 9 where said sequence is developed in a tree-centric manner.
- 12. The method of claim 9 where said sequence is developed by a process that creates an ordered update sequencing list, by executing steps that comport with the logic:While (there are nodes left in any of the set of trees) do {Choose a leaf si from the set of trees at random such that node sl isnot an internal node for any tree (OR fail).Output leaf si, and its label snj to the ordered update sequencing listRemove node si from tree snjrepeat the following {if there is no edge with label x out of a non-leaf node,remove label x from all edges into that node (or edgeswith label x into that node) unless the node is labeled x;} until (no edge or label is removable);}.
- 13. The method of claim 12 where said process further comprises a step of pruning from said list nodes that do not need to be updated.
- 14. The method of claim 9 where said sequence is developed by a process that creates an ordered update sequencing list, by executing steps that comport with following the logic:While (node exists in any tree) do {Pick start node snj randomlyWhile (leaf node si exists in tree snj and node si is not an intermediatenode of a tree other than snj) {Put (si, snj) in update sequencing listRemove node si from tree snj}}.
- 15. The method of claim 14 where said process further comprises a step of pruning from said list nodes that do not need to be updated.
- 16. A method for updating routers in a network, comprising the steps of:maintaining a set of routers to be updated, selecting a router from said set of routers to be updated, determining whether said router can be reached from a computer that carries out said method, when said step of determining concludes that said router can be reached, reaching said router, updating said router, removing said router from said list of routers to be updated, returning to said step of selecting, and when said step of determining concludes that said router cannot be reached, taking a preselected action that occupies time, and returning to said step of determining.
- 17. The method of claim 16 where said preselected action is a wait period.
- 18. The method of claim 16 where said preselected action is a wait period of a preselected duration.
- 19. The method of claim 16 where said preselected action is a direction to select a different router from said set of routers to be updated.
- 20. A method for updating routers in a network, comprising the steps of:selecting a time for communicating update information to each of said routers to be updated, based on said step of selecting a time, formulating a time-of-day for updating of said routers to be updated, including said time-of-day with updating information that is destined to each of said routers to be updated as an update task scheduling time-of execution specification, and transmitting said updating information to said routers to be updated.
- 21. The method of claim 20 where said selecting a time, selects a duration.
- 22. The method of claim 20 where said duration is selected by performing ping operations, to determine time that is required to reach each of the routers to be updated.
RELATED APPLICATION
This application claims priority under application number 60/130,374 filed Apr. 21, 1999.
US Referenced Citations (7)
Non-Patent Literature Citations (1)
Entry |
Aho et al., “The Design and Analysis of Computer Algorithms,” Addison-Wesley Publishing Company, 1974, pp 175-180. |
Provisional Applications (1)
|
Number |
Date |
Country |
|
60/130374 |
Apr 1999 |
US |