About the project
Testbeds
activities
Resources
About the project
Testbeds
activities
Resources
This is an old revision of the document!
This document describes the procedure on how to make experiments on OneLab. The experiment we do here is on 6 PlanetLab nodes. We tried this experiment twice using UDP and TCP.
You should do these steps before implementing your experiment on OneLab.
1- Make request to create a slice and wait for taking permission from your site PI to do that.
2- Requested any number of nodes that you want for your experiment. While choosing nodes, you have to choose nodes from available ones and make sure that they are not down. To know this, change the settings from the icon labeled by “…” to make the boot state available.
3- If you tried to access the reserved nodes and error message “permission denied (public key)” appears:
a) Make sure that you downloaded the public key
b) You will be allowed “only once” to generate new key pair or even upload one after generating them from the terminal.
c) Make sure that your ssh command follow this form: ssh sliceName@nodeName
Note: sliceName should have the following format: onelab8au_helloworld while slice name on the site has the following format: onelab.au.helloworld
4- After gaining access on two nodes (at least), to make sure of their connection, use ping IP remote host (you can get the real IP of host using that command: wget –q0-http://ipecho.net/plain; echo)
5- To ensure that the real hosts are connected to each other (not such their gateways), use python to implement server on one node and telnet it from the other node.
6- After making sure that your nodes are up and connected to each other, it is the time for your first experiment :)
6 nodes are used with 2 transmitter, 2 receivers and 2 relay nodes.
Goal: the two traffic flows in the experiment passes by 2 bottleneck nodes and 1 bottleneck link
Note that: the topology will be drawn here is logical one which means that this drawing doesn't reflect the position of nodes physically. However, all nodes are chosen to be in the same country to maintain the lowest possible delay.
n1 sends traffic to n5 (through n3 and n4)
n2 sends traffic to n6 (through n3 and n4)
n1 and n2 are very simple clients (no more than one telnet command line).
n3 is a simple server which sends any received message as it is to n4.
n4 does processing on the received message and send this message to n5 or n6 according to the message itself.
n5 and n6 are simple servers which receive message and simply prints it.
The whole experiment is written on python since it's supported by default machines of PlanetLab Europe (which run linux)
It is important to note that no routing is done in this experiment but the paths (including destinations) and the forwarding rules are determined inside the code
To make this part easy, client sends their names in the message so, if message=“n1”, this should go to n5 and if message=“n2”, this should go to n6
Last note: The whole experiment works on a fixed port-Number, let it be 5005