SlideShare a Scribd company logo
1 of 25
TRENDY: Adaptive
and Context-Aware
Service Discovery
Protocol for 6LoWPANs

       Talal Ashraf Butt, Dr. Iain Phillips,
      Dr. Lin Guan, Dr. George Oikomonou

        Loughborough University

                                         1
Overview
• WoT vision and Role of Service Discovery (SD)
• WoT SD Requirements
• Our proposed solution: TRENDY
• Experiments and results
• Future Work




                                             2
Web of Things (WoT)
How to make application-specific WSNs to be
          active part of the web?

       6LoWPAN                         Internet of Things




      Service discovery                  Discoverability


        Web Services                     Interoperability




                       Web of Things                        3
Role of Service Discovery



    User Agent                  I need * service
                                                                Router
      (UA)

•     Switch off the lights in corridor of x building
•     Give me the overall temperature of x building
•     Close all the windows when its windy
•     Close all the windows when no one in the room
•     If rooms temperature is below x and someone in the room
        Then Switch on the heating and close the windows




                                                                         4
Existing Solutions: Gaps
     6LoWPAN constraints               Heavy Dependencies


   limited              Sleeping             Protocols
   Packet                Nodes
     Size


                                               Bulky
  limited             Limited                 formats
 Bandwidth          ROM and RAM




Compact version for 6LoWPAN        Architecture


      Translation                  PULL-based
       Overhead
                                                            5
WoT: SD Requirements

    Compact        Compact
                                                        Scalability
     packets         Size



Sleep                                                             Efficiency
                         6LoWPAN    General    Requirements
Cycles   Requirements



                                                             Service
 Heterogeneity                                Service
                 Interoperability                           Selection
                                          Composition




                                                                         6
TRENDY SD Protocol

  CoAP
  Based                      Service       Context
                Grouping                                   Adaptivity
  Restful                  Composition    Awareness
Web services




           TRENDY: An Adaptive and Context-Aware Service
                Discovery Protocol for 6LoWPANs



                                                                   7
Service Description
• Very simple at registration time (Comma
  separated URLs)
• Optional: Detailed IETF CoRE well-
  known descriptions




                                            8
Context awareness
                                   Location based tags


    User Agent        I need * service in * place       Directory Agent
       (UA)                                                  (DA)

•     Switch off the lights in corridor of x building
•     Give me the overall temperature of x building
•     Close all the windows when its windy
•     Close all the windows when no one in the room
•     If rooms temperature is below x and someone in the room
        Then Switch on the heating and close the windows




                                                                          9
Context awareness
                       Service Selection
             I need temperature service
                      in H room
User Agent           of x building
                                               DA
  (UA)


                            Two Options:
                   Select the one with
                   1. Hit count (Popularity)
                   2. Less battery consumed         H room
                   3. More reliable




                                                             10
Discovery Query Options

                     I need temperature service
                              in H room
                             of x building
User Agent
  (UA)                                            DA
                     URL(s) and IP address(es)
                       of matched service(s)




 Using URI-query with:                                 H room
 1. Keyword
 2. Keyword and location
 3. 1 or 2 with select the optimal option




                                                                11
Status maintenance
                         Every node randomly selects
       a interval between 50 and 90% of time window for status updates

 o Static interval                                  Basic Time window = 600
 o Multihop effect                      DA                GL1 = Active
                                                          GM1 = Active
                                                          GM2 = Active
                                                          GM3 = Active
Interval = 412
                 GM1
                                                              GM6     Interval = 501

     Interval = 431      GM2                 GM4

                                         Interval = 521
                                                                GM5
                           GM3
                                                             Interval = 476
                       Interval = 511                                         12
Adaptive timer
                                                   Basic Time window = 600
                                                    GM1 timer counter = 2
                                                    GM2 timer counter = 2
                                      DA
                                                    GM3 timer counter = 3
                                                    GM4 timer counter = 2
                                                    GM5 timer counter = 3
 Interval = 512*2                                   GM6 timer counter = 2

               GM1
                                                         GM6

                                                               Interval = 501*2

Interval = 531*2      GM2                  GM4

                                      Interval = 521*2
                                                               GM5
                        GM3
                                                          Interval = 476*3
                   Interval = 411*3                                          13
