Pages

Saturday, 28 November 2015

CacheBrowser

The current CacheBrowser software is a research prototype implementation, and is not yet ready for end-users. If you are a researcher or developer check it out and give us feedback, otherwise please be patient while we work on an end-user version of the code. Thanks for your understanding and support! 

Installation

python setup.py install

Running CacheBrowser

To run the CacheBrowser process simply enter the cachebrowser command
cachebrowser
You can then use CacheBrowser by setting the HTTP proxy on your browser to localhost:8080

Bootstrapping

In order to be able to browse a page using CacheBrowser, the page must first be bootstrapped. What this means is that CacheBrowser must first find out what CDN the page is hosted on and also obtain some edge server addresses for that CDN. 
In the long run we plan on providing a remote Bootstrapping Server which CacheBrowser contacts to gain bootstrapping information. For now though, bootstrapping can be done using local bootstrapping files provided to CacheBrowser.
A local bootstrapping file is a YAML file containing a list of Host or CDN information.
For example:
- type: cdn
  id: akamai
  name: Akamai
  edge_servers:
    - 23.208.91.198
    - 23.218.210.7

- type: host
  name: www.nbc.com
  ssl: false
  cdn: akamai

- type: host
  name: www.bloomberg.com
  ssl: false
  cdn: akamai
For each CDN provided in the bootstrapping file the following information should be provided:
KeyValue
typecdn
idA unique ID to be used for the CDN
nameThe CDN Name
edge_serversList of edge server addresses for the CDN
For each Host provided in the bootstrapping file the following information should be provided:
KeyValue
typehost
nameThe hostname
cdnThe ID of the CDN which provides this host
sslWhether the pages supports HTTPS connections or not
CacheBrowser uses the local bootstrapping file here by default. To provide more bootstrapping files to CacheBrowser, run it with the -b option.
cachebrowser -b /path/to/localbootstrap.yaml

Using CacheBrowser

You could also run a command with CacheBrowser:
cachebrowser <command>
These are the valid commands you could give:
CommandDescription
bootstrap Bootstrap 
get url[target]Retrieve url using CacheBrowser. If target is specified CacheBrowser uses the given target. If not, CacheBrowser uses the bootstrapped target if the host has been bootstrapped or makes a normal request to the host if not.
list hostsLists the bootstrapped hosts
list cdnLists the CDNs used for the bootstrapped hosts

Example

cachebrowser bootstrap www.nbc.com
cachebrowser get http://www.nbc.com

cachebrowser get https://www.istockphoto.com 69.31.76.91
from https://github.com/CacheBrowser/cachebrowser
https://www.cachebrowser.net