The present invention provides a method for selecting and routing data in an
ad-hoc mobile wireless network having a plurality of Nodes including multiple sources
and destinations. The method includes sending a forward control packet from a source
to the destination via at least one intermediate Node at intervals of time, where
the intermediate Node is randomly selected. Each of the intermediate Nodes store
weights of the neighbor Nodes. When the forward control packets reach the destination
Node, they are evaluated in accordance with one or more given parameters and send
back as backward control packets storing the evaluation results. As each of the
intermediate Nodes receive the backward control packets, the weights of the corresponding
neighbor Nodes are modified based on the stored evaluation results. Similarly,
as the backward control packets are received at the source Nodes and the weights
of the corresponding neighbor Nodes are modified based on the stored evaluation
results. Finally, a group of routing routes to the destination are selected based
on the modified weights of the neighbor Nodes and data packets are send from the
source to the destination via the intermediate Nodes upon selection of the group.