The Vault

The Internet of Things Runs on Linux
Presentation / Aug 2015 / IoT,, oneMPOWER

To truly enable the next generation of applications, the IoT should start to look more like an operating environment stated InterDigital's Steve Burr repeatedly in his presentation at LinuxCon 2015. Check out his slides here to learn more about InterDigital's

the internet of things runs on linux and ?why ?that?s ?important Steven ?Burr Engineering ? Director, ? what is the internet of things? many things to many people what is the iot? ? It?s ?an ?evolution ? Machine-??to-??machine ?(M2M) ?has ?existed ?for ?decades ? It?s ?valuable ? ?The ?Internet ?of ?Things ?is ?worth ?$14.4 ?trillion?nearly ? the ?entire ?U.S. ?gross ?domestic ?product.? ??ZDNet ? It?s ?big ? 20-??30 ?billion ?connected ?devices ?by ?2020 ??McKinsey ?& ? Company how big was that? Source: ?The ?Internet ?of ?Things, ?MIT ?Technoloty Review, ?Business ?Report ? Nearly ?30 ?billion ? connected ? devices ?in ?5 ? years ? Everyday ? connected ? things ?will ? outnumber ? mobile ?phones ? in ?that ?time iot the ?things ?of ?the ??internet ?of ?things? what sort of things? ? Health ?Care ? Logistics ? Energy ?/ ?Utilities ? Public ?Infrastructure ? Building ?/ ?Construction ? Transportation ? Retail ?/ ?Consumer ? Industrial what?s in a thing? ? MPUs ? RAM ? Interfaces ? Capabilities ?vary ?greatly! ? Even ?JSON ?or ?HTML ?can ?be ?expensive! what else is in a thing? ? Can ?categorize ?by ?interaction ? direction ? World ?to ?thing ? Sensors ?? temperature, ?pressure, ? humidity, ?light, ?sound, ?motion, ?flow, ? chemical, ?etc. ? Thing ?to ?world ? Actuators, ?LEDs, ?switches, ?FPGAs, ?etc. connecting to a thing ? Ethernet ? Sometimes ? Wireless ? ? Much ?more ?frequently ? Wifi, ?Bluetooth?, ?LoRa, ?LoRaWAN, ? Cellular, ?Satellite, ?Zigbee, ?Bluetooth? ? low ?energy, ?Cellular, ?Ethernet, ? Thread, ?Wi-??fi?, ? ?Zigbee IP, ?Zigbee NAN, ?6LoWPAN, ?etc. where are the things? ? Inside ? Outside ? On ?(or ?inside) ?our ?persons ? Industrial ?scenarios ? Mining ?facilities ? Outer ?space ? Off ?shore ?oil ?rigs ? Under ?water implications ? Wireless ?usually ?a ?must ? Often ?ultra ?low ?power ?or ?passive ? Intermittent ?connectivity ? Processing ?limitations ? Memory ?constrained ? Security ?(physical ?and ?logical) ? Mostly ?stateless ? Cheap ?(even ?disposable) who?s making the things? ? Traditional ?product ?development ? Industrial ?engineers ? Systems ?integrators ? Makers ?(Kickstarter effect) ? Increasingly ?coming ?from ?software ?side ? Often ?think ?application ?first a few example boards ? Raspberry ?Pi ? Arduino ? Beaglebone Black ? Intel ?Galileo, ?Edison ? Atmel ? Multitech ? B+B ?Electronics ? Freescale ? And ?hundreds ?more? and most of them run linux so why linux for the things? ? Complexity ?and ?breadth ?of ?problem ?is ?tailor-??made ? for ?modular ?solution ? Multiple ?technologies ? Multiple ?OEMs ? Multiple ?generations ? Multiple ?protocols ? Unix ?Philosophy ?can ?be ?summarized ?as ??Do ?one ? thing, ?do ?it ?well.? Abridged ?version ?of ?Doug ?McIlroy?s summary ?of ?the ?philosophy ? in ?Peter ?H. ?Salus's 1994 ?book A ? Quarter ?Century ?of ?Unix so why linux for the things? ? Kernel ?+ ?modules ?OS ?design ?is ?readily ?composable where ?resources ?are ?at ?a ?premium ? Don?t ?need ?USB ?drivers? ?No ?problem ? Don?t ?need ?Video ?drivers? ?No ?problem ? Don?t ?need ?Wifi? ?No ?problem ? Module ?makers ?can ?choose ?how ?much ?time ?to ? spend ?creating ?finely ?tuned ?versions ?of ?the ?OS ? Concentrate ?on ?your thing so why linux for the things? ? Familiar ?and ?proven ?toolchain ? compilers, ?editors, ?debuggers, ?shells, ?utilities ? Existing ?frameworks ?and ?components ? network ?stacks, ?standard ?libraries, ?? ? processes, ?sockets, ?pipes, ?threading, ?security, ?crypto, ?? ? Simplifies ?application ?porting ? Generally ?more ?accessible ?to ?the ?software-??first ? newcomers so why linux for the things? ? Because ?it?s ?free ?and ?open ?source ? When ?you ?are ?building ?the ?first ?ever ?of ?its ?kind, ?it ?stands ? to ?reason ?you ?might ?need ?to ?tweak ?a ?thing ?or ?two! ? Because ?so ?many ?of ?its ?applications ?are ?free ?and ? open ?source ? See ?above! ? Free ?and ?open ?source ?is ?even ?spilling ?over ?into ?the ? hardware ?itself ? Arduino, ?Beaglebone Black, ?Particle ?Photon, ?etc. iot the ?internet ?of ?the ??internet ?of ?things? what is the internet? ? RFC-??1958 ?-?? Architectural ?Principles ?of ?the ?Internet ? (1996) The ?Internet ?and ?its ?architecture ?have ?grown ?in ? evolutionary ?fashion ?from ?modest ?beginnings, ? rather ?than ? from ?a ?Grand ?Plan. it?s a network but what is the internet? ? Loosely ?coupled, ?interconnected ? machines ? Multiple ?protocols ? HTTP, ?CoAP, ?MQTT, ?Web ?Sockets, ? AMQP, ?oneM2M, ?LWM2M, ?UDP, ?TCP ? Collection ?of ?distributed ? applications internet enables applications ? Enables ?whole ?classes ?of ?applications ?that ?haven?t ? been ?imagined ?yet ? Google ?Apps, ?Office ?365, ?Salesforce, ?Amazon, ? Netflix, ?Facebook, ?Twitter, ?eTrading, ?Fantasy ? Football, ?Starcraft, ?YouTube, ?Go2Meeting, ?Twitch ? provides abstraction ? Standardized ?protocols ?and ?network ?layers ?provide ? useful ?levels ?of ?abstraction ? Allows ?applications ?to ?focus ?on ?their ?unique ? functionality ?Do one thing, do it well.? microservices ? Deployable ? Dependency ?management ?-?? down ?to ?OS ? Scalable ? Unix ?philosophy ?-?? composability docker containers ? Run ?multiple ?services ?on ?single ?host ?in ?Linux ? containers ? Package ?all ?dependencies ? Provide ?complete ?filesystem ? Custom ?OS ? Shared ?kernel docker advantages ? Increased ?service ?density ? Already ?booted ?host ?means ?containers ?start ?quickly ? Portable ? Layered ?file ?system ?often ?means ?faster ?image ? downloads ? Version ?controllable ?image ?sources other docker tools ? Docker registry ? Docker image ?management ? Docker machine ? Automated ?docker provisioning ? Docker swarm ? Host ?clustering ?and ?container ?scheduler ? Docker compose ? Multi-??container ?applications pulling it all together Or, ?how ?to ?make ?the ?IoT itself ?more ?like ?Linux internet of things ? A ?loosely ?coupled ?network ?of ?connected ?devices ? and ?sensors ?and ?the ?applications ?with ?which ?they ? interact internet of things ? Devices ? Device ?management ? Streams ?of ?data ? Microservices ? Devices ? Device ?drivers ? Files ? Processes wait, we?ve seen this before in other words? To ?truly ?enable ?the ?next ?generation ?of ?applications, ? the ?Internet ?of ?Things ?should ?start ?to ?look ?more ?like ? an ?operating ?environment. ?It ?should ?start ?to ?look ? more ?like ?Linux. ?adapter ?framework Data ? Flow ? Management Container ? Management Service ? Discovery Authorization ?& ? Authentication Metering ? & ? Monitoring ?routing ? engine ?and ?message ?bus Scripting Stream ?Processing Reporting Big ?Data ?Store Device ?Management as ?a ?ServiceHorizontal D evice ?M anagem ent ?Platform ?API D at a ?S er vic e ? Ex ch an ge ?A PI Semi Consortium Enterprise Device ?M anagem ent ? ?Platform s Enterprise ?and ?Consumer ?Application ?Programmer ?Interface Health ?Care Oil ?& ?Gas Industrial Smart ?City Building ?Automation IoT ?and ?M2M ? Device ?Management ?& ? Connectivity ?Solutions Data ?Service ? Exchange Proprietary (thousands) MORE MORE HTTP Web ?Socket MQTT CoAP XMPPAMQP UDP/TCP IoT and ?M2M ?Applications MORE operating environment characteristic iot data ? Big ? Dirty ? Continuous ?or ?batch ? Time ?series ? Same ? Often ?steady ?state ?with ?little ?variation ?(punctuated ?by ? divergences ?of ?extreme ?interest!) ? Different ? Heterogeneous ?or ?ephemeral ?networks ?lead ?to ? structured ?data ?with ?varying ?schemas ?One ?of ?the ?myths ?about ?the ?Internet ?of ? Things ?is ?that ?companies ?have ?all ?the ?data ? they ?need, ?but ?their ?real ?challenge ?is ?making ? sense ?of ?it. ?In ?reality, ?the ?cost ?of ?collecting ? some ?kinds ?of ?data ?remains ?too ?high, ?the ? quality ?of ?the ?data ?isn?t ?always ?good ? enough, ?and ?it ?remains ?difficult ?to ?integrate ? multiple ?data ?sources.? ??Chris ?Murphy, ? Editor, ?Information ?Week what kind of applications? ? Business ?Rules ?and ?Logic ? Analytics ? Visualization ? Reporting ? Storage ? NoSQL ?DBs ?and ?RDBMS, ?Log ?stores, ?Graph ?DBs ? Messaging System ?Integrators Infrastructure ?/ ?Platforms Connected ?Devices Device ?Management ?& ?Connectivity Elasticsearch? ? ? ? ? + Kibana MongoDB + Pentaho? MongoDB + Apache? ?Solr Device ?Data ?Processing ? oneMPOWER Atmel B&B TI Intel IBM BlueMix partners TEMPLATER MAT H FLOW ?CONTROL HTTP ?REQUESTS Productivity Messaging Social Analytics Services Developers Cryptocurrency service adapters what kind of infrastructure? ? Dynamically ?provisioned ?virtual ?machines ? openstack (especially ?Nova ?and ?Swift) ? Other ?cloud ?platforms ? Provisioning ?of ?and ?to ?devices ? Configuration ?management ? Containerized ?services ? Docker ? Other ?container ?technologies what kind of infrastructure? ? Message ?based ? Flexible ?schemas ? Instructions ?as ?data ? Flexible, ?declarative ?routing ?at ?scale ? Even ?more ?flexible ?than ?just ?pub/sub ? Pipelines: ?transformed ?data ?is ?also ?data ? Tools ?for ?reporting ?and ?analysis what is docker lacking today? ? Better ?port ?and ?volume ?management ? Pulling ?images ?(swarm) ? Additional ?transport ?protocols ? Deeper ?support ?for ?IoT chips ?and ?modules ? Orchestration* orchestration? ? My ?smart ?toaster ?and ?my ?smart ?coffee ?maker ? should ?cooperate ?so ?my ?bagel ?and ?my ?coffee ?are ? ready ?together ? Sensor ?data ?from ?traffic ?cameras ?should ?be ?routed ? to ?appropriate ?government ?agencies ?and ?services ? after ?processing, ?sanitization, ?transcoding. ?Some ? agencies ?forward ?to ?others. ?Some ?routes ?are ? ephemeral. ? In ?the ?world ?of ?IoT, ?no ?device ?or ?application ?is ?an ? island case study Ship ?IoT with ?, ?Atmel, ?PubNub, ?, ?, ?and ? Circonus block diagram Data ?Service ? ExchangeTM and ? Operating ? Environment ? Web ?API ? automation ? connectors ?to ? many ?popular ?web ? services ? Triggered ?by device ?data ?to perform series ?of ? actions ? Alternately, ?run ?on ? defined ?schedule ? Route ?device ?data ?to ?pre-?? defined ?Javascripts ? Perform ?arbitrary ?business ? logic ?in ?cloud ? Contact ?other ?services ?or ? return ?data ?to ?data ?service ? exchange ? Github integration ?for ? version ?control circonus ? Monitoring, ?graphing, ? analysis ?of ?device ?data ? Route device ?data ?to ? checks ?and ?graphs ? Visualize ?and ?analyze ? data ?graphically ? Embed ?graphs ?in ?other ? applications ?like ? dashboards it bears repeating? To ?truly ?enable ?the ?next ?generation ?of ?applications, ? the ?Internet ?of ?Things ?should ?start ?to ?look ?more ?like ? an ?operating ?environment. ?It ?should ?start ?to ?look ? more ?like ?Linux. thank you email: ? twitter: ?@sburr