Open Sourcing the Internet of Things



Similar documents
Programming the Internet of Things

Present and Act Upon. Register. Consume. Stream Analytics. Event Hubs. Field Gateway. Applications Cloud Gateway. Legacy IoT (custom protocols)

Getting Started Android + Linux. February 27 th, 2014

AllJoyn Analytics Service Framework 1.0 Interface Definition

Secure Cloud and Remote Service Connections for AllJoyn Applications

Secure Cloud and Remote Service Connections for AllJoyn Applications

Secure Cloud and Remote Service Connections for AllJoyn Applications

An Open Source project building the framework for the Internet of Things (IoT)

IoT Cloud, All Seen Alliance. Masanari Arai 荒 井 真 成 CEO, Kii Corpora0on

AllJoyn Framework System Overview

AllJoyn Device System Bridge

Cid Santos Luis Matos. Introduction to AllJoyn

An Open Source project building the framework for the Internet of Things (IoT)

Getting Started with the AllJoyn Lighting Service Framework 14.12

Convergence of Open Source Projects and Standards Development SES Webinar Series

Service-Oriented Architectures

MDM and Telco Service Development OMA Device Management and Platforms

Mobile Devices: Server and Management Lesson 05 Service Discovery

Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards)

Internet of Things based approach to Agriculture Monitoring

Using AllJoyn with Apache Cordova, Python & Node

Introducing BEEKS Proximity Solutions. Developer Kit Gets You Started

OpenDaylight - An Open Source Community and Meritocracy for Software- Defined Networking

New Tools for Commercial Video over IP

Mobile Operating Systems. Week I

Cross-Platform Software Considerations for Internet of Things

SIP Protocol as a Communication Bus to Control Embedded Devices

Service and Resource Discovery in Smart Spaces Composed of Low Capacity Devices

GreenPeak White Paper Wireless Communication Standards for the Internet of Things

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: Security Note

Software design (Cont.)

The OMA Perspective On SOA in Telecoms

ONEM2M SERVICE LAYER PLATFORM

1 What Are Web Services?

Introduction to Service Oriented Architectures (SOA)

Classic Grid Architecture

Peer to Peer Search Engine and Collaboration Platform Based on JXTA Protocol

The Future of IoT. Zach Shelby VP Marketing, IoT Feb 3 rd, 2015

Internet of things (IOT) applications covering industrial domain. Dev Bhattacharya

Security in Internet of Things using Delegation of Trust to a Provisioning Server

Here to take you beyond Mobile Application development using Android Course details

Vortex White Paper. Simplifying Real-time Information Integration in Industrial Internet of Things (IIoT) Control Systems

Detecting rogue systems

MOBILIZING ORACLE APPLICATIONS ERP. An Approach for Building Scalable Mobility Solutions. A RapidValue Solutions Whitepaper

BlackBerry Enterprise Server for Microsoft Exchange Version: 5.0 Service Pack: 2. Feature and Technical Overview

1 What Are Web Services?

Ikasan ESB Reference Architecture Review

IoTivity Connecting Things in IoT. Ashok Subash

Developer Documentation Revamp Proposal. Wayne Lee

Feature Guide Elastic Path Cortex. Version 6.5.1

Integrating Web Messaging into the Enterprise Middleware Layer

TREK GETTING STARTED GUIDE

Making Sense of Internet of Things Protocols and Implementations

Architecting Composite Component Systems for Heterogeneous Environments with Open Standards. Derek Dominish

Building the Internet of Things Jim Green - CTO, Data & Analytics Business Group, Cisco Systems

Business Process Execution Language for Web Services

Mopria Certification on Xerox Devices Built on Xerox ConnectKey Technology White Paper

ConnectVirginia EXCHANGE Onboarding and Certification Guide. Version 1.4

Configuration Guide. BlackBerry Enterprise Service 12. Version 12.0

Configuration Guide BES12. Version 12.2

Cloud Standards. Arlindo Dias IT Architect IBM Global Technology Services CLOSER 2102

Key requirements for Interoperable IoT systems

Fast Innovation requires Fast IT

What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications.

A Data Centric Approach for Modular Assurance. Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011

SIF 3: A NEW BEGINNING

Library Requirements

Interoperability between Sun Grid Engine and the Windows Compute Cluster

API Management Introduction and Principles

ATHABASCA UNIVERSITY. Enterprise Integration with Messaging

In-Vehicle Networking

Building Your EDI Modernization Roadmap

Short messaging solutions, including XMPP based instant messaging and text based conferences, between health care providers and general practitioners

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

