SlideShare une entreprise Scribd logo
1  sur  20
14th
September '13 Wuthering Bytes 2013 1
Wuthering Bytes :: September 2013
“Polling is for Wimps?”
@paul_tanner
14th
September '13 Wuthering Bytes 2013 2
Polling is for Wimps
● “Internet of Things”
● System approach
● Protocols and choices
● Security and availability
● Current project
● Workshop tomorrow
14th
September '13 Wuthering Bytes 2013 3
Internet of Things
● Real-time control
systems:
● Input Sensors;
● (Stateful)
processing;
● Control actuators
● Internet connectivity
14th
September '13 Wuthering Bytes 2013 4
System approach
out = in > T || out && in > -T
14th
September '13 Wuthering Bytes 2013 5
Distributed System
14th
September '13 Wuthering Bytes 2013 6
Why Rules Engine?
● IoT installations will often evolve
● System owners may be domain experts
● Best not to build the business rules in code
● Rules-based approach best
● Must be extendable (nodes, processing)
● Needs usable interface (e.g drag 'n drop)
● Engines typically needed at > 1 level
14th
September '13 Wuthering Bytes 2013 7
Distributed System
14th
September '13 Wuthering Bytes 2013 8
The Hardware
RFM12Pi
Arduino with Ethernet
14th
September '13 Wuthering Bytes 2013 9
Protocols
● XMPP – messaging/ pub/ sub
● Bayeux – pub/ sub over http
● MQTT – a lightweight pub/ sub
● numerous implementations
● REST for gets and puts
● HTTP for remote control
● In all cases: application-specific semantics :-(
14th
September '13 Wuthering Bytes 2013 10
Which to Use?
Criteria:
● Bandwidth efficiency?
● Power consumption?
● Security?
● Standardisation?
● Interoperability (local and global)?
14th
September '13 Wuthering Bytes 2013 11
Comparison
Polling Pub/ Sub
Bandwidth Efficiency 4.4M 46K*
Power consumption +10%** +10%**
Security SSL/ Cert Auth DIY
* Using MQTT (Bayeux figure was 490K)
** 3W-2.7W estimates (no real-time energy monitor available)
Test condition: download of 8 channel Xively data format every 10
minutes (download latency 1 minute)
14th
September '13 Wuthering Bytes 2013 12
Security (CI) models
● Installation firewalls: no open incoming ports
● SSL across the net (performance overhead)
● OAuth to authenticate installation access to
central services (as Twitter API)
● OAuth to authenticate admin access to
installations
14th
September '13 Wuthering Bytes 2013 13
Availability Models
Central Services:
● External monitor (on standby m/c)
● Checkpointing to data store
● Automatic restart
Installations:
● Hardware watchdog
● Cache to handle Internet outage
● Checkpointing to central service
●
Automatic restart
14th
September '13 Wuthering Bytes 2013 14
When Wimps Rule OK
● With pub/sub you may need DIY security
● The above availability model is quite complex
● Pub/sub justified if bandwidth is at a premium
● On cheap connections you can afford to be
more profligate:
● use polling for data transfers
● save on need for auto restart on central services
14th
September '13 Wuthering Bytes 2013 15
Node.js goodness
● runs great on Rpi (after 6 hour build)
● support for sockets and REST
● node MQTT.js works fine with mosquitto server
● node-serialport enables device attachment
● ease of implementing engine, rules etc
● removes heavy lifting from low-power devices
like Arduinos
14th
September '13 Wuthering Bytes 2013 16
The Elephant...
14th
September '13 Wuthering Bytes 2013 17
But this need to be
● Local conventions may not need it
● Globally:
● Distributed approach to discovery
● Needs to go to end-point level
● DNS-like network of discovery nodes
● Needs investment and collaboration
14th
September '13 Wuthering Bytes 2013 18
Current Project
ecoHome demonstrator
● mostly autonomous
● numerous sensors
● controls heating, ventilation,
shutters, lights etc.
● RPi + Arduinos, talking MQTT
● Logging to Xively (for analysis)
● Local rules engine
● Admin app on local web server
14th
September '13 Wuthering Bytes 2013 19
Workshop plug
● Get hands dirty with MQTT
● Need laptop and Arduino, RPi or equivalent
● Some kind of sensor and/ or actuator
● I have MQTT microbroker and rules engine
Ethernet
14th
September '13 Wuthering Bytes 2013 20
Contact
Paul Tanner
@paul_tanner
www.slideshare.net/paul_tanner
paul@virtual-techno.com
01494 581979
?

Contenu connexe

Tendances

Firewalls and Virtualization - pfSense Hangout June 2014
Firewalls and Virtualization - pfSense Hangout June 2014Firewalls and Virtualization - pfSense Hangout June 2014
Firewalls and Virtualization - pfSense Hangout June 2014Netgate
 
The New Edge of the Network
The New Edge of the NetworkThe New Edge of the Network
The New Edge of the NetworkTom Paseka
 
CloudModule for Zabbix
CloudModule for ZabbixCloudModule for Zabbix
CloudModule for ZabbixDaisuke Ikeda
 
Using protocol analyzer on mikrotik
Using protocol analyzer on mikrotikUsing protocol analyzer on mikrotik
Using protocol analyzer on mikrotikAchmad Mardiansyah
 

Tendances (7)

IPv6 on Mikrotik
IPv6 on MikrotikIPv6 on Mikrotik
IPv6 on Mikrotik
 
Firewalls and Virtualization - pfSense Hangout June 2014
Firewalls and Virtualization - pfSense Hangout June 2014Firewalls and Virtualization - pfSense Hangout June 2014
Firewalls and Virtualization - pfSense Hangout June 2014
 
Mikrotik firewall raw table
Mikrotik firewall raw tableMikrotik firewall raw table
Mikrotik firewall raw table
 
The New Edge of the Network
The New Edge of the NetworkThe New Edge of the Network
The New Edge of the Network
 
Contiki Presentation
Contiki PresentationContiki Presentation
Contiki Presentation
 
CloudModule for Zabbix
CloudModule for ZabbixCloudModule for Zabbix
CloudModule for Zabbix
 
Using protocol analyzer on mikrotik
Using protocol analyzer on mikrotikUsing protocol analyzer on mikrotik
Using protocol analyzer on mikrotik
 

Similaire à Polling is for Wimps?

MTCNA Intro to routerOS
MTCNA Intro to routerOSMTCNA Intro to routerOS
MTCNA Intro to routerOSGLC Networks
 
Internet Protocol Deep-Dive
Internet Protocol Deep-DiveInternet Protocol Deep-Dive
Internet Protocol Deep-DiveGLC Networks
 
Edge computing PPT slides and it's benifits and drawbacks
Edge computing PPT slides and it's benifits and drawbacksEdge computing PPT slides and it's benifits and drawbacks
Edge computing PPT slides and it's benifits and drawbacks1GV20CS058Shivaraj
 
MTCNA : Intro to RouterOS - Part 1
MTCNA : Intro to RouterOS - Part 1MTCNA : Intro to RouterOS - Part 1
MTCNA : Intro to RouterOS - Part 1GLC Networks
 
Zabbix for Monitoring
Zabbix for MonitoringZabbix for Monitoring
Zabbix for MonitoringGLC Networks
 
Zetta: An API First Platform
Zetta: An API First PlatformZetta: An API First Platform
Zetta: An API First PlatformAPI Meetup
 
Zero Downtime JEE Architectures
Zero Downtime JEE ArchitecturesZero Downtime JEE Architectures
Zero Downtime JEE ArchitecturesAlexander Penev
 
WSO2 IoT Server - Product Overview
WSO2 IoT Server - Product OverviewWSO2 IoT Server - Product Overview
WSO2 IoT Server - Product OverviewWSO2
 
SPDY and What to Consider for HTTP/2.0
SPDY and What to Consider for HTTP/2.0SPDY and What to Consider for HTTP/2.0
SPDY and What to Consider for HTTP/2.0Mike Belshe
 
FIWARE Developers Week_BootcampWeBUI_presentation1
FIWARE Developers Week_BootcampWeBUI_presentation1FIWARE Developers Week_BootcampWeBUI_presentation1
FIWARE Developers Week_BootcampWeBUI_presentation1FIWARE
 
HKNOG 6.0 Next Generation Networks - will automation put us out of jobs?
HKNOG 6.0 Next Generation Networks - will automation put us out of jobs?HKNOG 6.0 Next Generation Networks - will automation put us out of jobs?
HKNOG 6.0 Next Generation Networks - will automation put us out of jobs?Tom Paseka
 
WSO2Con USA 2015: WSO2 Platform for IoT
WSO2Con USA 2015: WSO2 Platform for IoTWSO2Con USA 2015: WSO2 Platform for IoT
WSO2Con USA 2015: WSO2 Platform for IoTWSO2
 
Container world 2019 Canary Release
Container world 2019 Canary ReleaseContainer world 2019 Canary Release
Container world 2019 Canary ReleaseBilly Yuen
 
BGP Services IP Transit vs IP Peering
BGP Services  IP Transit vs IP PeeringBGP Services  IP Transit vs IP Peering
BGP Services IP Transit vs IP PeeringGLC Networks
 

Similaire à Polling is for Wimps? (20)

MTCNA Intro to routerOS
MTCNA Intro to routerOSMTCNA Intro to routerOS
MTCNA Intro to routerOS
 
OpenFlow @ Google
OpenFlow @ GoogleOpenFlow @ Google
OpenFlow @ Google
 
Internet Protocol Deep-Dive
Internet Protocol Deep-DiveInternet Protocol Deep-Dive
Internet Protocol Deep-Dive
 
Edge computing PPT slides and it's benifits and drawbacks
Edge computing PPT slides and it's benifits and drawbacksEdge computing PPT slides and it's benifits and drawbacks
Edge computing PPT slides and it's benifits and drawbacks
 
MTCNA : Intro to RouterOS - Part 1
MTCNA : Intro to RouterOS - Part 1MTCNA : Intro to RouterOS - Part 1
MTCNA : Intro to RouterOS - Part 1
 
Zabbix for Monitoring
Zabbix for MonitoringZabbix for Monitoring
Zabbix for Monitoring
 
Zetta: An API First Platform
Zetta: An API First PlatformZetta: An API First Platform
Zetta: An API First Platform
 
Monkey Server
Monkey ServerMonkey Server
Monkey Server
 
Zero Downtime JEE Architectures
Zero Downtime JEE ArchitecturesZero Downtime JEE Architectures
Zero Downtime JEE Architectures
 
WSO2 IoT Server - Product Overview
WSO2 IoT Server - Product OverviewWSO2 IoT Server - Product Overview
WSO2 IoT Server - Product Overview
 
Fluent Bit
Fluent BitFluent Bit
Fluent Bit
 
Mikrotik fasttrack
Mikrotik fasttrackMikrotik fasttrack
Mikrotik fasttrack
 
SPDY and What to Consider for HTTP/2.0
SPDY and What to Consider for HTTP/2.0SPDY and What to Consider for HTTP/2.0
SPDY and What to Consider for HTTP/2.0
 
FIWARE Developers Week_BootcampWeBUI_presentation1
FIWARE Developers Week_BootcampWeBUI_presentation1FIWARE Developers Week_BootcampWeBUI_presentation1
FIWARE Developers Week_BootcampWeBUI_presentation1
 
Fluent-bit
Fluent-bitFluent-bit
Fluent-bit
 
HKNOG 6.0 Next Generation Networks - will automation put us out of jobs?
HKNOG 6.0 Next Generation Networks - will automation put us out of jobs?HKNOG 6.0 Next Generation Networks - will automation put us out of jobs?
HKNOG 6.0 Next Generation Networks - will automation put us out of jobs?
 
WSO2Con USA 2015: WSO2 Platform for IoT
WSO2Con USA 2015: WSO2 Platform for IoTWSO2Con USA 2015: WSO2 Platform for IoT
WSO2Con USA 2015: WSO2 Platform for IoT
 
LoRaWAN Overview for Retail
LoRaWAN Overview for RetailLoRaWAN Overview for Retail
LoRaWAN Overview for Retail
 
Container world 2019 Canary Release
Container world 2019 Canary ReleaseContainer world 2019 Canary Release
Container world 2019 Canary Release
 
BGP Services IP Transit vs IP Peering
BGP Services  IP Transit vs IP PeeringBGP Services  IP Transit vs IP Peering
BGP Services IP Transit vs IP Peering
 

Plus de Paul Tanner

Heading for the cloud
Heading for the cloudHeading for the cloud
Heading for the cloudPaul Tanner
 
Os hardware meets os software
Os hardware meets os softwareOs hardware meets os software
Os hardware meets os softwarePaul Tanner
 
Intro to IoT for RG 121110
Intro to IoT for RG 121110Intro to IoT for RG 121110
Intro to IoT for RG 121110Paul Tanner
 
Measure manage save 120917
Measure manage save 120917Measure manage save 120917
Measure manage save 120917Paul Tanner
 
Measure manage save 120917
Measure manage save 120917Measure manage save 120917
Measure manage save 120917Paul Tanner
 
Osh camp 2012 experience with adk
Osh camp 2012 experience with adkOsh camp 2012 experience with adk
Osh camp 2012 experience with adkPaul Tanner
 
Osh camp 2012 experience with adk
Osh camp 2012 experience with adkOsh camp 2012 experience with adk
Osh camp 2012 experience with adkPaul Tanner
 
Quest for a low powered home hub 120522
Quest for a low powered home hub 120522Quest for a low powered home hub 120522
Quest for a low powered home hub 120522Paul Tanner
 
Wireless hacking 20120126
Wireless hacking 20120126Wireless hacking 20120126
Wireless hacking 20120126Paul Tanner
 
Uni w pachube 111108
Uni w pachube 111108Uni w pachube 111108
Uni w pachube 111108Paul Tanner
 
Social measurement energy 2.0
Social measurement   energy 2.0Social measurement   energy 2.0
Social measurement energy 2.0Paul Tanner
 
Knowledge is Power (saving)
Knowledge is Power (saving)Knowledge is Power (saving)
Knowledge is Power (saving)Paul Tanner
 
Social Media Practicalities NfP
Social Media Practicalities NfPSocial Media Practicalities NfP
Social Media Practicalities NfPPaul Tanner
 
Social Media Value
Social Media ValueSocial Media Value
Social Media ValuePaul Tanner
 
Social Media Practicalities
Social Media PracticalitiesSocial Media Practicalities
Social Media PracticalitiesPaul Tanner
 
Metering Story - Homecamp 0903
Metering Story - Homecamp 0903Metering Story - Homecamp 0903
Metering Story - Homecamp 0903Paul Tanner
 

Plus de Paul Tanner (17)

Heading for the cloud
Heading for the cloudHeading for the cloud
Heading for the cloud
 
Os hardware meets os software
Os hardware meets os softwareOs hardware meets os software
Os hardware meets os software
 
Intro to IoT for RG 121110
Intro to IoT for RG 121110Intro to IoT for RG 121110
Intro to IoT for RG 121110
 
Measure manage save 120917
Measure manage save 120917Measure manage save 120917
Measure manage save 120917
 
Measure manage save 120917
Measure manage save 120917Measure manage save 120917
Measure manage save 120917
 
Osh camp 2012 experience with adk
Osh camp 2012 experience with adkOsh camp 2012 experience with adk
Osh camp 2012 experience with adk
 
Osh camp 2012 experience with adk
Osh camp 2012 experience with adkOsh camp 2012 experience with adk
Osh camp 2012 experience with adk
 
Quest for a low powered home hub 120522
Quest for a low powered home hub 120522Quest for a low powered home hub 120522
Quest for a low powered home hub 120522
 
Wireless hacking 20120126
Wireless hacking 20120126Wireless hacking 20120126
Wireless hacking 20120126
 
Uni w pachube 111108
Uni w pachube 111108Uni w pachube 111108
Uni w pachube 111108
 
Oshug 110929
Oshug 110929Oshug 110929
Oshug 110929
 
Social measurement energy 2.0
Social measurement   energy 2.0Social measurement   energy 2.0
Social measurement energy 2.0
 
Knowledge is Power (saving)
Knowledge is Power (saving)Knowledge is Power (saving)
Knowledge is Power (saving)
 
Social Media Practicalities NfP
Social Media Practicalities NfPSocial Media Practicalities NfP
Social Media Practicalities NfP
 
Social Media Value
Social Media ValueSocial Media Value
Social Media Value
 
Social Media Practicalities
Social Media PracticalitiesSocial Media Practicalities
Social Media Practicalities
 
Metering Story - Homecamp 0903
Metering Story - Homecamp 0903Metering Story - Homecamp 0903
Metering Story - Homecamp 0903
 

Dernier

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Dernier (20)

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Polling is for Wimps?

  • 1. 14th September '13 Wuthering Bytes 2013 1 Wuthering Bytes :: September 2013 “Polling is for Wimps?” @paul_tanner
  • 2. 14th September '13 Wuthering Bytes 2013 2 Polling is for Wimps ● “Internet of Things” ● System approach ● Protocols and choices ● Security and availability ● Current project ● Workshop tomorrow
  • 3. 14th September '13 Wuthering Bytes 2013 3 Internet of Things ● Real-time control systems: ● Input Sensors; ● (Stateful) processing; ● Control actuators ● Internet connectivity
  • 4. 14th September '13 Wuthering Bytes 2013 4 System approach out = in > T || out && in > -T
  • 5. 14th September '13 Wuthering Bytes 2013 5 Distributed System
  • 6. 14th September '13 Wuthering Bytes 2013 6 Why Rules Engine? ● IoT installations will often evolve ● System owners may be domain experts ● Best not to build the business rules in code ● Rules-based approach best ● Must be extendable (nodes, processing) ● Needs usable interface (e.g drag 'n drop) ● Engines typically needed at > 1 level
  • 7. 14th September '13 Wuthering Bytes 2013 7 Distributed System
  • 8. 14th September '13 Wuthering Bytes 2013 8 The Hardware RFM12Pi Arduino with Ethernet
  • 9. 14th September '13 Wuthering Bytes 2013 9 Protocols ● XMPP – messaging/ pub/ sub ● Bayeux – pub/ sub over http ● MQTT – a lightweight pub/ sub ● numerous implementations ● REST for gets and puts ● HTTP for remote control ● In all cases: application-specific semantics :-(
  • 10. 14th September '13 Wuthering Bytes 2013 10 Which to Use? Criteria: ● Bandwidth efficiency? ● Power consumption? ● Security? ● Standardisation? ● Interoperability (local and global)?
  • 11. 14th September '13 Wuthering Bytes 2013 11 Comparison Polling Pub/ Sub Bandwidth Efficiency 4.4M 46K* Power consumption +10%** +10%** Security SSL/ Cert Auth DIY * Using MQTT (Bayeux figure was 490K) ** 3W-2.7W estimates (no real-time energy monitor available) Test condition: download of 8 channel Xively data format every 10 minutes (download latency 1 minute)
  • 12. 14th September '13 Wuthering Bytes 2013 12 Security (CI) models ● Installation firewalls: no open incoming ports ● SSL across the net (performance overhead) ● OAuth to authenticate installation access to central services (as Twitter API) ● OAuth to authenticate admin access to installations
  • 13. 14th September '13 Wuthering Bytes 2013 13 Availability Models Central Services: ● External monitor (on standby m/c) ● Checkpointing to data store ● Automatic restart Installations: ● Hardware watchdog ● Cache to handle Internet outage ● Checkpointing to central service ● Automatic restart
  • 14. 14th September '13 Wuthering Bytes 2013 14 When Wimps Rule OK ● With pub/sub you may need DIY security ● The above availability model is quite complex ● Pub/sub justified if bandwidth is at a premium ● On cheap connections you can afford to be more profligate: ● use polling for data transfers ● save on need for auto restart on central services
  • 15. 14th September '13 Wuthering Bytes 2013 15 Node.js goodness ● runs great on Rpi (after 6 hour build) ● support for sockets and REST ● node MQTT.js works fine with mosquitto server ● node-serialport enables device attachment ● ease of implementing engine, rules etc ● removes heavy lifting from low-power devices like Arduinos
  • 16. 14th September '13 Wuthering Bytes 2013 16 The Elephant...
  • 17. 14th September '13 Wuthering Bytes 2013 17 But this need to be ● Local conventions may not need it ● Globally: ● Distributed approach to discovery ● Needs to go to end-point level ● DNS-like network of discovery nodes ● Needs investment and collaboration
  • 18. 14th September '13 Wuthering Bytes 2013 18 Current Project ecoHome demonstrator ● mostly autonomous ● numerous sensors ● controls heating, ventilation, shutters, lights etc. ● RPi + Arduinos, talking MQTT ● Logging to Xively (for analysis) ● Local rules engine ● Admin app on local web server
  • 19. 14th September '13 Wuthering Bytes 2013 19 Workshop plug ● Get hands dirty with MQTT ● Need laptop and Arduino, RPi or equivalent ● Some kind of sensor and/ or actuator ● I have MQTT microbroker and rules engine Ethernet
  • 20. 14th September '13 Wuthering Bytes 2013 20 Contact Paul Tanner @paul_tanner www.slideshare.net/paul_tanner paul@virtual-techno.com 01494 581979 ?