1.Initialization step:
 Each destination node creates a message BID and a message queue ;
 Assignment node broadcasts a message START(A).
2. Process Step:
2.1. Source node  
On receiving the message START( )
  Broadcast a message RTEST( ).
2.2 Relay node   (including assignment node  A)
On receiving the message RTEST( )
  Determine the received power . and compute the ;
  Send a message RREP( ) to the destination node .
2.3. Destination node  
On receiving the message RREP( )
  Determine the received power , and compute ;
  if   has not received the message RTEST( ) from
  its paired source node   then
   Append to this RREP message;
   Push the appended message to queue ;
  else
   Compute ;
   Append the BID packet by and .
  end if
On receiving the message RTEST( )
  Determine the received power . and compute ;
  Compute ;
  Append the BID packet by ;
  for each message RREP( ) in   do
   Compute ( );
   Append the BID message by and .
  end for
On receive all the RREP messages and the corresponding RTEST message
  Send the BID message to the assignment node A.
Algorithm 1: Relay discovery phase.