RPL (IPv6 Routing Protocol for LLNs)
RPL (Routing Protocol for Low-Power and Lossy Networks) is a routing protocol for wireless networks with low power consumption and generally susceptible to packet loss. It is a proactive protocol based on distance vectors and operates on IEEE 802.15.4, optimized for multi-hop and many-to-one communication, but also supports one-to-one messages. This protocol is specified in with special applications in RFCs . RPL can support a wide variety of link layers, including those with limitations, with potential losses or that are used in devices with limited resources. This protocol can  quickly create network routes, share routing knowledge and adapt the topology in an efficient way. Protocol configuration. RPL creates a topology similar to a tree (DAG or directed acyclic graph). Each node within the network has an assigned rank (Rank), which increases as the teams move away from the root node (DODAG). The nodes resend packets using the lowest range as the route selection criteria. Three control messages are defined in ICMPv6 via : Implementation of the RPL protocol. The implementation of the RPL protocol occurs in wireless sensors and networks, the most used operating system for its implementation is Contiki  which is a small open source operating system developed for use in a number of small systems ranging from 8-bit computers to integrated systems on microcontrollers, including sensor network nodes. Other Operating Systems. The RPL protocol is implemented in other operating systems, such as: