Standardization and technology advancements have helped the realization of the Internet of things (IoT). The availability of low-cost IoT devices has also played a key role in furthering IoT research, development, and deployment. IoT operating systems (OSs) provide integration of software and hardware components. The availability of standard protocols, heterogeneous hardware support, ease of development, and simulation or emulation support are desirable features of IoT OSs. Contiki OS is one of the contenders for future IoT OSs. It was proposed in 2003, and since then, it has been continually under development and upgraded by professionals, academia, and researchers. Contiki OS supports open source, Internet standards, power awareness, dynamic module loading, and many hardware platforms. The diverse applications of IoT, including smart homes, smart health, smart cities, require efficient network connectivity and demand intelligent routing protocols that can handle heterogeneous, mobile, and diverse networks. Subsequently, designing routing protocols for memory- and central processing unit (CPU)-constrained IoT devices is a very challenging task. Therefore, this paper surveys the state-of-the-art routing protocols of Contiki OS. To the best of the authors’ knowledge, this is the first study to classify the Contiki OS routing protocol literature and list the potential challenges and future work.
Read full abstract