Benefit: Adaptive Timer



      Increases
        status     Decreases
     maintenance    Control
       interval    Overhead




                               14
Grouping
                                        Basic Time window = 600
                                              GL1 = Active
                            DA                GM1 = Active
 Implements GL                                GM2 = Active
 CoAP resource                                GM3 = Active



           GL1
                                                GM3
   Interval = 412

                                             Interval = 501
              GM1       GM2

      Interval = 431   Interval = 521


                                                                  15
Grouping
                                             Basic Time window = 600
                                                   GL1 = Active
                                                GM1 = GM of GL1
                                 DA
                                                GM2 = GM of GL1
                                                   GM3 = Active


 Interval = 412       GL1

                                                       GM3

                                                   Interval = 501
              GM1            GM2

     Interval = 431         Interval = 521

                                                                       16
Multiple available GLs
                                                Basic Time window = 600
                                                      GL1 = Active
                                 DA                   GM1 = Active
                                                      GM2 = Active
                                                      GM3 = Active



            GL1
                                                        GM3
 Interval = 412
                           GL2
                                                        Interval = 501
                      Interval = 476
                                          GM2
          GM1
                                       Interval = 521
     Interval = 431

                                                                          17
Optimal GL Selection
• If multiple GLs available
• Select one with high rank

        Rank = st + nGM - f - (b/1000)

          st                                        b
    (serving time)                       (battery consumption)


                    nGM                 f
                 (number of     (number of failures)
              registered GMs)


                                                            18
Architecture
                        DA



         GL                           GL


                                                GM
GM                           GM
                                    GM
        GM


GM                 GM                           GM
                             GM
       GM

     Area: INB01                  Area: JKF01

                                                     19
Adaptive Timer: Grouping
               Group Members report to
             corresponding Group Leaders
                                             Basic Time window = 600
                                              GL1 timer counter = 3
                                  DA         GM1 timer counter = GM
                                             GM2 timer counter = GM
                                              GM3 timer counter = 2

Interval = 412*3         GL1

                                                       GM3

                                                   Interval = 501*2

                   GM1         GM2

    Interval = 431*3            Interval = 521*3
                                                                       20
Benefits: Grouping

 Group    Based on      Enable
 nodes      their       Service
          locations   Composition




                        Reduces
                        Registry
                          load




                                    21
Experiments Setup
                              • Linux process
                   DA         • Java based CoAP Implementation




                COOJA: Simulator

                  • CONTIKI (OS)
      GL
                  • CSMA (MAC)
                  • CONTIKIMAC (Duty cycling)
                  • ENERGEST (Energy estimation)
                  • C-based CoAP Implementation
           GM



 25 Tmote sky nodes (+1 border router)
      with 10 runs for 100 minutes                      22
Results

                Control
   Method                 Energy (J)
                Packets

    BASIC         810        62.08



 TRENDY TIMER     163        61.27



 TRENDY FULL      297        60.13




                                       23
Future Work

                                      Load balancing
                                More responsible GLs                           Large-scale




                                      Grouping                                    Scope
    Adaptivity                                                Proxy




 Intelligent Timer (e.g. trickle)                            Caching
      Publish/Subscribe                                  Interoperability
                                                        Service composition



                                                                                           24
T   h   a   n   k   y   o    u

Questions?
    Loughborough University

                            25

More Related Content

Viewers also liked

Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...Adam Dunkels
 
I pv6 routing_protocol_for_low_power_and_lossy_
I pv6 routing_protocol_for_low_power_and_lossy_I pv6 routing_protocol_for_low_power_and_lossy_
I pv6 routing_protocol_for_low_power_and_lossy_Sheetal Kshirsagar
 
Rpl:Routing Protocol for Low-Power and Lossy Networks
Rpl:Routing Protocol for Low-Power and Lossy NetworksRpl:Routing Protocol for Low-Power and Lossy Networks
Rpl:Routing Protocol for Low-Power and Lossy NetworksLandry Simo
 
Building the Internet of Things with Thingsquare and Contiki - day 1, part 2
Building the Internet of Things with Thingsquare and Contiki - day 1, part 2Building the Internet of Things with Thingsquare and Contiki - day 1, part 2
Building the Internet of Things with Thingsquare and Contiki - day 1, part 2Adam Dunkels
 