CompatibleOne Open Source Cloud Broker Architecture Overview

WIND RIVER INTELLIGENT DEVICE PLATFORM XT

Configuration Guide BES12. Version 12.1

AllJoyn Android Environment Setup Guide

ONEM2M SERVICE LAYER PLATFORM INITIAL RELEASE

A Survey Study on Monitoring Service for Grid

Questions from The New SensorTag - IoT Made Easy Webinar

Introducing etoken. What is etoken?

Basic Exchange Setup Guide

Installing Policy Patrol on a separate machine

Virtual Team Collaboration Glossary

Standardizing the Internet of Things; Boiling the Ocean

In ediscovery and Litigation Support Repositories MPeterson, June 2009

TREK GETTING STARTED GUIDE

Transcription:

Open Sourcing the Internet of Things Greg Burns Technical Steering Committee Chair AllSeen Alliance 24 March 2015 AllSeen Alliance 1

Companies will win over Internet of Things not in the boardroom, but on the command line. The consortium that gets excellent code to market first, with a community that provides great documentation and an inviting atmosphere, will win. So far, only AllSeen has done that, with code available for download today. Matt Asay, VP Mobile at Adobe, via readwrite.com 2

History of AllJoyn Late 2009 Released as API Framework For Bluetooth Peer-To-Peer Connectivity Provided a protocol for rapid protocol development. Used DBus serialization format (standard on Linux platforms) Implemented distributed message-based software bus Extended to include WiFi and other reliable transport protocols Focused on proximal peer-to-peer applications (gaming, multi-screen, file sharing) Early 2011 - AllJoyn Released as Open Source Project on AllJoyn.org Supported Android, Linux and Windows PCs Late 2013 - AllSeen Alliance Formed To promote AllJoyn technology as the standard for IoT 24 March 2015 AllSeen Alliance 3

The Problem To Be Solved The problem to be solved DISCOVER Nearby Friendly Devices IDENTIFY Services Running on Those Devices ADAPT To Devices Coming & Going MANAGE Diverse Transports INTEROPERATE Across Different OS s EXCHANGE Information & Services SECURE Against Nearby Bad Actors 24 March 2015 AllSeen Alliance 4

AllJoyn Mesh-of-Stars Network Architecture AllJoyn Router nodes Router Discovery/advertising Presence/session-management AllJoyn Router Publish/subscribe support Leaf nodes AllJoyn Router lication code Authentication and encryption AllJoyn Router AllJoyn Router 24 March 2015 AllSeen Alliance 5

IoT and IoP Standards Exist to Enable Interoperability AllJoyn is a standard protocol for developing standard protocols The AllSeen Alliance is First and Foremost an Open Source Project Takes a code first approach to standardization Code is normative specifications are informative The Standardization Mission of the AllSeen Alliance is Twofold: Maintain and evolve AllJoyn as the core framework for IoT Define open vertical standards as software interfaces on top of the core framework These Software Interfaces are Formalized in Two Ways A description in a standardized XML schema An embodiment in an approved open source implementation 24 March 2015 AllSeen Alliance 6

Devices Describe Their Capabilities Via Discoverable Self-Describing Service Interfaces I can send notifications. I have control panel I have a clock interface I can send notifications I display notifications. I have the clock interface! I display notifications. I have the clock interface! I can send and display notifications I can send notifications I have control panel I display notifications. I have the clock interface! 72 120 80 The AllJoyn software framework is a collaborative open source project of the AllSeen Alliance I have lighting interface 24 March 2015 AllSeen Alliance 7

Path to Interoperability To Pass Certification, Products Must Be Based on the Open Source Implementation Eliminates common cause of failed IoP misinterpretation of the specification Certification testing ensures compliance at interface level Device to device IoP tests provide functional compliance Function of Many Working Groups is Definition of Interfaces for Specific Verticals roved interfaces can become part of the standard Deliverables from working groups include working code, unit tests, and compliance tests Devices that implement an interface must implement it completely 24 March 2015 AllSeen Alliance 8

Software Architecture Leaf Node lication Layer AllJoyn Service Frameworks Onboarding Control Panel Notifications Lighting Etc Authentication & Encryption Advertising & Discovery Serialization & Deserialization Sessions & Presence AllJoyn Core AllJoyn Core Physical Layer Routing Node Physical Layer(s) About & Introspection Management Functions Multicast Fan-out Store & Forward Router Discovery Subscription & Filtering Message Router 24 March 2015 AllSeen Alliance 9

