--- /dev/null
+# 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)
--- /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
+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()
--- /dev/null
+# 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)
--- /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
+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()