Viewers also liked (7)

Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
 
I pv6 routing_protocol_for_low_power_and_lossy_
I pv6 routing_protocol_for_low_power_and_lossy_I pv6 routing_protocol_for_low_power_and_lossy_
I pv6 routing_protocol_for_low_power_and_lossy_
 
Rpl dodag
Rpl dodagRpl dodag
Rpl dodag
 
Rpl
Rpl Rpl
Rpl
 
Rpl:Routing Protocol for Low-Power and Lossy Networks
Rpl:Routing Protocol for Low-Power and Lossy NetworksRpl:Routing Protocol for Low-Power and Lossy Networks
Rpl:Routing Protocol for Low-Power and Lossy Networks
 
Building the Internet of Things with Thingsquare and Contiki - day 1, part 2
Building the Internet of Things with Thingsquare and Contiki - day 1, part 2Building the Internet of Things with Thingsquare and Contiki - day 1, part 2
Building the Internet of Things with Thingsquare and Contiki - day 1, part 2
 
6LoWPAN: An open IoT Networking Protocol
6LoWPAN: An open IoT Networking Protocol6LoWPAN: An open IoT Networking Protocol
6LoWPAN: An open IoT Networking Protocol
 

Similar to Trendy presentation-wo t-2012

A Python Petting Zoo
A Python Petting ZooA Python Petting Zoo
A Python Petting Zoodevondjones
 
Understanding priorities in HTCondor
Understanding priorities in HTCondorUnderstanding priorities in HTCondor
Understanding priorities in HTCondorIgor Sfiligoi
 
Presentation of the open source CFD code Code_Saturne
Presentation of the open source CFD code Code_SaturnePresentation of the open source CFD code Code_Saturne
Presentation of the open source CFD code Code_SaturneRenuda SARL
 
Adaptive and context aware service discovery for the internet of things - Rus...
Adaptive and context aware service discovery for the internet of things - Rus...Adaptive and context aware service discovery for the internet of things - Rus...
Adaptive and context aware service discovery for the internet of things - Rus...Talal Butt
 
Conole vilnius 3_nov
Conole vilnius 3_novConole vilnius 3_nov
Conole vilnius 3_novgrainne
 
Slices Of Performance in Java - Oleksandr Bodnar
Slices Of Performance in Java - Oleksandr BodnarSlices Of Performance in Java - Oleksandr Bodnar
Slices Of Performance in Java - Oleksandr BodnarGlobalLogic Ukraine
 
Microservices interaction at scale using Apache Kafka
Microservices interaction at scale using Apache KafkaMicroservices interaction at scale using Apache Kafka
Microservices interaction at scale using Apache KafkaIvan Ursul
 
Apache Hadoop YARN 3.x in Alibaba
Apache Hadoop YARN 3.x in AlibabaApache Hadoop YARN 3.x in Alibaba
Apache Hadoop YARN 3.x in AlibabaDataWorks Summit
 
Multi-bundle Scoping in OSGi
Multi-bundle Scoping in OSGiMulti-bundle Scoping in OSGi
Multi-bundle Scoping in OSGiglynnormington
 
BonFIRE TridentCom presentation
BonFIRE TridentCom presentationBonFIRE TridentCom presentation
BonFIRE TridentCom presentationBonFIRE
 
Moving Toward Deep Learning Algorithms on HPCC Systems
Moving Toward Deep Learning Algorithms on HPCC SystemsMoving Toward Deep Learning Algorithms on HPCC Systems
Moving Toward Deep Learning Algorithms on HPCC SystemsHPCC Systems
 
Oracle 11g R2 RAC implementation and concept
Oracle 11g R2 RAC implementation and conceptOracle 11g R2 RAC implementation and concept
Oracle 11g R2 RAC implementation and conceptSantosh Kangane
 
6 Nines: How Stripe keeps Kafka highly-available across the globe with Donny ...
6 Nines: How Stripe keeps Kafka highly-available across the globe with Donny ...6 Nines: How Stripe keeps Kafka highly-available across the globe with Donny ...
6 Nines: How Stripe keeps Kafka highly-available across the globe with Donny ...HostedbyConfluent
 
Openflow overview
Openflow overviewOpenflow overview
Openflow overviewopenflowhub
 
More Efficient Object Replication in OpenStack Summit Juno
More Efficient Object Replication in OpenStack Summit JunoMore Efficient Object Replication in OpenStack Summit Juno
More Efficient Object Replication in OpenStack Summit JunoKota Tsuyuzaki
 
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph Ceph Community
 
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...Alexandre Moneger
 
Adjusting carbon topology to match high availability scenario requirements
Adjusting carbon topology to match high availability scenario requirements   Adjusting carbon topology to match high availability scenario requirements
Adjusting carbon topology to match high availability scenario requirements Afkham Azeez
 
CUG2011 Introduction to GPU Computing
CUG2011 Introduction to GPU ComputingCUG2011 Introduction to GPU Computing
CUG2011 Introduction to GPU ComputingJeff Larkin
 

Similar to Trendy presentation-wo t-2012 (20)

A Python Petting Zoo
A Python Petting ZooA Python Petting Zoo
A Python Petting Zoo
 
Understanding priorities in HTCondor
Understanding priorities in HTCondorUnderstanding priorities in HTCondor
Understanding priorities in HTCondor
 
Presentation of the open source CFD code Code_Saturne
Presentation of the open source CFD code Code_SaturnePresentation of the open source CFD code Code_Saturne
Presentation of the open source CFD code Code_Saturne
 
Adaptive and context aware service discovery for the internet of things - Rus...
Adaptive and context aware service discovery for the internet of things - Rus...Adaptive and context aware service discovery for the internet of things - Rus...
Adaptive and context aware service discovery for the internet of things - Rus...
 
Conole vilnius 3_nov
Conole vilnius 3_novConole vilnius 3_nov
Conole vilnius 3_nov
 
Slices Of Performance in Java - Oleksandr Bodnar
Slices Of Performance in Java - Oleksandr BodnarSlices Of Performance in Java - Oleksandr Bodnar
Slices Of Performance in Java - Oleksandr Bodnar
 
Microservices interaction at scale using Apache Kafka
Microservices interaction at scale using Apache KafkaMicroservices interaction at scale using Apache Kafka
Microservices interaction at scale using Apache Kafka
 
Apache Hadoop YARN 3.x in Alibaba
Apache Hadoop YARN 3.x in AlibabaApache Hadoop YARN 3.x in Alibaba
Apache Hadoop YARN 3.x in Alibaba
 
Multi-bundle Scoping in OSGi
Multi-bundle Scoping in OSGiMulti-bundle Scoping in OSGi
Multi-bundle Scoping in OSGi
 
BonFIRE TridentCom presentation
BonFIRE TridentCom presentationBonFIRE TridentCom presentation
BonFIRE TridentCom presentation
 
Moving Toward Deep Learning Algorithms on HPCC Systems
Moving Toward Deep Learning Algorithms on HPCC SystemsMoving Toward Deep Learning Algorithms on HPCC Systems
Moving Toward Deep Learning Algorithms on HPCC Systems
 
Oracle 11g R2 RAC implementation and concept
Oracle 11g R2 RAC implementation and conceptOracle 11g R2 RAC implementation and concept
Oracle 11g R2 RAC implementation and concept
 
Kafka short
Kafka shortKafka short
Kafka short
 
6 Nines: How Stripe keeps Kafka highly-available across the globe with Donny ...
6 Nines: How Stripe keeps Kafka highly-available across the globe with Donny ...6 Nines: How Stripe keeps Kafka highly-available across the globe with Donny ...
6 Nines: How Stripe keeps Kafka highly-available across the globe with Donny ...
 
Openflow overview
Openflow overviewOpenflow overview
Openflow overview
 
More Efficient Object Replication in OpenStack Summit Juno
More Efficient Object Replication in OpenStack Summit JunoMore Efficient Object Replication in OpenStack Summit Juno
More Efficient Object Replication in OpenStack Summit Juno
 
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
 
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
BSides LV 2016 - Beyond the tip of the iceberg - fuzzing binary protocols for...
 
