humans don't scale - the future of the internet of things

28
Humans don’t scale The future of the Internet of Things Pilgrim Beart [email protected] SN31

Upload: pilgrim-beart

Post on 19-Jun-2015

694 views

Category:

Technology


0 download

DESCRIPTION

A talk to the Cambridge University Computer Laboratory, by Pilgrim Beart (currently a Visitor there) on 21st January 2013.

TRANSCRIPT

Page 1: Humans Don't Scale - the future of the Internet of Things

Humans don’t scaleThe future of the Internet of Things

Pilgrim [email protected]

SN31

Page 2: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 2

Today: my perspective on IoT

• What is it?• Why is it (not) happening now?• Interesting problems

Page 3: Humans Don't Scale - the future of the Internet of Things

3

My backgroundSmart Energy Analytics Smart Heating Smart Appliances Smart Home

Analysis on how I & when I use

energy to help understand my bill and

advice on how to save.

• Heating

• Cooling

• Hot water

Information Remote Control

• Appliances • Lights

• Locks

• Security

• Cameras

Page 4: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 4

“Smart” => Connected

=

EMBEDDED

DATA AND CONTROL +UBIQUITOUS

CONNECTIVITY

Page 5: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 5

Every day seems brings a new internet-connected thing/service

Page 6: Humans Don't Scale - the future of the Internet of Things

IoT means more than just“internet-connected-things”

Page 7: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 7

Why now?

• Trend: from Products->Service– Enduring service relationship (vs. one-time sell)– Easier UX – SmartPhone App– Remote access & control (for humans & machines)

• Barriers falling– Increasing availability of Internet dial-tone– Falling costs of connecting

• ARM: huge growth in embedded licenses

Page 8: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 8

Why hasn’t IoT taken-off yet?

• Everyone solving just their own problems– 1:1 applications (for that one product only)– Machine-to-human applications

• Everyone building complete architectures• “The nice thing about standards is that you have so

many to choose from”– 3rd-party parts today don’t just interoperate

• Humans (engineers) still have to get involved in making services & things work together... and humans don’t scale

Page 9: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 9

Page 10: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 10

Page 11: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 11

“me-centric” approach inhibitsscaling

Tech:MB/s,People:Dev’t,

Commercial:Lock-in

multiple API’s

different from everyone else’s

inhibits network-effect

Page 12: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 12

“It’s not what’s in the boxes that matters, it’s how they are connected”

Toby Jaffey

Page 13: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 13

Page 14: Humans Don't Scale - the future of the Internet of Things

Thing

ThingThing

Thing Thing

ThingThing

Thing

Thing Thing

14I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi!

Page 15: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 15

API representations & paradigms• Data representations

– JSON– XML– database schema

• API paradigms– RESTful– PubSub (topic broker)

• Broker-centric– AMQP (RabbitMQ etc.)– MQTT (mosquitto)

• Distributed– ØMQ– Socket.IO

• Available open source• Available as Cloud

– Cloud.IO, Iron.IO, PubNub…

• … plus many proprietary ones

POLLING

Page 16: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 16

Unlikely everyone will agree on a single standard/framework for IoT connectivity

…but they don’t need to• Can glue different API’s together automatically

iff they share common semantics

Page 17: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 17

“Connected” at what layer?

• At layer 7 we have the application, by definition unique since it’s where the value is added

• Somewhere in layer 6-7 is where some common IoT conventions could really help.

• Layers 3 & 4 are TCP/UDP/IP by definition, since we are talking about the Internet of Things

• Layers 1 & 2 will vary, and we want to insulate App writers completely from that

Page 18: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 18

Minimum semantic connectivity(not an ontology)

• A lingua franca for machines• Can’t possibly envisage all uses

– So inventing a superset is doomed to failure• So identify minimum common subset

– i.e. the intersection of sets, not the union!

Common to all applications… Common to all PHYs…

COMMON

COMMON

cf. Semantic Web

vs. FOAF

Page 19: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 19

Common problems =>Common semantics

• For Data– Enumerate data “channels” of a Thing– (name, type, value)– Data rates, push vs. pull etc.

• For Managing Things– ID– Commissioning

• Securely attaching to LAN, WAN & services

– Topology (child devices)– Upgrades

• …ideally all built on a small set of canonical types

Page 20: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 20

Semantics isn’t just for connectivity

IP

Comms stack: DB stack:

Storage

BSON

Common Semantics

Application

Rules:

Common Semantics

Rules

Rules Engine

TCP

SSL

MQTT

JSON

Common Semantics

Application

Page 21: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 21

Today we have vertical platformsSecurity Lighting Energy Heating Telecare… …

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

Page 22: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 22

IoT requires horizontal platforms

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

Security Lighting Energy Heating

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

Telecare

Device Persistence

Data Warehouse

Devices

Gateways

Skyhooks

UI’s

Apps

Device Mgmt

Scale Testing

… …

Directory& Auth

Directory& Auth

Directory& Auth

Directory& Auth

Directory& Auth

Page 23: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 23

REDUCING IT TO PRACTICEI’m an engineer, so…

Page 24: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 24

Start with the customer:What do IoT customers want?

1. Scale to millions (of users & of sensors) - cost-effectively– i.r.o. $0.10/user/month or $0.01/sensor/month with per-minute updates

2. Easy to manage– subset of 1): scaling practical only if cost-effectively managed*

3. Reduced Time- and Cost-to-market– minimal engineering time, minimal NRE costs*

4. 3rd-party enablement (ecosystem)– end-devices and gateways can be added without IoT core code changes*– agnostic (no lock-in)

5. Reliable6. Secure7. Rapid evolution of every part (but stable architecture)

*because Humans Don’t Scale

Page 25: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 25

To prove it, build it

Component Implementation

Directory & Auth (Ab)use DNS?

UX HTML+Websockets?Data representation JSON/BSON

API paradigm MQTT/AMQP/ØMQ?

Data warehousing & Persistence

TempoDB & MongoDB

Device Mgmt, Apps Async (node.js?)

Device Raspberry Pi? mBed?

PHY 6LoWPAN?

Important principle: Every part of this can be swapped-out for an alternative (proves it’s open). Ideally, prove that by implementing 2 alternatives for each.

Page 26: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 26

What next

• IoTA, led by ARM, to break down IoT silos.– Current focus:

• Semantics• Security• Management

– Bidding for TSB-funding• Any CL projects of relevance to our bid?

Page 27: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 27

Interesting problems (to me!)Most aren’t unique to IoT. But we need automation because Humans Don’t Scale• General Semantics (what existing frameworks can we ride on?)• Scaling++: see what breaks & fix it

– Fun Hobby: run client+server on “infinitely elastic cloud” and let them rip each other apart!– Memcached doesn’t help writes (REDIS, Mongo etc.)– Sharding good for writes, but manually precomputing reduces

• Debugging distributed systems– e.g. Google’s Dapper

• Getting data to the right place automatically– Gossip protocols– Migration as the norm

• Constantly take advantage of latest Cloud services• Backup as an intrinsic property of the architecture, not of a particular database technology

• “Rules” that move automatically to run in the right place– Even partition automatically too

• Energy efficiency

• Nodes in a Pubsub graph start to look like neurons…

Page 28: Humans Don't Scale - the future of the Internet of Things

I’m in CUCL room SN31 Mondays & Tuesdays – come & say hi! 28

Thanks for listening

• Please do introduce relevant colleagues

Pilgrim [email protected]