an an empirical characterization of ifttt
play

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


  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

  2. Ou Outlin line 2

  3. Wh What is is ¡ ¡IFTTT IFTTT User Define, ¡Run ¡and ¡Publish ¡ IF ¡This ¡Then ¡That ¡ Workflows ¡Called ¡ Applets Service ¡ Configure ¡and ¡Publish ¡ Services Consisting ¡of ¡ Provider Triggers and ¡ Actions 3

  4. Wh What is is ¡ ¡IFTTT : ¡ : ¡ Ap Applets 4

  5. Wh Why ¡ ¡IFTTT 5

  6. Ho How ¡ ¡IFTTT ¡ ¡Works Set ¡up ¡ Request ¡Trigger ¡Events an ¡Applet Return ¡Trigger ¡Events . ¡. ¡. ¡. ¡. ¡. ¡ Sync ¡ Status Request ¡Trigger ¡Events Return ¡New ¡ Trigger ¡Events Send ¡Action ¡Request Sync ¡ Status Return ¡Action ¡Result 6

  7. Ho How ¡ ¡IFTTT ¡ ¡Works 7

  8. Ho How ¡ ¡IFTTT ¡ ¡Evolves: ¡ ¡ Me Methodology We ¡crawled ¡IFTTT ¡every ¡week ¡for ¡its ¡services ¡and ¡ Crawl applets ¡between ¡Nov ¡2016 ¡and ¡May ¡2017 Overall, ¡we ¡crawled ¡ 200G data ¡and ¡we ¡have ¡ Dataset open ¡sourced ¡it ¡on ¡our ¡project ¡website. Service ¡categories ¡and ¡distribution, ¡ ¡IoT usage, ¡ Measure applet ¡properties. 8

  9. Ho How ¡ ¡IFTTT ¡ ¡Evolves: ¡ ¡ St Statistics Aspect Sep 2015 Apr 2017 Services 220 408 Triggers Triggers 768 768 1490 1490 Actions 368 957 Applets 224K 320K Applet Contributors 106K 135K Adoptions 12 millions 24 millions 9

  10. Ho How ¡ ¡IFTTT ¡ ¡Per erforms : ¡ Ap Applet ¡ ¡Selection A1 Hue Wemo is ¡turned ¡on Turn ¡on ¡ Light Switch Google ¡ A2 Wemo is ¡turned ¡on Add ¡line ¡to ¡ Spreadsheet Switch Hue A3 gets ¡a ¡email Blink ¡ Gmail ¡ Light A4 Google ¡ gets ¡new ¡attach ¡ Save ¡to Gmail ¡ Drive Hue Amazon ¡ gets ¡ ¡a ¡voice ¡CMD A5 Turn ¡off Light Alexa A6 Wemo Amazon ¡ gets ¡ ¡a ¡voice ¡CMD Turn ¡on ¡ Switch Alexa A7 Google ¡ Amazon ¡ plays a ¡ ¡song Add ¡line ¡to ¡ Spreadsheet Alexa 10

  11. Ho How ¡ ¡IFTTT ¡ ¡Per erforms : ¡ : ¡ En End2En End ¡ ¡Latency 6. ¡Turn ¡on ¡Hue 5. ¡Turn ¡on ¡Hue 4. ¡Turn ¡on ¡Hue Hue ¡Hub Hue ¡Light 7. ¡Hue ¡is ¡ turned ¡on Home ¡Router 2. ¡Sync ¡to ¡ 1. ¡Turn ¡on ¡ 3. ¡Sync ¡to ¡ Server Wemo IFTTT Test ¡Controller Wemo Switch 11

  12. Ho How ¡ ¡IFTTT ¡ ¡Per erforms : ¡ : ¡ En End2En End ¡ ¡Latency A 1 to A 4 A 5 to A 7 Each ¡applet ¡is ¡tested ¡50 ¡times ¡at ¡ 1 different ¡hours ¡of ¡a ¡3-­‑day ¡period. 0.8 A1-­‑A4 ¡show ¡ large and ¡ highly ¡ 0.6 CDF variable latency. ¡ ¡ 0.4 25 th : ¡58s, ¡50 th : ¡84s, ¡75 th : ¡122s 0.2 A5-­‑A7 ¡involve ¡Amazon ¡Alexa 0 whose ¡applet ¡execution ¡seem to ¡ 10 0 10 1 10 2 10 3 be ¡specially ¡customized. ¡ ¡ T2A Latency (s) 12

  13. Ho How ¡ ¡IFTTT ¡ ¡Per erforms : ¡ : ¡ Id Iden entif ify ¡ ¡Bottlen lenec ecks Who ¡incurs ¡the ¡high ¡latency? 5. ¡Turn ¡on ¡Hue 6. ¡Turn ¡on ¡Hue 4. ¡Turn ¡on ¡Hue Hue ¡Hub Hue ¡Light 7. ¡Hue ¡is ¡turned ¡on Home ¡Router 1. ¡Turn ¡on Wemo 2. ¡Sync ¡to ¡Server 3. ¡Sync ¡to ¡IFTTT Test ¡Controller Wemo Switch 13

  14. Ho How ¡ ¡It ¡ t ¡Per erforms : ¡ : ¡ Id Iden entif ify ¡ ¡Bottlen lenec ecks E2: ¡Replace ¡Both ¡Trigger ¡and ¡ E1: ¡Replace ¡Trigger ¡Service Action ¡Services Our ¡Action ¡ 6. ¡Turn ¡on ¡Hue Server 4. ¡Turn ¡on ¡Hue 5.2 ¡Turn ¡on ¡Hue Hue ¡Hub Hue ¡Light 5.1 ¡Turn ¡on ¡ 7. ¡Hue ¡is ¡ Our ¡ Hue turned ¡on Proxy 2.2 ¡Sync ¡to ¡Server Home ¡Router 2.1 ¡Sync ¡to ¡Proxy Our ¡Trigger ¡ 3. ¡Sync ¡to ¡IFTTT 1. ¡Turn ¡on ¡Wemo Server Test ¡Controller Wemo Switch 14

  15. Ho How ¡ ¡It ¡ t ¡Per erforms : ¡ : ¡ Id Iden entif ify ¡ ¡Bottlen lenec ecks Low ¡polling ¡frequency ¡of ¡ E1: ¡Replace ¡Trigger ¡Service Redo ¡the ¡latency ¡experiment IFTTT ¡leads ¡to ¡high ¡latency ¡ Our ¡Action ¡ 6. ¡Turn ¡on ¡Hue Server 4. ¡Turn ¡on ¡Hue 5.2 ¡Turn ¡on ¡Hue Clock: ¡82.1s Hue ¡Hub Clock: ¡83.0s Hue ¡Light 5.1 ¡Turn ¡on ¡Hue 7. ¡Hue ¡is ¡turned ¡on Our ¡ Clock: ¡83.0s Clock: ¡83.8s Proxy 2.2 ¡Sync ¡to ¡Server Clock: ¡0.16s Home ¡Router 2.1 ¡Sync ¡to ¡Proxy Clock: ¡0s Our ¡Trigger ¡ Clock: ¡0.04s 1. ¡Turn ¡on ¡Wemo 3. ¡IFTTT ¡poll ¡events Server Clock: ¡81.1s Test ¡Controller Wemo Switch 15

  16. Di Discussion: ¡ ¡ Per erforman ance Low Low ¡polling ¡frequency ¡is ¡not ¡suitable ¡for ¡ Polling ¡ time-­‑sensitive ¡workflows. High High ¡polling ¡frequency ¡will ¡add ¡untenable ¡ Polling ¡ pressure ¡to ¡the ¡server ¡side. High Adoptions: ¡24 ¡millions, ¡Frequency: ¡20/min Polling ¡ Polls/Day: ¡691.2 ¡billions 16

  17. Di Discussion: ¡ ¡ Per erforman ance Intuitively ¡works, ¡requires ¡various ¡service ¡ Push providers ¡to ¡support ¡subscription ¡ ¡ Edge ¡ Deploy ¡workflow ¡engines ¡in ¡edging ¡or ¡local ¡ Computing environment: ¡security ¡issues We ¡need ¡a ¡more Efficient and ¡Responsive Solution

  18. Di Discussion: ¡ ¡ Sec ecurit ity Least ¡ Least ¡Privilege ¡rule ¡is ¡broken. Privilege IFTTT ¡requires ¡max ¡privileges ¡for ¡each ¡service. Privilege ¡authorization ¡is ¡not ¡binding ¡to ¡specific ¡ Binding applets ¡and ¡is ¡valid ¡even ¡if ¡no ¡applets ¡require ¡it. We ¡need ¡a ¡more Secure Solution

  19. Di Discussion: ¡ ¡ In Intellig elligen ence Infinite ¡ Loop Trigger ¡ Trigger ¡ Action ¡A1 Action ¡A1 T1 T2 Trigger Action Action ¡ Burst when email arrives, blink hue light 0 100 200 300 400 We ¡need ¡a ¡Smarter Solution Time (second)

  20. Da Data ¡ ¡Release Applets 7 ¡Snapshots, ¡each ¡per ¡month ¡across ¡Nov ¡2016 ¡to ¡ Services May ¡2017. Source ¡ Performance ¡testbed, ¡self-­‑implemented ¡IFTTT ¡ Code service, ¡measurement ¡scripts, ¡data ¡crawling ¡scripts. https://www.cs.indiana.edu/~fengqian/ifttt_measurement/

  21. Q&A xm xmi@iu.edu

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend