wiki:GEC21Agenda/ChoiceNet/run_tests_part2

Version 2 (modified by xinming@umass.edu, 5 years ago) (diff)

--

Navigation: Up

After Step 2: Configure and Install ChoiceNet Software, we already have the Choicenet Framework setup. If you want to try the SDN implementation of ChoiceNet, you can follow this part of instructions.

The SDN-based implementation has an SDN controller that knows the network topology and detect the path services. It also has a marketplace server which accepts the service advertisement from controller and handles the user request.

Although the controller and marketplace are logically separate from the users, in this tutorial, they are located on H1.

So open up a ssh session terminal to the H1 Node and start the controller and marketplace.

On TERMINAL 1 (H1 node)

sudo /root/choicenet/geni/start_server.sh

this will start both the marketplace and controller.

Open up two ssh session terminals to the H2 Node. First run the Choicenet App. The Choicenet App will communicate with marketplace to request for path service and deal with payment.

On TERMINAL 2 (H2 node)

sudo /root/choicenet/geni/start_app.sh

When asked for username and password, please use the following account:

Username: customer@choicenet.info

Password: customer

After login, the app will intercept any TCP SYN packets with destination IP 10.0.0.0/8 and destination port 8080 or 443. Once it intercepts a packet, it communicated with the marketplace and request for a path service with 3-minute duration. This means it is compatible with almost any existing network applications, here we will use wget and mplayer as two examples.

First start a simple http server on H1:

On TERMINAL 1 (H1 node)

sudo su
cd /root/
python -m SimpleHTTPServer 8080

We then use wget on the other terminal of H2

On TERMINAL 3 (H2 node)

wget http://10.10.1.1:8080/sample.mp4

After executing this command, switch to TERMINAL 2, you will see the ChoiceNet App gives you several options about the forward and revert path. Select one for each, then you will be asked to pay for the path service on a webpage.

Output on TERMINAL 2 (H2 node)

Forward recipe:
0. Bandwidth: 10.000000 Mbps, Latency: 0.400000 ms, Price: 0.180000 dollars
1. Bandwidth: 1.000000 Mbps, Latency: 0.400000 ms, Price: 0.160000 dollars
Enter selection: 1
Return recipe:
0. Bandwidth: 1.000000 Mbps, Latency: 0.400000 ms, Price: 0.160000 dollars
1. Bandwidth: 10.000000 Mbps, Latency: 0.400000 ms, Price: 0.180000 dollars
Enter selection: 0
Please pay for the services in the following webpage before you use them: 
http://192.122.236.102/new/client/paypal/payment/service/69/2/1413512209097/39/

Copy the link to your browser, and pay for the service using paypal. You can use the test paypal account:

Username: customer@choicenet.info

Password: customer

After you paid, click the "Return to marketplace@choicenet.info". After the webpage redirection, the marketplace will be notified about this payment, and the download should start. You will see the output on TERMINAL 3:

root@h2:~# wget http://10.10.1.1:8080/sample.mp4
--2014-10-16 23:02:16--  http://10.10.1.1:8080/sample.mp4
Connecting to 10.10.1.1:8080... connected.
HTTP request sent, awaiting response... 200 OK
Length: 73516259 (70M) [video/mp4]
Saving to: `sample.mp4.4'

10% [========>                                                                                  ] 7,927,627    116K/s  eta 9m 11s

The download speed should match the speed you select in the ChoiceNet App.

Attachments (4)

Download all attachments as: .zip