Adjusting carbon topology to match high availability scenario requirements
Adjusting carbon topology to match high availability scenario requirements   Adjusting carbon topology to match high availability scenario requirements
Adjusting carbon topology to match high availability scenario requirements
 
CUG2011 Introduction to GPU Computing
CUG2011 Introduction to GPU ComputingCUG2011 Introduction to GPU Computing
CUG2011 Introduction to GPU Computing
 

Recently uploaded

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Recently uploaded (20)

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 

Trendy presentation-wo t-2012

  • 1. TRENDY: Adaptive and Context-Aware Service Discovery Protocol for 6LoWPANs Talal Ashraf Butt, Dr. Iain Phillips, Dr. Lin Guan, Dr. George Oikomonou Loughborough University 1
  • 2. Overview • WoT vision and Role of Service Discovery (SD) • WoT SD Requirements • Our proposed solution: TRENDY • Experiments and results • Future Work 2
  • 3. Web of Things (WoT) How to make application-specific WSNs to be active part of the web? 6LoWPAN Internet of Things Service discovery Discoverability Web Services Interoperability Web of Things 3
  • 4. Role of Service Discovery User Agent I need * service Router (UA) • Switch off the lights in corridor of x building • Give me the overall temperature of x building • Close all the windows when its windy • Close all the windows when no one in the room • If rooms temperature is below x and someone in the room Then Switch on the heating and close the windows 4
  • 5. Existing Solutions: Gaps 6LoWPAN constraints Heavy Dependencies limited Sleeping Protocols Packet Nodes Size Bulky limited Limited formats Bandwidth ROM and RAM Compact version for 6LoWPAN Architecture Translation PULL-based Overhead 5
  • 6. WoT: SD Requirements Compact Compact Scalability packets Size Sleep Efficiency 6LoWPAN General Requirements Cycles Requirements Service Heterogeneity Service Interoperability Selection Composition 6
  • 7. TRENDY SD Protocol CoAP Based Service Context Grouping Adaptivity Restful Composition Awareness Web services TRENDY: An Adaptive and Context-Aware Service Discovery Protocol for 6LoWPANs 7
  • 8. Service Description • Very simple at registration time (Comma separated URLs) • Optional: Detailed IETF CoRE well- known descriptions 8
  • 9. Context awareness Location based tags User Agent I need * service in * place Directory Agent (UA) (DA) • Switch off the lights in corridor of x building • Give me the overall temperature of x building • Close all the windows when its windy • Close all the windows when no one in the room • If rooms temperature is below x and someone in the room Then Switch on the heating and close the windows 9
  • 10. Context awareness Service Selection I need temperature service in H room User Agent of x building DA (UA) Two Options: Select the one with 1. Hit count (Popularity) 2. Less battery consumed H room 3. More reliable 10
  • 11. Discovery Query Options I need temperature service in H room of x building User Agent (UA) DA URL(s) and IP address(es) of matched service(s) Using URI-query with: H room 1. Keyword 2. Keyword and location 3. 1 or 2 with select the optimal option 11
  • 12. Status maintenance Every node randomly selects a interval between 50 and 90% of time window for status updates o Static interval Basic Time window = 600 o Multihop effect DA GL1 = Active GM1 = Active GM2 = Active GM3 = Active Interval = 412 GM1 GM6 Interval = 501 Interval = 431 GM2 GM4 Interval = 521 GM5 GM3 Interval = 476 Interval = 511 12
  • 13. Adaptive timer Basic Time window = 600 GM1 timer counter = 2 GM2 timer counter = 2 DA GM3 timer counter = 3 GM4 timer counter = 2 GM5 timer counter = 3 Interval = 512*2 GM6 timer counter = 2 GM1 GM6 Interval = 501*2 Interval = 531*2 GM2 GM4 Interval = 521*2 GM5 GM3 Interval = 476*3 Interval = 411*3 13
  • 14. Benefit: Adaptive Timer Increases status Decreases maintenance Control interval Overhead 14
  • 15. Grouping Basic Time window = 600 GL1 = Active DA GM1 = Active Implements GL GM2 = Active CoAP resource GM3 = Active GL1 GM3 Interval = 412 Interval = 501 GM1 GM2 Interval = 431 Interval = 521 15
  • 16. Grouping Basic Time window = 600 GL1 = Active GM1 = GM of GL1 DA GM2 = GM of GL1 GM3 = Active Interval = 412 GL1 GM3 Interval = 501 GM1 GM2 Interval = 431 Interval = 521 16
  • 17. Multiple available GLs Basic Time window = 600 GL1 = Active DA GM1 = Active GM2 = Active GM3 = Active GL1 GM3 Interval = 412 GL2 Interval = 501 Interval = 476 GM2 GM1 Interval = 521 Interval = 431 17
  • 18. Optimal GL Selection • If multiple GLs available • Select one with high rank Rank = st + nGM - f - (b/1000) st b (serving time) (battery consumption) nGM f (number of (number of failures) registered GMs) 18
  • 19. Architecture DA GL GL GM GM GM GM GM GM GM GM GM GM Area: INB01 Area: JKF01 19
  • 20. Adaptive Timer: Grouping Group Members report to corresponding Group Leaders Basic Time window = 600 GL1 timer counter = 3 DA GM1 timer counter = GM GM2 timer counter = GM GM3 timer counter = 2 Interval = 412*3 GL1 GM3 Interval = 501*2 GM1 GM2 Interval = 431*3 Interval = 521*3 20
  • 21. Benefits: Grouping Group Based on Enable nodes their Service locations Composition Reduces Registry load 21
  • 22. Experiments Setup • Linux process DA • Java based CoAP Implementation COOJA: Simulator • CONTIKI (OS) GL • CSMA (MAC) • CONTIKIMAC (Duty cycling) • ENERGEST (Energy estimation) • C-based CoAP Implementation GM 25 Tmote sky nodes (+1 border router) with 10 runs for 100 minutes 22
  • 23. Results Control Method Energy (J) Packets BASIC 810 62.08 TRENDY TIMER 163 61.27 TRENDY FULL 297 60.13 23
  • 24. Future Work  Load balancing More responsible GLs  Large-scale Grouping Scope Adaptivity Proxy  Intelligent Timer (e.g. trickle)  Caching  Publish/Subscribe Interoperability Service composition 24
  • 25. T h a n k y o u Questions? Loughborough University 25

Editor's Notes

  1. WoT vision6LowPAN enables IoTSD allows discoverability of available services in networkWeb Services enables InteroperabilityThe combination can enables the interoperability requires for WoT paradigm applications(1 min) Total 1 min
  2. Existing solutions + Requirements (1 min)6LowPAN constraints Vsexisting solutionsHeavy protocols and formats,Adapting existing solutions, Architecture
  3. Existing solutions + Requirements (1 min)6LowPAN requirementsGeneral requirementsTotal 4 mins
  4. TRENDY SDP (1 min)CoAP based Restful web servicesGrouping Service compositionContext AwarenessAdaptivity1 minTotal 5 mins
  5. Grouping -1 + Grouping -2 +Multiple GLs + Optimal GL selection (3 mins)All nodes send status updates to DA Creates the bottleneck problem Multihop effect also increases the problemWe propose grouping to deal with thisWhere some nodes implement the GL CoAP resourceTo let the DA know that it can play the role of GL
  6. Grouping -1 + Grouping -2 +Multiple GLs + Optimal GL selection (3 mins)DA then allocates the GL other nodes in its groupThis way made group members now report to GL instead of DA
  7. Grouping -1 + Grouping -2 +Multiple GLs + Optimal GL selection (3 mins)If DA find out that multiple potential GLs are available in a groupDA uses a rank equation to select the optimal one
  8. Architecture + Adaptive timer: Grouping + Benefits (2 mins)
  9. Architecture + Adaptive timer: Grouping + Benefits (2 mins)Group members in a group follow the counter value of their GL
  10. Experiment Setup + results (2 mins)Two CoAP ImplementationUses border router between DA and 6LoWPANExperiments done with 25 nodes
  11. Experiment Setup + results (2 mins)Results shows that TRENDY timer decreases the control overheadAnd grouping increases the control overhead and hints to decrease the energy consumptionTotal 19 mins
  12. Future work (1 min)More intelligent timer with pub/subMore responsible GLs to enable service compositionDA as Proxy to get potential benefits of caching and HTTP interoperabilityLarge scale experiments1 min Total 20 minutes