# Location-Aware Point-to-Point RPL in Indoor IR-UWB Networks
## 4 Location-Aware P2P-RPL for Indoor IR-UWB Based Network with Self Localization  
The cost associated with the P2P route discovery is significantly high for LLNs, because all nodes in the network need to participate in the formation of temporary DODAGs during the route discovery. Based on the cooperative self-localization algorithm for indoor IEEE802.15.4a IR-UWB networks, we propose the Location-Aware P2P-RPL (LA P2P-RPL). LA P2P-RPL is a reactive P2P route discovery protocol that operates on RPL-based networks. In Location-Aware P2P-RPL, the temporary DAG is configured only within the routing request area, which is a rectangular region determined by the B-box state and the estimated location information of the source and destination nodes. Whenever a non-anchor node receives the location states of its neighboring nodes, the node updates its own location state. The state includes two-dimensional position information of the lower and upper bounds of the position estimates, respectively. The position information is piggybacked on the standard RPL control messages (DIO and DAO). To reduce the routing packet flooding overheads of P2P-RPL, the routing packet forwarding zone is determined by the estimated region of the source and the destination nodes. The four corners of the routing packet forwarding zone are determined based on the estimated position information of the source and destination nodes through self-localization procedure. P2P-RPL forms a temporary DAG rooted at the origin solely for the P2P route discovery process. In P2P-RPL, the DODAG Information Object (DIO) acts as a route discovery message. A P2P mode  
Figure 4: CDF for the proposed cooperative multi-hop positioning algorithm. DIO carries exactly one P2P Route Discovery Option (P2P-RDO), which specifies the address for the target. When a router joins a temporary DAG advertised by a P2P mode DIO, it maintains its membership in the temporary DAG for the duration indicated by the L field inside the P2P-RDO. When a target node receives a P2P mode DIO, the P2P-RDO contains a complete source route from the origin to this target. The links in the discovered route have bidirectional reachability, and the target replies a P2P Discovery Reply Object (P2P-DRO) to the source through the discovered route. On receiving a P2P-DRO message, the origin stores the discovered route in its memory. The connection setup procedure of Location Aware P2P-RPL is shown in Figure 5. When a connection request is generated, the origin measures the cost of reaching the target by sending a measurement object (MO) along the pre-established global DAG. On receiving a Measurement Request, an intermediate router updates the routing metric values inside the message and forwards it to the next hop on the route. When the target receives the MO and the routing cost (ETX) is satisfied within the threshold value, it sends a measurement reply back to the origin to inform the cost of the route. In LA P2P-RPL, the measurement reply also carries the B-box state of the target with the location option. If the origin fails to receive the corresponding Measurement Reply, the origin does not know the position of the target, and inevitably starts route discovery according to P2P-RPL. If the routing cost is not satisfied for the current routing path constraints, the target node initiates the LA P2P-RPL route discovery in the limited route forwarding request area based on the estimated location information of the origin node and the target node. The determined request area is piggybacked into the P2P mode DIO in the form of a location option. An intermediate router receiving a P2P mode DIO with the location option checks whether its B-box overlaps the request area. A router, including the target, discards the received P2P mode DIO if its B-box does not overlap with the request area. This positional constraint is used to limit the propagation of P2P mode DIO messages. LA P2P-RPL has a limited propagation area for route discovery messages.