--- /dev/null
+<html>
+ <head>
+ <title>Proxy Technology Tests</title>
+ <style TYPE="text/css">
+ <!--
+ #centered-content {
+ margin: 0 auto;
+ width: 1000px;
+ text-align: center;
+ }
+ body {
+ margin: 0px;
+ padding: 0px;
+ }
+
+ #header {
+ background: #d0dafd;
+ color: #339;
+ font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
+ font-size: 14px;
+ width: 100%;
+ text-align: center;
+ padding: 5px;
+ }
+ #leftcol {
+ background: #fff;
+ float: left;
+ width: 5%;
+ }
+ #rightcol {
+ background: #fff;
+ float: right;
+ width: 5%;
+ }
+ #content {
+ background: #fff;
+ float: left;
+ width: 100%;
+ }
+ #footer {
+ background: #d0dafd;
+ color: #339;
+ font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
+ font-size: 12px;
+ clear: both;
+ width: 100%;
+ text-align: center;
+ padding: 5px;
+ }
+
+ #box-table-a {
+ font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
+ font-size: 12px;
+ margin: 10px;
+ width: 1000px;
+ text-align: left;
+ border-collapse: collapse;
+ }
+ #box-table-a th {
+ font-size: 14px;
+ font-weight: normal;
+ padding: 8px;
+ background: #b9c9fe;
+ border-top: 4px solid #aabcfe;
+ border-bottom: 1px solid #fff;
+ color: #039;
+ }
+ #box-table-a td {
+ padding: 12px;
+ background: #e8edff;
+ border-bottom: 2px solid #fff;
+ color: #669;
+ }
+ #box-table-a tr:hover td {
+ background: #d0dafd;
+ color: #339;
+ }
+
+ a:link {
+ color: #0000ff;
+ }
+ a:visited {
+ color: #808080;
+ }
+ a:hover {
+ color: #ff0000;
+ text-decoration: none;
+ }
+ a:active {
+ color: #777777;
+ }
+ -->
+ </style>
+ </head>
+ <body>
+ <div id="header">P2P-Next - Proxy Technology Tests - Results
+ </div>
+
+ <div id="leftcol">
+ </div>
+
+ <div id="rightcol">
+ </div>
+
+ <div id="content">
+ <div id="centered-content">
+
+ <table id="box-table-a" summary="Campaign-01 results">
+ <thead>
+ <tr>
+ <th scope="col">Name</th>
+ <th scope="col">No. of Seeders</th>
+ <th scope="col">No. of Leechers</th>
+ <th scope="col">No. of Proxies</th>
+ <th scope="col">No. of Does</th>
+ <th scope="col">Bandwidth Rectrictions</th>
+ <th scope="col">Graphs</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>scenario-01</td>
+ <td>1</td>
+ <td>6</td>
+ <td>0</td>
+ <td>0</td>
+ <td>8 Mbit/s up/down</td>
+ <td><a href="scenario01/scenario01-dlspeed-percent.png">dlspeed vs percent</a>; <a href="scenario01/scenario01-dlspeed-time.png">dlspeed vs time</a></td>
+ </tr>
+ <tr>
+ <td>scenario-02</td>
+ <td>1</td>
+ <td>5</td>
+ <td>2</td>
+ <td>1</td>
+ <td>8 Mbit/s up/down</td>
+ <td><a href="scenario02/scenario02-dlspeed-percent.png">dlspeed vs percent</a>; <a href="scenario02/scenario02-dlspeed-time.png">dlspeed vs time</a></td>
+ </tr>
+ <tr>
+ <td>scenario-03</td>
+ <td>6</td>
+ <td>1</td>
+ <td>0</td>
+ <td>0</td>
+ <td>8 Mbit/s up/down</td>
+ <td><a href="scenario03/scenario03-dlspeed-percent.png">dlspeed vs percent</a>; <a href="scenario03/scenario03-dlspeed-time.png">dlspeed vs time</a></td>
+ </tr>
+ <tr>
+ <td>scenario-04</td>
+ <td>6</td>
+ <td>0</td>
+ <td>2</td>
+ <td>1</td>
+ <td>8 Mbit/s up/down</td>
+ <td><a href="scenario04/scenario04-dlspeed-percent.png">dlspeed vs percent</a>; <a href="scenario04/scenario04-dlspeed-time.png">dlspeed vs time</a></td>
+ </tr>
+ <tr>
+ <td>scenario-05</td>
+ <td>1</td>
+ <td>5</td>
+ <td>2</td>
+ <td>1</td>
+ <td>32 Mbit/s up/down doe-proxy <p>8 Mbit/s up/down all others</td>
+ <td><a href="scenario05/scenario05-dlspeed-percent.png">dlspeed vs percent</a>; <a href="scenario05/scenario05-dlspeed-time.png">dlspeed vs time</a></td>
+ </tr>
+ <tr>
+ <td>scenario-06</td>
+ <td>6</td>
+ <td>0</td>
+ <td>2</td>
+ <td>1</td>
+ <td>32 Mbit/s up/down doe-proxy <p>8 Mbit/s up/down all others</td>
+ <td><a href="scenario06/scenario06-dlspeed-percent.png">dlspeed vs percent</a>; <a href="scenario06/scenario06-dlspeed-time.png">dlspeed vs time</a></td>
+ </tr>
+ <tr>
+ <td>scenario-07</td>
+ <td>6</td>
+ <td>0</td>
+ <td>2</td>
+ <td>1</td>
+ <td>32 Mbit/s up/down proxy bw <p>8 Mbit/s up/down all others</td>
+ <td><a href="scenario07/scenario07-dlspeed-percent.png">dlspeed vs percent</a>; <a href="scenario07/scenario07-dlspeed-time.png">dlspeed vs time</a></td>
+ </tr>
+ <tr>
+ <td>scenario-08</td>
+ <td>1</td>
+ <td>5</td>
+ <td>2</td>
+ <td>1</td>
+ <td>32 Mbit/s up/down proxy bw<p>8 Mbit/s up/down all others</td>
+ <td><a href="scenario08/scenario08-dlspeed-percent.png">dlspeed vs percent</a>; <a href="scenario08/scenario08-dlspeed-time.png">dlspeed vs time</a></td>
+ </tr>
+ <tr>
+ <td>scenario-09</td>
+ <td>6</td>
+ <td>0</td>
+ <td>2</td>
+ <td>1</td>
+ <td>1 Gbit/s up/down bw</td>
+ <td><a href="scenario09/scenario09-dlspeed-percent.png">dlspeed vs percent</a>; <a href="scenario09/scenario09-dlspeed-time.png">dlspeed vs time</a></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </div>
+
+ <div id="footer">For further information please contact George Milescu - george.milescu [at] gmail.com
+ </div>
+
+ </body>
+</html>
\ No newline at end of file
--- /dev/null
+#
+# Copyright: George Milescu 2010 - george.milescu@gmail.com
+#
+# R script used to plot the results of a scenario
+
+# import ggplot2
+library(ggplot2)
+
+# Read transmitted command line arguments
+args <- commandArgs(trailingOnly = TRUE)
+
+# The data files are located in the target folder. Also, the graph will be saved in the target folder.
+target_folder <- args[2]
+campaign_name <- args[3]
+rm(args)
+
+# read data from the data file
+leecher01=read.table(paste(target_folder, "p2p-next-05.grid.pub.ro.log.data", sep="/"), header=T, sep=" ")
+leecher02=read.table(paste(target_folder, "p2p-next-06.grid.pub.ro.log.data", sep="/"), header=T, sep=" ")
+leecher03=read.table(paste(target_folder, "p2p-next-07.grid.pub.ro.log.data", sep="/"), header=T, sep=" ")
+leecher04=read.table(paste(target_folder, "p2p-next-08.grid.pub.ro.log.data", sep="/"), header=T, sep=" ")
+leecher05=read.table(paste(target_folder, "p2p-next-09.grid.pub.ro.log.data", sep="/"), header=T, sep=" ")
+leecher06=read.table(paste(target_folder, "p2p-next-10.grid.pub.ro.log.data", sep="/"), header=T, sep=" ")
+
+# transform KB/s to Mbit/s
+leecher01$dlspeed <- leecher01$dlspeed*8/1000
+leecher02$dlspeed <- leecher02$dlspeed*8/1000
+leecher03$dlspeed <- leecher03$dlspeed*8/1000
+leecher04$dlspeed <- leecher04$dlspeed*8/1000
+leecher05$dlspeed <- leecher05$dlspeed*8/1000
+leecher06$dlspeed <- leecher06$dlspeed*8/1000
+
+
+
+# plot dlspeed-percent data
+p <- ggplot() +
+geom_point(aes(x=leecher01$percent, y=leecher01$dlspeed, label="Leecher 01", colour="Leecher 01"), size=1) +
+geom_point(aes(x=leecher02$percent, y=leecher02$dlspeed, label="Leecher 02", colour="Leecher 02"), size=1) +
+geom_point(aes(x=leecher03$percent, y=leecher03$dlspeed, label="Leecher 03", colour="Leecher 03"), size=1) +
+geom_point(aes(x=leecher04$percent, y=leecher04$dlspeed, label="Leecher 04", colour="Leecher 04"), size=1) +
+geom_point(aes(x=leecher05$percent, y=leecher05$dlspeed, label="Leecher 05", colour="Leecher 05"), size=1) +
+geom_point(aes(x=leecher06$percent, y=leecher06$dlspeed, label="Leecher 06", colour="Leecher 06"), size=1) +
+theme_bw() +
+scale_x_continuous("Percent", limits=c(0, 100), breaks=seq(0, 100, 10)) +
+scale_y_continuous("Download speed (Mbit/s)", limits=c(0, 8), breaks=seq(0, 8, 0.5)) +
+coord_cartesian() +
+scale_colour_manual("Legend", c("Leecher 01"="red", "Leecher 02"="blue", "Leecher 03"="green", "Leecher 04"="orange", "Leecher 05"="black", "Leecher 06"="pink")) +
+opts(title=paste(campaign_name, "Scenario-01: a flashcrowd swarm (1 Seeder, 6 Leechers), all peers have an 8 Mbit/s BW", sep="\n"))
+
+# plot data as an eps file
+postscript(paste(target_folder, "scenario01-dlspeed-percent.eps", sep="/"))
+print(p)
+dev.off()
+
+# plot data as an png file
+png(paste(target_folder, "scenario01-dlspeed-percent.png", sep="/"), width = 1280, height = 800)
+print(p)
+dev.off()
+
+
+
+# plot dlspeed-time data
+p <- ggplot() +
+geom_point(aes(x=leecher01$time, y=leecher01$dlspeed, label="Leecher 01", colour="Leecher 01"), size=1) +
+geom_point(aes(x=leecher02$time, y=leecher02$dlspeed, label="Leecher 02", colour="Leecher 02"), size=1) +
+geom_point(aes(x=leecher03$time, y=leecher03$dlspeed, label="Leecher 03", colour="Leecher 03"), size=1) +
+geom_point(aes(x=leecher04$time, y=leecher04$dlspeed, label="Leecher 04", colour="Leecher 04"), size=1) +
+geom_point(aes(x=leecher05$time, y=leecher05$dlspeed, label="Leecher 05", colour="Leecher 05"), size=1) +
+geom_point(aes(x=leecher06$time, y=leecher06$dlspeed, label="Leecher 06", colour="Leecher 06"), size=1) +
+theme_bw() +
+scale_x_continuous("Time(s)") +
+scale_y_continuous("Download speed (Mbit/s)", limits=c(0, 8), breaks=seq(0, 8, 0.5)) +
+coord_cartesian() +
+scale_colour_manual("Legend", c("Leecher 01"="red", "Leecher 02"="blue", "Leecher 03"="green", "Leecher 04"="orange", "Leecher 05"="black", "Leecher 06"="pink")) +
+opts(title=paste(campaign_name, "Scenario-01: a flashcrowd swarm (1 Seeder, 6 Leechers), all peers have an 8 Mbit/s BW", sep="\n"))
+
+# plot data as an eps file
+postscript(paste(target_folder, "scenario01-dlspeed-time.eps", sep="/"))
+print(p)
+dev.off()
+
+# plot data as an png file
+png(paste(target_folder, "scenario01-dlspeed-time.png", sep="/"), width = 1280, height = 800)
+print(p)
+dev.off()