Paper of ANS

2017-12-10  本文已影响0人  Colin_0463

1. Requirements

1.1 Contents Needed

1.2 Notations

2. IFTTT Introductions (Search on the Internet)

2.1 Terms

Chinese Website: https://sspai.com/post/25270

3. Paper

3.1 Paper Introductions

3.1.1 Pulications

3.1.2 Authors

3.2 Paper Summary

3.2.1 Introduction

  1. Simple introduction of IFTTT
  2. Why they choose IFTTT
  3. Why IFTTT is the most popular, given 3 Reasons
  1. What do they want to show by writing this paper(IFTTT's ecosystem, usage, performance)
  2. 3 Challenges they faced when they do their measurement study
  1. To address those challenges, they create a testbed to automatically monitor and profile the whole process of applets execution
  1. According to their study of IFTTT, They found that:
    52% of services and 16% of applet usage are IoT-related
    With more than 200 IoT services identifed, IFTTT indeed provides a way to identify popular smart home and wearable devices on the market in a “centralized” manner.
  1. In-lab controlled experiments :
    • Actions of many applets cannot be executed in real time when their triggers are activated, The delays are long (usually 1 to 2 minutes) with huge variance(up to 15min)
    • Reason: We found the delay is caused by IFTTT’s long polling interval.

-Para 7

  1. 3 Contributions of the paper
  2. Paper Outlines
    • CH2 : IFTTT's ecosystem
    • CH3 : IFTTT's usages
    • CH4 : IFTTT's performance
    • CH5 : Related work and Conclusions
    • CH6 : Recommendations

3.2.2 Understanding The Ecosystem

  1. Simple introduction of IFTTT's applet and trigger and action and service

3.2.2.1 The Measurement Testbed

  1. Introduction the rules of IFTTT's Centralized Engine, Partner Services, IoT devices and Web Applications
  1. Introduction of the Testbed
  2. They get an account from IFTTT and can provide their service
  3. The service can be provided triggers and actions for 4 devices and some web applications
  1. Introduction of the structure with Figure 1
  2. The Paths for comunications and protocols it was used
  3. APIs they used

3.2.2.2 Profiling Interactions Among Entities

  1. They use the testbed and self-implement ITFFF service to profile the interactions among entities within IFTTT's Ecosystem
  2. Why they need to do their own experiments since ITFFF has it's documents to know some the interactions (Several Reasons)
  3. How to publish the services ( Base URL and series of unique URL under the base URL)
  4. How to Construct an applet (User visit ITFFF by web or smartphone app, and set an applet)( OAuth2framework used to do authentication)
  5. Online applet execution phase

3.2.3 Understanding IFTTT Usage

3.2.3.1 Data Collection Methodology

  1. From IFTTT partner service index page to get the list of all the services
  2. From reverse engineering the URLs of applet's pages to know the URLs can be transfered to a 6-digital appletID
  3. Fetch more than 300,000 published applets
  4. From each applet, get : (applet name, description, trigger, trigger service, action name, action service, add count)
  1. How the do the data collection
  2. Simple introduction of the dataset
  3. Table 2 : The Comparison between their dataset with Paper[28]'s dataset

3.2.3.2 Data Characterization

  1. First, IFTTT is growing steadily
  2. Next, characterize a particular snap shot collected on 3/25/2017
  3. Service Semantics
    • 13 categories of service (Table 1)
    • 1-4 are IoT devices
    • 5-13 are non-Iot device
    • Overall, We find that ** services provided by IFTTT are extraordinarily rich.**
  4. IoT Usage
    • Table 3 : List top IoT-related services and triggers and actions
    • Fig 2 : A heat map illustrating the interaction among different service categories.
    • The features of IoT service and **non-IoT services **
  5. ** Applet Properties**
    • Fig 3 : quantifes the overall applet usage by ranking the applets (X-Axis) by their add count (Y-Axis)
    • It exhibits a heavy-tail distribution: the top 1% (10%) of applets contribute 84.1% (97.6%) of the overall add count.
    • More interestingly and commonly, IFTTT helps bridge IoT devices with non-IoT services in the cloud
    • Although triggers and actions can only be provided by services, most applets (98%) are home-made by users.

3.2.4 Applet Execution Performance

3.2.4.1 Trigger-to-Action(T2A) Latency

  1. T2A Latency is key performance metric for applet execution
  2. Table 4 : 7 popular applets and measure their T2A Latency used the testbed
  3. 2 functionalities of Test Controller (Fig 1-9)
  1. Fig 4 : shows the T2A latency for the seven applets using the offcial IFTTT partner services
  2. Network never becomes the performance bottleneck.
  1. To find high and variable Latency reason they do 3 scenarios test(E1,E2,E3)
  2. They use their implement service to replace IFTTT's service
  1. Fig 5 : plots the T2A latency for A2 under scenarios E1/E2 and E3 (for each scenario we run 20 tests)
  2. The results clearly indicate that the performance bottleneck is the IFTTT engine itself
  3. Table 5 : exemplifes the breakdown of the T2A latency for a typical execution of applet A2 under the scenario E2
  1. Introduction of the IFTTT's real-time APIs
  2. But it no use for their service, and show the reasons
  1. Discussion about the Alexa which all used by A5 to A7

3.2.4.2 Squential Execution of Applets

  1. The performance when a trigger is activated multiple times sequentially (every 5 seconds in our experiment)
  2. Fig 6 : top, show the clustered pattern of IFTTT and given the reason(Batched process of ITFFF polling)
  3. Fig 6 : bottom, shows one extreme case (possibly when IFTTT experiences high workload) where the polling delay between two clusters inflate to 14 minutes

3.2.4.3 Concurrent Execution of Applets

  1. ** if A then B and C**
  2. Fig 7 : plots the CDF for T2A latency difference between “turn on Hue light when email arrives” and “activate WeMo switch when email arrives”
  3. As shown, the T2A latency difference ranges from -60 to 140 seconds(2 Reasons)
  4. Conclusion: The results indicate that in reality, IFTTT cannot guarantee the simultaneous execution of two applets with the same trigger.

3.2.4.4 Infinite Loop

  1. **2 Reasons ** may cause Infinite Loop, and it's harmful
  2. IFTTT can not find the potential infinite loop
  3. Some runtime detection techniques are needed.

3.2.5 Related Work

3.2.5.1 IFTTT Characterization

  1. Several related works: 27,28,25,19
  2. 3 contributions advanced with those related works

3.2.5.2 IFTTT-like Platforms

  1. Several exist commerical platforms like IFTTT( 2,14,11,15,10,13)
  2. All less popular than IFTTT

3.2.5.3 Trigger-action Programming(TAP)

  1. Samrt Home : 17,21,26,29,30
  2. Smart Buildings : 22
  3. general IoT/context -aware systems : 16.18.20,23

3.2.6 Discussions And Conclusions

3.2.6.1 Performance Improvements

  1. How to reduce T2A Latency
  2. One reason why IFTTT reduce latency is Workload

3.2.6.2 Distributed Applet Execution

  1. IFTTT need to have a **Hybrid(Centralized + Distributed) Applet exeution shceme
  2. But it has many Challenges

3.2.6.3 Permission Management

  1. coarse-grained permission control at service level
  2. We need better permission management schemes that balance the tradeoff between usability and security.

3.2.6.4 Limitations

  1. We acknowledge that observing the IoT ecosystem from the perspective of IFTTT is interesting but still limited as IFTTT may not cover all available IoT devices and their owners.
  2. To conclude, in this study, we observe the fast growth of the IFTTT ecosystem and its increasing usage for automating IoTrelated tasks, which correspond to 52% of services and 16% of the applet usage.
  3. We observe several performance inefciencies and identify their causes.
  4. We plan to study future IFTTT features such as queries and conditions [25].
上一篇下一篇

猜你喜欢

热点阅读