An An Empirical Characterization of IFTTT - - PowerPoint PPT Presentation

an an empirical characterization of ifttt
SMART_READER_LITE
LIVE PREVIEW

An An Empirical Characterization of IFTTT - - PowerPoint PPT Presentation

An An Empirical Characterization of IFTTT Ecosystem, Usage, and Performance Xianghang Mi, Feng Qian, Ying Zhang, XiaoFeng Wang Indiana University


slide-1
SLIDE 1

An An ¡ ¡Empirical ¡ ¡Characterization ¡ ¡of ¡ ¡IFTTT ¡ ¡

Ecosystem, ¡Usage, ¡and ¡Performance

Xianghang Mi, ¡ ¡Feng ¡Qian, ¡ ¡Ying ¡Zhang, ¡ ¡XiaoFeng Wang Indiana ¡University ¡Bloomington, ¡ ¡Facebook ¡Research

1

slide-2
SLIDE 2

Ou Outlin line

2

slide-3
SLIDE 3

Wh What is is ¡ ¡IFTTT

3

IFTTT User

Define, ¡Run ¡and ¡Publish ¡IF ¡This ¡Then ¡That ¡ Workflows ¡Called ¡Applets

Service ¡ Provider

Configure ¡and ¡Publish ¡Services Consisting ¡of ¡ Triggers and ¡Actions

slide-4
SLIDE 4

Wh What is is ¡ ¡IFTTT: ¡

: ¡Ap

Applets

4

slide-5
SLIDE 5

Wh Why ¡ ¡IFTTT

5

slide-6
SLIDE 6

Ho How ¡ ¡IFTTT ¡ ¡Works

Set ¡up ¡ an ¡Applet Request ¡Trigger ¡Events Return ¡Trigger ¡Events Request ¡Trigger ¡Events Return ¡New ¡ Trigger ¡Events

. ¡. ¡. ¡. ¡. ¡. ¡

Sync ¡ Status Send ¡Action ¡Request Return ¡Action ¡Result Sync ¡ Status

6

slide-7
SLIDE 7

Ho How ¡ ¡IFTTT ¡ ¡Works

7

slide-8
SLIDE 8

Ho How ¡ ¡IFTTT ¡ ¡Evolves: ¡ ¡Me

Methodology

8

Crawl

We ¡crawled ¡IFTTT ¡every ¡week ¡for ¡its ¡services ¡and ¡ applets ¡between ¡Nov ¡2016 ¡and ¡May ¡2017 Overall, ¡we ¡crawled ¡200G data ¡and ¡we ¡have ¡

  • pen ¡sourced ¡it ¡on ¡our ¡project ¡website.

Service ¡categories ¡and ¡distribution, ¡ ¡IoT usage, ¡ applet ¡properties.

Dataset Measure

slide-9
SLIDE 9

Ho How ¡ ¡IFTTT ¡ ¡Evolves: ¡ ¡St

Statistics

Aspect Sep 2015 Apr 2017 Triggers 768 1490 Actions 368 957 Applets 224K 320K Applet Contributors 106K 135K Adoptions 12 millions 24 millions Services 220 408 Triggers 768 1490

9

slide-10
SLIDE 10

Ho How ¡ ¡IFTTT ¡ ¡Per erforms: ¡Ap

Applet ¡ ¡Selection

Wemo Switch

is ¡turned ¡on Turn ¡on ¡

Hue Light Wemo Switch

is ¡turned ¡on Add ¡line ¡to ¡

Google ¡ Spreadsheet Gmail ¡

gets ¡a ¡email Blink ¡

Hue Light

gets ¡new ¡attach ¡ Save ¡to

Google ¡ Drive Amazon ¡ Alexa

gets ¡ ¡a ¡voice ¡CMD

Turn ¡off

Hue Light Amazon ¡ Alexa

gets ¡ ¡a ¡voice ¡CMD

Turn ¡on ¡

Wemo Switch Amazon ¡ Alexa

plays a ¡ ¡song Add ¡line ¡to ¡

Google ¡ Spreadsheet Gmail ¡

10

A1 A2 A3 A4 A5 A6 A7

slide-11
SLIDE 11

Ho How ¡ ¡IFTTT ¡ ¡Per erforms: ¡

: ¡En

End2En End ¡ ¡Latency

  • 1. ¡Turn ¡on ¡

Wemo

  • 2. ¡Sync ¡to ¡

Server

  • 3. ¡Sync ¡to ¡

IFTTT

  • 4. ¡Turn ¡on ¡Hue
  • 5. ¡Turn ¡on ¡Hue
  • 7. ¡Hue ¡is ¡

turned ¡on

  • 6. ¡Turn ¡on ¡Hue

Test ¡Controller Wemo Switch Home ¡Router Hue ¡Hub Hue ¡Light

11

slide-12
SLIDE 12

Ho How ¡ ¡IFTTT ¡ ¡Per erforms: ¡

: ¡En

End2En End ¡ ¡Latency

T2A Latency (s) 100 101 102 103 CDF 0.2 0.4 0.6 0.8 1

A1 to A4 A5 to A7

Each ¡applet ¡is ¡tested ¡50 ¡times ¡at ¡ different ¡hours ¡of ¡a ¡3-­‑day ¡period. A1-­‑A4 ¡show ¡large and ¡highly ¡ variable latency. ¡ ¡ 25th: ¡58s, ¡50th: ¡84s, ¡75th: ¡122s A5-­‑A7 ¡involve ¡Amazon ¡Alexa whose ¡applet ¡execution ¡seem to ¡ be ¡specially ¡customized. ¡ ¡