AllJoyn Core Implementations Standard Core Library Implemented in C++ Targets HLOS applications Platform-specific language bindings High-level abstraction Multi-thread support Synchronous and asynchronous APIs Dynamic object creation via introspection Library size around 600K bytes Thin Core Library Implemented in C Targets embedded RTOS applications C APIs Directly exposes AllJoyn message layer Single thread message handler Blocking send/receive calls Static object and interface definitions Library size around 80K bytes 24 March 2015 AllSeen Alliance 10

AllJoyn Base Services ONBOARDING CONFIGURATION NOTIFICATIONS CONTROL PANEL 24 March 2015 AllSeen Alliance 11

C&C and IRB AllSeen Alliance Branded Products Must Meet Certification & Compliance Requirements Currently a self-certification process Must demonstrate that standard interfaces are being correctly used Must pass feature level interoperability tests Must be based on a compliant base implementation of the open source code Interface Review Board A body composed of AllSeen Alliance members charged with approving interface definitions Ensures interfaces a consistent and conform to best practices Ensures interfaces are non-overlapping Ensures interfaces are reasonably atomic 24 March 2015 AllSeen Alliance 12

Sample Interface Definition <node name="/about" xmlns:xsi= http://www.w3.org/2001/xmlschema-instance xsi:nonamespaceschemalocation="http://www.allseenalliance.org/schemas/introspect.xsd"> <interface name="org.alljoyn.about"> <property name="version" type="q" access="read"/> <method name="getaboutdata"> <arg name="languagetag" type="s" direction="in"/> <arg name="aboutdata" type="a{sv}" direction="out"/> </method> <method name="getobjectdescription"> <arg name="objectdescription" type="a(sas)" direction="out"/> </method> <signal name="announce"> <arg name="version" type="q"/> <arg name="port" type="q"/> <arg name="objectdescription" type="a(sas)"/> <arg name="metadata" type="a{sv}"/> </signal> </interface> </node> See About Interface Specification: http://allseenalliance.org/docs-and-downloads/documentation/alljoyn-about-feature-10-interface-specification 24 March 2015 AllSeen Alliance 13

AllSeen Alliance Project Structure Working Groups Provides an umbrella for a collection of related projects Each working group chair gets a voting seat on the Technical Steering Committee (TSC) Projects Projects are where code gets committed to the AllSeen Alliance Each project has maintainer and one or more committers Committers are responsible for conducting code reviews and maintaining the integrity of the project Anyone (member or not) can contribute to any project Sub-Committees Under the TSC Perform various functions not necessarily related to code contribution Interface Review Board, Security Committee, Tools and Infrastructure Committee 24 March 2015 AllSeen Alliance 14

Project Workflow Proposal One or more members make a proposal for a new project Scope and timeline must be well defined Project contributors, committers, and maintainer must be identified Incubation Design underway, code is being contributed Mature Shows a track record of ongoing contributions Ready or close to production quality release Compliance test cases delivered to C&C working group Foundational Vetted for patent protection by membership 24 March 2015 AllSeen Alliance 15

Technical Steering Committee (TSC) TSC Membership Software architects and domain experts representing premier members Working group chairs Responsibilities rove projects and assign mature projects to working groups rove features and set schedules for releases Act on recommendations from IRB, security and other subcommittees Manage budget for technical services Provide technology updates and briefings for the broader membership 24 March 2015 AllSeen Alliance 16

Current Working Groups Analytics & Telemetry Core Gateway Base Services Data- Driven API Lighting Certification & Compliance Developer Tools Smart Home 24 March 2015 AllSeen Alliance 17

Collaboration Scorecard Projects 9 Working Groups 31 Projects 5367 Files Contributions 83 Individual Contributors 17 Member Companies >3000 Contributions Code >620,000 SLOC 250,000 Comment Lines 7 Programming Languages 24 March 2015 AllSeen Alliance 18

For More Information Alliance Wiki: https://wiki.allseenalliance.org Documents, downloads, and developer tools Source Code, release overviews, roadmaps Training & Service Framework details Working Groups, New Proposals & meeting minutes Forums: https://ask.allseenalliance.org/questions Certification: https://allseenalliance.org/certification Releases & Roadmaps: https://wiki.allseenalliance.org/release/overview Public Mail Lists: https://lists.allseenalliance.org/mailman/listinfo Showcase: https://allseenalliance.org/showcase Monthly Newsletter: https://allseenalliance.org/news-andevents/newsletters 19

Thank you Follow us on For more information on AllSeen Alliance, visit us at: allseenalliance.org & allseenalliance.org/news/blogs 24 March 2015 AllSeen Alliance 20