Skip to content

tierney/web_perf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README for Web Perf Toolkit.

*Requirements*

Install the following:

https://github.com/tierney/iperf
https://github.com/tierney/fss

*Quick Setup*

Laptop running experiment and graph/analysis code:

  apt-get install xvfb xserver-xephyr
  make setup # Lots of python action...
  source bin/activate # This should work if everything went well before.
  pip install -U PyVirtualDisplay
  pip install -U selenium
  # The following commands takes a while to complete and is only necessary for
  # graphing.
  pip install -U numpy
  pip install -U matplotlib
  pip install -U scikits.statsmodels

*Usage*

Laptop running experiment:

Probably all you want is this:
o ./empirical/run_experiment.py -b chrome -b firefox -c t-mobile,usb0 -c wired,eth0

If you're interested in receiver-side congestion window stuff:
o ./empirical/run_experiment.py -b chrome -b firefox -c t-mobile,usb0 -c wired,eth0 --sspath ~/repos/fss/src/ss

iperf (reverse NAT) server:

o Install the iperf program above. Note: this is NOT the standard iperf -- this
  iperf allows for initiating reverse TCP throughput tests from a NAT'd client.

o In a screen session, run the following command

  ./empirical/run_iperf_reverse_server.py

Selenium Setup:

o `chromedriver` must be installed in $PATH for root in order to test the Chrome
  launches.

o Android emulator must be launched and ready. Visit the following for more
  instructions:

    http://code.google.com/p/selenium/wiki/AndroidDriver#Setup_the_Emulator

  adb -s <serialId> shell am start -a android.intent.action.MAIN \
      -n org.openqa.selenium.android.app/.MainActivity

  adb -s <serialId> forward tcp:8080 tcp:8080

  ----

  $./adb -s <serialId> shell am start -a android.intent.action.MAIN \
       -n org.openqa.selenium.android.app/.MainActivity

  You can start the application in debug mode, which has more verbose logs by
  doing:

  $./adb -s <serialId> shell am start -a android.intent.action.MAIN \
       -n org.openqa.selenium.android.app/.MainActivity -e debug true

  Now we need to setup the port forwarding in order to forward traffic from the
  host machine to the emulator. In a terminal type:

  $./adb -s <serialId> forward tcp:8080 tcp:8080

  This will make the android server available at http://localhost:8080/wd/hub
  from the host machine. You're now ready to run the tests. Let's take a look at
  some code.

References:

  Alexa Top 1 Million Sites:
  `wget s3.amazonaws.com/alexa-static/top-1m.csv.zip`

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published