Patent ID: 8457134

Claim:
A method for routing data from a source to a destination in a wireless network, comprising the steps of: broadcasting one or more messages in a network to identify a set of two or more nodes that can be used to forward data from a given node towards a destination, wherein each of said nodes in said set of two or more nodes are neighboring nodes of said given node; routing data from a source to the destination by way of a sequence of one or more data transmissions involving the two or more identified nodes, wherein each data transmission comprises a node that has data addressed to the destination to trigger a distributed procedure among the two or more identified nodes, wherein said two or more identified nodes collaborate to select a relaying node; sending the data to the selected relaying node until the destination is reached; and generating a data forwarding procedure, wherein generating the data forwarding procedure comprises: a source node receiving a route reply (RREP) packet from a destination to which it is trying to connect; setting the source node to be a current hop; transmitting, from the current hop node a request to send packet; identifying a next hop node by way of the distributed procedure, wherein each of one or more nodes that receives the packet and that can be used to forward the data towards a destination uses information contained in the packet to contend to be the next hop node; selecting one of the one or more potential next hop nodes to be the next hop; sending data meant for the destination from the current hop to the next hop; setting the selected next hop to be the current hop; and repeating steps of said data forwarding procedure until the destination is reached.