TestSpecs: add multiple internal-limitation clients experiments and upload-limited...
authorRazvan Deaconescu <razvan.deaconescu@cs.pub.ro>
Tue, 10 Aug 2010 10:45:44 +0000 (13:45 +0300)
committerRazvan Deaconescu <razvan.deaconescu@cs.pub.ro>
Tue, 10 Aug 2010 10:45:44 +0000 (13:45 +0300)
TestSpecs/test-scenario-pre-post-nop-many.cfg [new file with mode: 0644]
TestSpecs/test-scenario-pre-post-nop-many.r [new file with mode: 0644]
TestSpecs/test-scenario-pre-post-nop-ul.cfg [new file with mode: 0644]
TestSpecs/test-scenario-pre-post-nop-ul.r [new file with mode: 0644]

diff --git a/TestSpecs/test-scenario-pre-post-nop-many.cfg b/TestSpecs/test-scenario-pre-post-nop-many.cfg
new file mode 100644 (file)
index 0000000..cc37a31
--- /dev/null
@@ -0,0 +1,16 @@
+# Scenario01ct
+# Description:
+#   * 1 seeder
+#   * 1 leecher
+#   * client-wise limitation (upload-only)
+#
+# Hostname                     SSHport         User    RemoteFolder            NetInterface    Download(Mbps)  DownloadBurst(K)        Upload(Mbps)    UploadBurst(K)          PreRunScript            PostRunScript           ClientType                      TorrentFile             Periods
+p2p-next-01.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_seeder_limit         Data.100M.ct.torrent    (10,60) (60,100) (120,200) (200,230) (250,600)
+p2p-next-03.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (10,30) (40,70) (80,110) (130,160) (180,250) (300,600)
+p2p-next-04.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (10,30) (40,70) (80,110) (130,160) (180,250) (300,600)
+p2p-next-05.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (10,30) (40,70) (80,110) (130,160) (180,250) (300,600)
+p2p-next-06.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (10,30) (40,70) (80,110) (130,160) (180,250) (300,600)
+p2p-next-07.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (10,30) (40,70) (80,110) (130,160) (180,250) (300,600)
+p2p-next-08.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (10,30) (40,70) (80,110) (130,160) (180,250) (300,600)
+p2p-next-09.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (10,30) (40,70) (80,110) (130,160) (180,250) (300,600)
+p2p-next-10.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (10,30) (40,70) (80,110) (130,160) (180,250) (300,600)
diff --git a/TestSpecs/test-scenario-pre-post-nop-many.r b/TestSpecs/test-scenario-pre-post-nop-many.r
new file mode 100644 (file)
index 0000000..8f18372
--- /dev/null
@@ -0,0 +1,73 @@
+#
+# 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
+seeder=read.table(paste(target_folder, "p2p-next-01-105.log.data", sep="/"), header=T, sep=" ")
+leecher=read.table(paste(target_folder, "p2p-next-03-105.log.data", sep="/"), header=T, sep=" ")
+leecher=read.table(paste(target_folder, "p2p-next-04-105.log.data", sep="/"), header=T, sep=" ")
+leecher=read.table(paste(target_folder, "p2p-next-05-105.log.data", sep="/"), header=T, sep=" ")
+leecher=read.table(paste(target_folder, "p2p-next-06-105.log.data", sep="/"), header=T, sep=" ")
+leecher=read.table(paste(target_folder, "p2p-next-07-105.log.data", sep="/"), header=T, sep=" ")
+leecher=read.table(paste(target_folder, "p2p-next-08-105.log.data", sep="/"), header=T, sep=" ")
+leecher=read.table(paste(target_folder, "p2p-next-09-105.log.data", sep="/"), header=T, sep=" ")
+leecher=read.table(paste(target_folder, "p2p-next-10-105.log.data", sep="/"), header=T, sep=" ")
+
+
+# transform KB/s to Mbit/s
+leecher$dlspeed <- leecher$dlspeed*8/1000
+
+
+# plot dlspeed-percent data
+p <- ggplot() + 
+geom_point(aes(x=leecher$percent, y=leecher$dlspeed, label="Leecher"), 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") +
+opts(title=paste(campaign_name, "test-scenario-pre-post-nop-many: a test swarm (1 Seeder, 8 Leechers), all peers have an 8 Mbit/s BW (upload-only)", sep="\n"))
+
+# plot data as an eps file
+postscript(paste(target_folder, "test-scenario-pre-post-nop-dlspeed-percent.eps", sep="/"))
+print(p)
+dev.off()
+
+# plot data as an png file
+png(paste(target_folder, "test-scenario-pre-post-nop-dlspeed-percent.png", sep="/"), width = 1280, height = 800)
+print(p)
+dev.off()
+
+
+
+# plot dlspeed-time data
+p <- ggplot() + 
+geom_point(aes(x=leecher$time, y=leecher$dlspeed, label="Leecher"), 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") +
+opts(title=paste(campaign_name, "test-scenario-pre-post-nop-many: a test swarm (1 Seeder, 1 Leecher), all peers have an 8 Mbit/s BW upload-only", sep="\n"))
+
+# plot data as an eps file
+postscript(paste(target_folder, "test-scenario-pre-post-nop-dlspeed-time.eps", sep="/"))
+print(p)
+dev.off()
+
+# plot data as an png file
+png(paste(target_folder, "test-scenario-pre-post-nop-dlspeed-time.png", sep="/"), width = 1280, height = 800)
+print(p)
+dev.off()
diff --git a/TestSpecs/test-scenario-pre-post-nop-ul.cfg b/TestSpecs/test-scenario-pre-post-nop-ul.cfg
new file mode 100644 (file)
index 0000000..a0afc1c
--- /dev/null
@@ -0,0 +1,9 @@
+# Scenario01ct
+# Description:
+#   * 1 seeder
+#   * 1 leecher
+#   * client-wise limitation (upload-only)
+#
+# Hostname                     SSHport         User    RemoteFolder            NetInterface    Download(Mbps)  DownloadBurst(K)        Upload(Mbps)    UploadBurst(K)          PreRunScript            PostRunScript           ClientType                      TorrentFile             Periods
+p2p-next-08.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            0               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_seeder_limit         Data.100M.ct.torrent    (10,60) (60,100) (120,200) (200,230) (250,600)
+p2p-next-08.grid.pub.ro                10522           p2p     /home/p2p/george        eth0            0               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (10,30) (40,70) (80,110) (130,160) (180,250) (300,600)
diff --git a/TestSpecs/test-scenario-pre-post-nop-ul.r b/TestSpecs/test-scenario-pre-post-nop-ul.r
new file mode 100644 (file)
index 0000000..ac59769
--- /dev/null
@@ -0,0 +1,66 @@
+#
+# 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
+seeder=read.table(paste(target_folder, "p2p-next-08-103.log.data", sep="/"), header=T, sep=" ")
+leecher=read.table(paste(target_folder, "p2p-next-08-105.log.data", sep="/"), header=T, sep=" ")
+
+
+# transform KB/s to Mbit/s
+leecher$dlspeed <- leecher$dlspeed*8/1000
+
+
+# plot dlspeed-percent data
+p <- ggplot() + 
+geom_point(aes(x=leecher$percent, y=leecher$dlspeed, label="Leecher"), 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") +
+opts(title=paste(campaign_name, "test-scenario-pre-post-nop: a test swarm (1 Seeder, 1 Leecher), all peers have an 8 Mbit/s BW (upload-only)", sep="\n"))
+
+# plot data as an eps file
+postscript(paste(target_folder, "test-scenario-pre-post-nop-dlspeed-percent.eps", sep="/"))
+print(p)
+dev.off()
+
+# plot data as an png file
+png(paste(target_folder, "test-scenario-pre-post-nop-dlspeed-percent.png", sep="/"), width = 1280, height = 800)
+print(p)
+dev.off()
+
+
+
+# plot dlspeed-time data
+p <- ggplot() + 
+geom_point(aes(x=leecher$time, y=leecher$dlspeed, label="Leecher"), 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") +
+opts(title=paste(campaign_name, "test-scenario-pre-post-nop: a test swarm (1 Seeder, 1 Leecher), all peers have an 8 Mbit/s BW upload-only", sep="\n"))
+
+# plot data as an eps file
+postscript(paste(target_folder, "test-scenario-pre-post-nop-dlspeed-time.eps", sep="/"))
+print(p)
+dev.off()
+
+# plot data as an png file
+png(paste(target_folder, "test-scenario-pre-post-nop-dlspeed-time.png", sep="/"), width = 1280, height = 800)
+print(p)
+dev.off()