ContikiRPL and TinyRPL: Happy Together

IP-based sensor networks provide interoperability, but experience shows that interoperability between different protocol implementations is not a binary property. Instead, subtle differences in implementation choices may affect the performance of the resulting system. We present our experiences with the Contiki and TinyOS implementations of the IPv6 stack for low-power and lossy (LLN) networks including the IETF 6LoWPAN adaptation layer and the IETF RPL protocol. Our results show two independent implementations, that have good performance on their own, can have a substandard performance in a mixed network configuration and that small implementation differences can lead to large-scale differences in behavior. This suggests that IPv6 stack implementations for LLNs need to be tested not just for correctness but also for performance.