The tracing algorithm
We shall assume that a routing path has already established by using the Ad hoc On-demand Distance Vector (AODV) routing algorithm (see e.g., [15]), but will modify the transmission protocol to allow for traceability as follows.
Let R = (s=x0,x1,…,xt,d) be the routing path, where s and d are the source and destination nodes. The sending phase is essentially the same as that of the AODV protocol, except that we require that the source s and each intermediate node xi set a timeri to a time based on their distance from the destination.
Additional requirements for the AODV protocol
On the upstream phase
bodys := (ids,idd,counterd,data),hKsd(bodys);
timeri := 2(t-i);
Where is an upper bound on the time allocated for each hop.
On the downstream phase:
bodyd := (ids,idd,counterd),hKsd(bodyd);
If a node xi does not receive an acknowledgement, bodyd, or a valid fault_report in the allocated time, timeri, then the node xi reports the fault to the source node s by sending an authenticated fault_report:
fault_reporti:= (ids,idd,counterd,idxi), sigKi(fault_reporti)
Share with your friends: |