SlideShare uma empresa Scribd logo
1 de 25
Baixar para ler offline
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

Mais conteúdo relacionado

Semelhante a Trendy service discovery protocol at WoT 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
 
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
 
5 levels of high availability from multi instance to hybrid cloud
5 levels of high availability  from multi instance to hybrid cloud5 levels of high availability  from multi instance to hybrid cloud
5 levels of high availability from multi instance to hybrid cloudRafał Leszko
 

Semelhante a Trendy service discovery protocol at WoT 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
 
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
 
5 levels of high availability from multi instance to hybrid cloud
5 levels of high availability  from multi instance to hybrid cloud5 levels of high availability  from multi instance to hybrid cloud
5 levels of high availability from multi instance to hybrid cloud
 

Último

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
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
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 

Último (20)

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
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
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
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
 
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
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 

Trendy service discovery protocol at WoT 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