In this paper we present a distributed routing protocol for finding two nod
e-disjoint paths between each pair of nodes in a computer network. In the p
roposed protocol, each node in the network has the same procedure, which is
driven by local information with respect to the network topology, such as
adjacent nodes on a spanning tree in the network. Thus, the execution of th
e protocol can continue after changes of the network topology and load. The
n, a spanning tree-based kernel construction is introduced to synchronize p
rocedures under the distributed control of the protocol. Additionally, the
routing scheme based on the protocol possesses the enhanced capabilities of
alternate routes and load splitting, which cope with failures and load var
iations in the network. Thus, even if topology changes damage the obtained
disjoint paths, the paths themselves can be updated efficiently.