The Contiki Operating System Allan Blanchard, INRIA

Slides:



Advertisements
Similar presentations
Advanced Computer Networks Fall 2011
Advertisements

Low-Power Interoperability for the IPv6 Internet of Things Presenter - Bob Kinicki Low-Power Interoperability for the IPv6 Internet of Things Adam Dunkels,
Oliver Pankiewicz EEL 6935 Embedded Systems
Overview: Chapter 7  Sensor node platforms must contend with many issues  Energy consumption  Sensing environment  Networking  Real-time constraints.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 OSI Network Layer Network Fundamentals – Chapter 5.
Generic Sensor Platform for Networked Sensors Haywood Ho.
Troubleshooting methods. Module contents  Avaya Wireless tools  Avaya Wireless Client Manager  Avaya Wireless AP Manager  Hardware indicators  Non.
ZIGBEE PROTOCOL FOR WIRLEESS SENSOR NETWORK ZIGBEE PROTOCOL FOR WIRLEESS SENSOR NETWORK Research paper Lina kazem
High volume requires low COGs. Areas previously unavailable to.NET and GXA Silicon – street claim: Large footprint and inefficient computing makes GXA.
Impact of the Internet of Things on Computer Networks James Byars December 12, 2013 IT422 – Computer Networks Professor Tim Johnson.
ECE 424 Embedded Systems Design Networking Connectivity Chapter 12 Ning Weng.
Chapter 1 Overview Review Overview of demonstration network
Tufts Wireless Laboratory School Of Engineering Tufts University “Network QoS Management in Cyber-Physical Systems” Nicole Ng 9/16/20151 by Feng Xia, Longhua.
Advisor: Quincy Wu Speaker: Kuan-Ta Lu Date: Aug. 19, 2010
Chapter 2: Operating-System Structures. 2.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 14, 2005 Operating System.
Low-Power Interoperability for the IPv6 Internet of Things Presenter - Bob Kinicki Low-Power Interoperability for the IPv6 Internet of Things Adam Dunkels,
Advanced Computer Networks Fall 2013
Embedded Runtime Reconfigurable Nodes for wireless sensor networks applications Chris Morales Kaz Onishi 1.
Xiong Junjie Node-level debugging based on finite state machine in wireless sensor networks.
© 2008 Cisco Systems, Inc. All rights reserved ICT Presentation Coming soon… The Internet of Things Mathilde Durvy - Corporate.
A Paradigm Shift for the Internet of Things Today sensing and actuation is expensive and static with little or no economies of scale. μPnP changes the.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
ICACT 2012 Performance Study on SNMP and SIP over SCTP in Wireless Sensor Networks Advisor: Quincy Wu Speaker: Chia-Wen Lu (Sally) National Chi Nan University.
Networking Components WILLIAM NELSON LTEC HUB  Device that operated on Layer 1 of the OSI stack.  All I/O flows out all other ports besides the.
Integration of Wireless Sensor Networks to the Internet of Things using a 6LoWPAN Gateway Integration of Wireless Sensor Networks to the Internet of Things.
Doc.: Submission, Slide 1 Project: IEEE P Working Group for Wireless Personal Area Networks (WPANs) Submission Title: [IG 6tisch Closing Report for.
LonWorks Introduction Hwayoung Chae.
Security of the Internet of Things: perspectives and challenges
CloudMAC: Moving MAC frames processing of the Sink to Cloud.
Contiki OS Sharvil Patel, Michael Ray, Emily Rowland 1.
Lightweight security protocols for the IoT
Software Architecture of Sensors. Hardware - Sensor Nodes Sensing: sensor --a transducer that converts a physical, chemical, or biological parameter into.
Low-Power Interoperability for the IPv6 Internet of Things Presenter - Bob Kinicki Low-Power Interoperability for the IPv6 Internet of Things Adam Dunkels,
Computer System Structures
Developing IoT endpoints with mbed Client
Performance analysis of an IP based protocol stack for WSNs
Network Fundamentals – Chapter 5
Operating System for Sensor Network
Chapter 6: Network Layer
 ZigBee is a language that allows you to control the everyday devices around you.
20th CJK UNIOT-WG (Smart IPv6 Networking)
Chapter 24: Internet of Things (IoT): Growth, Challenges and Security
Algorithms for Big Data Delivery over the Internet of Things
Chapter 6: Network Layer
Final Review CS144 Review Session 9 June 4, 2008 Derrick Isaacson
Network Fundamentals – Chapter 5
The Web Sensor Gateway Architecture for ZIGBEE
CPE 401 / 601 Computer Network Systems
6LoWPAN Interoperability
Extending IP to Low-Power, Wireless Personal Area Networks
Software Defined Networking (SDN)
Network Fundamentals – Chapter 5
Network Fundamentals – Chapter 5
Network Fundamentals – Chapter 5
Network Fundamentals – Chapter 5
Speaker:Chen-Yu Tseng Advisor : Dr. Ho-Ting, Wu
Network Fundamentals – Chapter 5
Denial-of-Service Jammer Detector Training Course Worldsensing
Network Fundamentals – Chapter 5
Network Fundamentals – Chapter 5
Network Fundamentals – Chapter 5
Network Fundamentals – Chapter 5
Bing Liu, Yuefeng Wu IETF July 2017
Zephyr 真正的开源软件(Linux Foundation),宽松自由的许可证(Apache 2.0)
Network Fundamentals – Chapter 5
Firmware security integrity checking Andrea Battaglia, Aspisec IT
Intelligent Management of Industrial IoT Bill Karakostas, VLTN
IoT Modelling Framework and Papyrus Shuai Li, CEA
CHARIOT-VESSEDIA Workshop 9 May 2019, Dublin, Ireland
Presentation transcript:

The Contiki Operating System Allan Blanchard, INRIA CHARIOT-VESSEDIA Workshop “THE ROAD AHEAD FOR A COGNITIVE COMPUTING PLATFORM SUPPORTING A UNIFIED APPROACH TOWARDS PRIVACY, SECURITY AND SAFETY (PSS) OF IOT SYSTEMS” The Contiki Operating System Allan Blanchard, INRIA CHARIOT-VESSEDIA Workshop 9 May 2019, Dublin, Ireland CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

Overview of Contiki

A lighweight OS for Internet of Things Open Source OS (BSD License) https://github.com/contiki-ng/contiki-ng C-based (+ protothreads) Supports many embedded platforms Supports standard low-power IPv6 Certified IPv6 stack from CISCO in 2008 6LoWPAN (IPv6 for IEEE 802.15.4) RPL (Routing in “low-power and lossy networks”) CoAP (Application layer (HTTP-lite)) TSCH and 6TiSCH CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland Typical Scenarios Traffic lights Parking spots Public transport Street lights Smart metering … IoT scenarios: smart cities, building automation, … Multiple hops to cover large areas Low-power for battery-powered scenarios Nodes are interoperable and addressable (IP) Light bulbs Thermostat Power sockets CO2 sensors Door locks Smoke detectors … CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland Typical hardware Many different platforms (currently 9 + variants) 8, 16, 32 bits MCUs Typically an IEEE 802.15.4 radio Battery-based RAM (4-10s of kB) ROM (10-100s of kB) Sensors / actuators CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland Security risks If the operating system fails, everything fails Wireless devices, easy to access No memory protection unit on most targeted devices Even if there was one, no distinction user/kernel space in Contiki CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

Target of Verification

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland Contiki Code Base 250k lines of C code from more than 150 contributors The operating system is too large to be entirely verified (for now) And unit tests are under-represented We focus on platform independent code (useful for any instance) 100k lines of C code We need to further restrict the code base CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

Contiki (Selected) Code Base Module kLOC Description Priority lib 39.3 Different general purpose librairies   |- lib/*.[ch] 2.1 Memory management, lists, crypto, etc. HIGH |- lib/dgb-io 0.7 Debugging tools using input/output MED net 36 Networking stack |- net/ipv6 11.9 IPv6 stack |- net/mac 8.2 MAC layers |- net/mac/csma 0.5 Standard CSMA MAC |- net/mac/framer 1.3 Encoding and decoding of MAC frame headers |- net/mac/*.[ch] 0.2 MAC API |- net/routing 8 Currently RPL implementations |- net/*.[ch] 0.9 Neighbour tables, packet buffers etc. sys 1.8 Core components: scheduler, timers, etc. 3.9 kLOC of high priority code 23.5 kLOC of medium priority code CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland What’s hard to analyse? Global states (a lot of them) Static configurations (code coverage is hard to evaluate) Tricky C constructs (protothreads) Long functions (sometimes several thousand lines for a single one) And sometimes all of this in the same time CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

Tools and Methods

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland High priority code Target functional verification Select critical modules Analyze them in isolation We use Frama-C + WP CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland Medium priority code Show the absence of runtime errors Using abstract interpretation (We use Frama-C + EVA) Using minimal contracts (also used on some high priority code) When all of this is too hard, use runtime verification Ongoing experiment that aims at running instrumented Contiki instances We use Frama-C + E-ACSL CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

Conclusion

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland Take home message Contiki is a lightweight open-source OS for IoT It has originally been designed without security in mind Targeted devices are easy to reach and do not have hardware protection We have focused our verification effort on the most used and critical code Tools should be chosed according to the properties to verify The more a module is critical, the more the verification should be detailed CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland

CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland Contact Details INRIA Allan Blanchard allan.blanchard@inria.fr The projects CHARIOT & VESSEDIA have received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 780075 & No 731453. CHARIOT – VESSEDIA Workshop, 9 May 2019, Dublin, Ireland