 Zhichun Li  The Robust and Secure Systems group at NEC Research Labs  Northwestern University  Tsinghua University 2.

Slides:



Advertisements
Similar presentations
University of Michigan Electrical Engineering and Computer Science Anatomizing Application Performance Differences on Smartphones Junxian Huang, Qiang.
Advertisements

On the Effectiveness of Measurement Reuse for Performance-Based Detouring David Choffnes Fabian Bustamante Fabian Bustamante Northwestern University INFOCOM.
PERSISTENT DROPPING: An Efficient Control of Traffic Aggregates Hani JamjoomKang G. Shin Electrical Engineering & Computer Science UNIVERSITY OF MICHIGAN,
1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano.
Chapter 12: Web Usage Mining - An introduction
Spring 2003CS 4611 Content Distribution Networks Outline Implementation Techniques Hashing Schemes Redirection Strategies.
EEC-484/584 Computer Networks Lecture 6 Wenbing Zhao
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
1 Prefetching the Means for Document Transfer: A New Approach for Reducing Web Latency 1. Introduction 2. Data Analysis 3. Pre-transfer Solutions 4. Performance.
15-441: Computer Networking Lecture 26: Networking Future.
CS 623 Lecture #9 Yen-Yu Chen Utku Irmak. Papers to be read Better operating system features for faster network servers.Better operating system features.
Chapter 2: Application Layer
EEC-484/584 Computer Networks Discussion Session for HTTP and DNS Wenbing Zhao
RDMA ENABLED WEB SERVER Rajat Sharma. Objective  To implement a Web Server serving HTTP client requests through RDMA replacing the traditional TCP/IP.
Fixing the Embarrassing Slowness of OpenDHT on PlanetLab Sean Rhea, Byung-Gon Chun, John Kubiatowicz, and Scott Shenker UC Berkeley (and now MIT) December.
Does Ajax suck? CS575 Spring 2007 Chanwit Suebsureekul.
HTTP Performance Objective: In this problem, we consider the performance of HTTP, comparing non-persistent HTTP with persistent HTTP. Suppose the page.
1 Web Content Delivery Reading: Section and COS 461: Computer Networks Spring 2007 (MW 1:30-2:50 in Friend 004) Ioannis Avramopoulos Instructor:
Web Transfer Latency Study Presented by Ye Xia WebTP Presentation, Aug. 28, 2000 Paper Presented: Paul Barford and Mark Crovella, “Critical Path Analysis.
Application Layer  We will learn about protocols by examining popular application-level protocols  HTTP  FTP  SMTP / POP3 / IMAP  Focus on client-server.
Putting the Network to Work
IPv6 end client measurement George Michaelson
Timecard: Controlling User-Perceived Delays in Server-Based Mobile Applications Lenin Ravindranath, Jitu Padhye, Ratul Mahajan, Hari Balakrishnan.
Towards Understanding Modern Web Traffic
The World Wide Web By: Brittney Hardin, Carlos Smith, and David Wilkins.
Performance, SEO, Accessibility Ivan Zhekov Telerik Corporation
IT 210 The Internet & World Wide Web introduction.
CS 299 – Web Programming and Design CS299: Web Programming and Design Instructor: Dr. Fang (Daisy) Tang.
Server Load Balancing. Introduction Why is load balancing of servers needed? If there is only one web server responding to all the incoming HTTP requests.
1 3 Web Proxies Web Protocols and Practice. 2 Topics Web Protocols and Practice WEB PROXIES  Web Proxy Definition  Three of the Most Common Intermediaries.
Slow Web Site Problem Analysis Last Update Copyright 2013 Kenneth M. Chipps Ph.D. 1.
Dr Lisa Wise 18/10/2002 Website Metrics Dr Lisa Wise.
SMUCSE 4344 application layer. SMUCSE 4344 application vs. application-layer protocols application-layer protocol is just one piece –how the end hosts.
2013Dr. Ali Rodan 1 Handout 1 Fundamentals of the Internet.
1 Computer Communication & Networks Lecture 28 Application Layer: HTTP & WWW p Waleed Ejaz
Web Overview The birth of Web: 1989 Now Web is about everything – Business (HR systems, e.g. NUHR) – Online Shopping (Amazon), Banking (Citibank, Chase)
World Wide Web Hypertext model Use of hypertext in World Wide Web (WWW) WWW client-server model Use of TCP/IP protocols in WWW.
Presented by Xiaoyu Qin Virtualized Access Control & Firewall Virtualization.
Overcast: Reliable Multicasting with an Overlay Network CS294 Paul Burstein 9/15/2003.
Protocol(TCP/IP, HTTP) 송준화 조경민 2001/03/13. Network Computing Lab.2 Layering of TCP/IP-based protocols.
Module 4: Fundamentals of Communication Technologies.
The Case for Persistent-Connection HTTP Telecommunication System LAB 최 명길 Western Research Laboratory Research Report 95/4 (Proceedings of the SIGCOMM.
Advanced Networking Lab. Given two IP addresses, the estimation algorithm for the path and latency between them is as follows: Step 1: Map IP addresses.
Orbited Scaling Bi-directional web applications A presentation by Michael Carter
Page Speed Bryan McQuade Richard Rabbat. Outline  What is Page Speed?  Inception of Page Speed  Cool features  Identify unused JavaScript and CSS.
AjaxScope & Doloto: Towards Optimizing Client-side Web 2.0 App Performance Ben Livshits Microsoft Research (joint work with Emre.
NetCache Architecture and Deployment Peter Danzig Network Appliance, Santa Clara, CA 元智大學 系統實驗室 陳桂慧
Timecard: Controlling User-Perceived Delays in Server-Based Mobile Applications Lenin Ravindranath, Jitu Padhye, Ratul Mahajan, Hari Balakrishnan.
Chapter 12: Web Usage Mining - An introduction Chapter written by Bamshad Mobasher Many slides are from a tutorial given by B. Berendt, B. Mobasher, M.
Zibin Zheng DR 2 : Dynamic Request Routing for Tolerating Latency Variability in Cloud Applications CLOUD 2013 Jieming Zhu, Zibin.
Internet Architecture and Governance
IT 210: Web-based IT Winter 2012 Measuring Speed on the Internet and WWW.
Critical Path Analysis of TCP Transactions Authors:Paul Barford (University of Wisconsin-Madison) Mark Crovella (University of Boston) Member, IEEE Source:IEEE/ACM.
PERFORMANCE ENHANCEMENT IN ASP.NET By Hassan Tariq Session #1.
 Registry itself is easy and straightforward in implementation  The objects of registry are actually complicated to store and manage  Objects of Registry.
Measuring and Mitigating Web Performance Bottlenecks in Broadband Access Networks Srikanth Sundaresan, Nick Feamster (Georgia Tech) Renata Teixeira (Inria)
High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98.
Network Computing Laboratory 1 Vivaldi: A Decentralized Network Coordinate System Authors: Frank Dabek, Russ Cox, Frans Kaashoek, Robert Morris MIT Published.
Search Engine using Web Mining COMS E Web Enhanced Information Mgmt Prof. Gail Kaiser Presented By: Rupal Shah (UNI: rrs2146)
Measurement in the Internet Measurement in the Internet Paul Barford University of Wisconsin - Madison Spring, 2001.
Introducing a New Concept in Networking Fluid Networking S. Wood Nov Copyright 2006 Modern Systems Research.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
Development of a QoE Model Himadeepa Karlapudi 03/07/03.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
John S. Otto Mario A. Sánchez John P. Rula Fabián E. Bustamante Northwestern, EECS.
Performance Evaluation of Redirection Schemes in Content Distribution Networks Jussi Kangasharju, Keith W. Ross Institut Eurecom Jim W. Roberts France.
CSEN 404 Introduction to Networks Amr El Mougy Lamia AlBadrawy.
CISC103 Web Development Basics: Web site:
CSE 461 HTTP and the Web.
Web Application Development Using PHP
Presentation transcript:

 Zhichun Li  The Robust and Secure Systems group at NEC Research Labs  Northwestern University  Tsinghua University 2

3

5  Almost everything is related to Web  Web search  Web mail  Maps  Online shopping  Online Social network  Calendar

 Amazon: 100ms extra delay  1% sale loss  Google search: 500 ms extra delay  reduce display ads revenues by up to 20% 6

7

8

 Example of Yahoo Maps  110 embedded objects  Complex object dependencies  670KB JavaScript  multiple data‐centers around the world 9

10

 A/B test (controlled experiments)  Idea: Measure through experiments by various service setting  Problems: Hard to fully automated Expensive to set up Quite slow: brute force 11

 Service provider based techniques (WISE SIGCOMM2008)  Idea: Based on server logs  Problems: Multiple data sources Object dependencies Client side delays, e.g. JavaScript execution time 12

 Regression based techniques (INFOCOM2009)  Idea: Link Gradients predict E2E RST  Problems: Independence assumption Only work for small-scale 13

 A tool for automated performance prediction Fast prediction on the user perceived performance Timing perturbation based dependency discovery Dependency driven page load simulation 14

16 Parent( ) = Ancestor( ) = Descendant( ) =

 Simple HTML parsing/DOM traversal is not enough Object requests generated by JavaScript depend on the corresponding.JS files Event triggers: e.g. image A need image B trigger “onload” event  Extensive browser instrumentation is heavy- weight and browser dependent 17

 Goal: Light‐weight black box based approach Browser independent  Solution: Timing Perturbation based technique Inject delay See how delay propagate Dependence Graph 18

 Regular Objects Regular objects have to be fully loaded before their descendants  HTML Objects are special HTML is stream objects, allowing incremental rendering 19

 Discovering Descendants: Inject delay Descendant of X: delayed together with X  Discovering Parent: Non-stream parent: Idea: Parent of Z is X? No Y between Z and X Algorithm: Stream Parent: Offset 20

22 PLT of Basic Scenario PLT of New Scenarios Predict

23 Change Delay Factors: Client, Server, RTT and DNS lookup Change Delay Factors: Client, Server, RTT and DNS lookup

24 Challenge: Keep the model simple while accuracy Solution:  Right level abstraction  Most fundamental characteristics

25

26

27 Where? What? Packet traces (Easy deployable) Three types of activities: Additional: infer RTT and # of RT Response Time = RTT + server delay

28

29 What is Client Delay? Last Parent is Available Browser request X Parsing HTML Executing JAVAscript

30 How to get Client Delay? + Client Delay =

31

32 Timing of Basic Scenario Basic Timing from Trace Basic Timing from Trace Client Delay =+ Adjusted Timing of New Scenario Change Delay Factors: (According to New Scenario) Client, Server, RTT and DNS lookup Change Delay Factors: (According to New Scenario) Client, Server, RTT and DNS lookup

Other Factors:  Add DNS lookup time based on DNS cache  Add TCP handshaking time for new connections  Add TCP waiting time when all connections are not available 33 One assumption: # of round-trips involved in loading an object not change

34

35 Timing of New Scenario Browser Behavior ++

 HTTP/1.1  No pipelining Not been widely supported by proxies Head of line blocking  Limit of TCP connections (for host, not IP) 36 Browser Behavior

37

38

39

40

41

42

43

45

47

48

 Metrics:  Controlled experiments Baseline: high latency New Scenario: low latency Use controlled gateway to inject and remove delays  Planetlab experiments Baseline: International nodes New scenario: US nodes Improve all delay factors to be the same as the US node. 49

 Setup: visit Yahoo Maps from Northwestern  Baseline: inject 100ms RTT to one DC  New Scenario: removing the 100ms RTT 50

 Baseline: International node (relative poor performance)  New Scenario: US node (good performance) 51

 Web service performance prediction is hard – Modern web services are complicated – Object dependencies are very important  An automated tool for performance prediction – Dependency discovery by Timing Perturbation – Dependency (PDG) driven Performance Predication  Evaluation on the accuracy and usefulness 52

 Cannot deal with dynamic object dependencies.  Packet loss assumption.  Lack of error warning scheme when it fails.  Mean and Variance of PLT.  Unit Load Time = PLT/PLW.  Ways to reduce simulation times? 53