wiki:PlasticSlices/Experiments

Version 2 (modified by Josh Smift, 13 years ago) (diff)

--

This page describes the procedure for setting up, running, and cleaning up each of the experiments that we're running for the Plastic Slices project.

In each experiment, it assumes you've already created your slice and all of its slivers, and divided your compute resources into "clients" and "servers" (the meaning of which will vary depending on the particular experiment).

GigaPing

This experiment uses the 'ping' command to send 1 GB of data via ICMP.

Setup

Divide the hosts that you want to use into pairs. The client is the one that you'll run the 'ping' command on; the server is the one that you'll ping from the client.

Identify the precise IP address on each server that you'll want to ping. Make a table to keep track of which server you'll want to ping from each client, e.g.

client server address
ganel.gpolab.bbn.com server=10.42.101.104
of-planet1.stanford.edu server=10.42.101.73

You'll use the "server=<ipaddr>" parts when you go to execute the experiment.

To send 1 GB of data, you'll need to send a total of 666,667 1.5 KB packets. Rounding up for simplicity, divide 700,000 by the number of host pairs you have; call this number <count>, and use it below when you run the 'ping' commands.

Execution

On each client, run

server=<ipaddr>
count=<count>
sudo ping -i .001 -s $((1500-8-20)) -c $count $server

using the "server=<ipaddr>" line from your table, and the <count> value you calculated earlier.

That should print many lines on your terminal that look like

1480 bytes from <ipaddr>: icmp_seq=44 ttl=64 time=135 ms
1480 bytes from <ipaddr>: icmp_seq=49 ttl=64 time=87.7 ms
1480 bytes from <ipaddr>: icmp_seq=50 ttl=64 time=77.9 ms

and then finish with a section that looks like

--- <ipaddr> ping statistics ---
<count> packets transmitted, <count> received, 0% packet loss, time 5229ms
rtt min/avg/max/mdev = 59.376/70.448/522.011/57.578 ms, pipe 55

Copy that final block for your results.

Cleanup

No special cleanup is needed.

GigaNetcat

This experiment uses the 'netcat' command to send 1 GB of data via unencrypted TCP.

GigaWeb

This experiment uses the HTTPS protocol to send 1 GB of data via encrypted TCP.

GigaPerfTCP

This experiment uses the iperf command to send 1 GB of data via TCP, measuring performance throughout the transfer.

GigaPerfUDP

This experiment uses the iperf command to send 1 GB of data via UDP, measuring performance throughout the transfer.

Attachments (1)

Download all attachments as: .zip