12

slide-13
SLIDE 13

Ho How ¡ ¡IFTTT ¡ ¡Per erforms: ¡

: ¡Id

Iden entif ify ¡ ¡Bottlen lenec ecks

  • 1. ¡Turn ¡on Wemo
  • 2. ¡Sync ¡to ¡Server
  • 3. ¡Sync ¡to ¡IFTTT
  • 4. ¡Turn ¡on ¡Hue
  • 5. ¡Turn ¡on ¡Hue
  • 7. ¡Hue ¡is ¡turned ¡on
  • 6. ¡Turn ¡on ¡Hue

Test ¡Controller Wemo Switch Home ¡Router Hue ¡Hub Hue ¡Light

Who ¡incurs ¡the ¡high ¡latency?

13

slide-14
SLIDE 14

Ho How ¡ ¡It ¡ t ¡Per erforms: ¡

: ¡Id

Iden entif ify ¡ ¡Bottlen lenec ecks

  • 1. ¡Turn ¡on ¡Wemo
  • 3. ¡Sync ¡to ¡IFTTT
  • 4. ¡Turn ¡on ¡Hue
  • 7. ¡Hue ¡is ¡

turned ¡on

  • 6. ¡Turn ¡on ¡Hue

Test ¡Controller Wemo Switch Home ¡Router Hue ¡Hub Hue ¡Light

E1: ¡Replace ¡Trigger ¡Service

Our ¡ Proxy Our ¡Trigger ¡ Server

2.1 ¡Sync ¡to ¡Proxy 2.2 ¡Sync ¡to ¡Server

14

E2: ¡Replace ¡Both ¡Trigger ¡and ¡ Action ¡Services

Our ¡Action ¡ Server

5.1 ¡Turn ¡on ¡ Hue 5.2 ¡Turn ¡on ¡Hue

slide-15
SLIDE 15

E1: ¡Replace ¡Trigger ¡Service

Ho How ¡ ¡It ¡ t ¡Per erforms: ¡

: ¡Id

Iden entif ify ¡ ¡Bottlen lenec ecks

  • 1. ¡Turn ¡on ¡Wemo
  • 3. ¡IFTTT ¡poll ¡events
  • 4. ¡Turn ¡on ¡Hue
  • 7. ¡Hue ¡is ¡turned ¡on
  • 6. ¡Turn ¡on ¡Hue

Test ¡Controller Wemo Switch Home ¡Router Hue ¡Hub Hue ¡Light

Redo ¡the ¡latency ¡experiment

Our ¡ Proxy Our ¡Trigger ¡ Server

2.1 ¡Sync ¡to ¡Proxy 2.2 ¡Sync ¡to ¡Server

Our ¡Action ¡ Server

5.1 ¡Turn ¡on ¡Hue 5.2 ¡Turn ¡on ¡Hue Clock: ¡0s Clock: ¡0.04s Clock: ¡0.16s Clock: ¡81.1s Clock: ¡82.1s Clock: ¡83.0s Clock: ¡83.0s Clock: ¡83.8s

15

Low ¡polling ¡frequency ¡of ¡ IFTTT ¡leads ¡to ¡high ¡latency ¡

slide-16
SLIDE 16

Di Discussion: ¡ ¡Per

erforman ance

16

Low Polling ¡

Low ¡polling ¡frequency ¡is ¡not ¡suitable ¡for ¡ time-­‑sensitive ¡workflows.

High Polling ¡

High ¡polling ¡frequency ¡will ¡add ¡untenable ¡ pressure ¡to ¡the ¡server ¡side.

High Polling ¡

Adoptions: ¡24 ¡millions, ¡Frequency: ¡20/min Polls/Day: ¡691.2 ¡billions

slide-17
SLIDE 17

Di Discussion: ¡ ¡Per

erforman ance

Push

Intuitively ¡works, ¡requires ¡various ¡service ¡ providers ¡to ¡support ¡subscription ¡ ¡

Edge ¡ Computing

Deploy ¡workflow ¡engines ¡in ¡edging ¡or ¡local ¡ environment: ¡security ¡issues

We ¡need ¡a ¡more Efficient and ¡Responsive Solution

slide-18
SLIDE 18

Di Discussion: ¡ ¡Sec

ecurit ity

Least ¡ Privilege

Least ¡Privilege ¡rule ¡is ¡broken. IFTTT ¡requires ¡max ¡privileges ¡for ¡each ¡service.

Binding

Privilege ¡authorization ¡is ¡not ¡binding ¡to ¡specific ¡ applets ¡and ¡is ¡valid ¡even ¡if ¡no ¡applets ¡require ¡it.

We ¡need ¡a ¡more Secure Solution

slide-19
SLIDE 19

Di Discussion: ¡ ¡In

Intellig elligen ence

Infinite ¡ Loop Action ¡ Burst We ¡need ¡a ¡Smarter Solution

Trigger ¡ T1 Action ¡A1 Trigger ¡ T2 Action ¡A1

100 200 300 400 when email arrives, blink hue light Trigger Action Time (second)

slide-20
SLIDE 20

Da Data ¡ ¡Release

Applets Services

7 ¡Snapshots, ¡each ¡per ¡month ¡across ¡Nov ¡2016 ¡to ¡ May ¡2017.

Source ¡ Code

Performance ¡testbed, ¡self-­‑implemented ¡IFTTT ¡ service, ¡measurement ¡scripts, ¡data ¡crawling ¡scripts.

https://www.cs.indiana.edu/~fengqian/ifttt_measurement/

slide-21
SLIDE 21

Q&A

xm xmi@iu.edu