added test-scenario-pre-post-nop-all
authorGeorge Milescu <george.milescu@gmail.com>
Mon, 16 Aug 2010 17:27:06 +0000 (19:27 +0200)
committerGeorge Milescu <george.milescu@gmail.com>
Mon, 16 Aug 2010 17:27:06 +0000 (19:27 +0200)
Signed-off-by: George Milescu <george.milescu@gmail.com>
TestSpecs/test-campaign.cfg
TestSpecs/test-scenario-pre-post-nop-all.cfg [new file with mode: 0644]
TestSpecs/test-scenario-pre-post-nop-all.r [new file with mode: 0644]

index 3309236..5ea27d2 100644 (file)
@@ -6,4 +6,5 @@
 #test-scenario-pre-post.cfg            test-scenario-pre-post.r
 #test-scenario-pre-post-nop.cfg                test-scenario-pre-post-nop.r
 #test-scenario-pre-post-nop-ul.cfg     test-scenario-pre-post-nop-ul.r
-test-scenario-pre-post-nop-many.cfg    test-scenario-pre-post-nop-many.r
+#test-scenario-pre-post-nop-many.cfg   test-scenario-pre-post-nop-many.r
+test-scenario-pre-post-nop-all.cfg     test-scenario-pre-post-nop-all.r
diff --git a/TestSpecs/test-scenario-pre-post-nop-all.cfg b/TestSpecs/test-scenario-pre-post-nop-all.cfg
new file mode 100644 (file)
index 0000000..2e76810
--- /dev/null
@@ -0,0 +1,97 @@
+# Test-scenario-pre-post-nop-all
+# Description:
+#   * 1 seeder
+#   * 89 leechers
+#   * 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                10122           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_seeder_limit         Data.100M.ct.torrent    (0,-)
+p2p-next-01.grid.pub.ro                10222           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-01.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-01.grid.pub.ro                10422           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+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_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-01.grid.pub.ro                10622           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-01.grid.pub.ro                10722           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-01.grid.pub.ro                10822           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-01.grid.pub.ro                10922           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-01.grid.pub.ro                11022           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-03.grid.pub.ro                10122           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-03.grid.pub.ro                10222           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-03.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-03.grid.pub.ro                10422           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+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    (0,-)
+p2p-next-03.grid.pub.ro                10622           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-03.grid.pub.ro                10722           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-03.grid.pub.ro                10822           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-03.grid.pub.ro                10922           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-03.grid.pub.ro                11022           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-04.grid.pub.ro                10122           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-04.grid.pub.ro                10222           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-04.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-04.grid.pub.ro                10422           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+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    (0,-)
+p2p-next-04.grid.pub.ro                10622           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-04.grid.pub.ro                10722           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-04.grid.pub.ro                10822           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-04.grid.pub.ro                10922           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-04.grid.pub.ro                11022           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-05.grid.pub.ro                10122           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-05.grid.pub.ro                10222           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-05.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-05.grid.pub.ro                10422           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+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    (0,-)
+p2p-next-05.grid.pub.ro                10622           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-05.grid.pub.ro                10722           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-05.grid.pub.ro                10822           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-05.grid.pub.ro                10922           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-05.grid.pub.ro                11022           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-06.grid.pub.ro                10122           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-06.grid.pub.ro                10222           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-06.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-06.grid.pub.ro                10422           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+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    (0,-)
+p2p-next-06.grid.pub.ro                10622           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-06.grid.pub.ro                10722           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-06.grid.pub.ro                10822           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-06.grid.pub.ro                10922           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-06.grid.pub.ro                11022           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-07.grid.pub.ro                10122           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-07.grid.pub.ro                10222           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-07.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-07.grid.pub.ro                10422           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+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    (0,-)
+p2p-next-07.grid.pub.ro                10622           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-07.grid.pub.ro                10722           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-07.grid.pub.ro                10822           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-07.grid.pub.ro                10922           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-07.grid.pub.ro                11022           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-08.grid.pub.ro                10122           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-08.grid.pub.ro                10222           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-08.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-08.grid.pub.ro                10422           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+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    (0,-)
+p2p-next-08.grid.pub.ro                10622           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-08.grid.pub.ro                10722           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-08.grid.pub.ro                10822           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-08.grid.pub.ro                10922           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-08.grid.pub.ro                11022           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-09.grid.pub.ro                10122           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-09.grid.pub.ro                10222           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-09.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-09.grid.pub.ro                10422           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+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    (0,-)
+p2p-next-09.grid.pub.ro                10622           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-09.grid.pub.ro                10722           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-09.grid.pub.ro                10822           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-09.grid.pub.ro                10922           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-09.grid.pub.ro                11022           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-10.grid.pub.ro                10122           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-10.grid.pub.ro                10222           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-10.grid.pub.ro                10322           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-10.grid.pub.ro                10422           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+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    (0,-)
+p2p-next-10.grid.pub.ro                10622           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-10.grid.pub.ro                10722           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-10.grid.pub.ro                10822           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-10.grid.pub.ro                10922           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
+p2p-next-10.grid.pub.ro                11022           p2p     /home/p2p/george        eth0            8               100                     8               100                     pre-run_nop.sh          post-run_nop.sh         hrktorrent_leecher_limit        Data.100M.ct.torrent    (0,-)
\ No newline at end of file
diff --git a/TestSpecs/test-scenario-pre-post-nop-all.r b/TestSpecs/test-scenario-pre-post-nop-all.r
new file mode 100644 (file)
index 0000000..089956f
--- /dev/null
@@ -0,0 +1,417 @@
+#
+# 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-101.log.data", sep="/"), header=T, sep=" ")
+leecher01=read.table(paste(target_folder, "p2p-next-01-102.log.data", sep="/"), header=T, sep=" ")
+leecher02=read.table(paste(target_folder, "p2p-next-01-103.log.data", sep="/"), header=T, sep=" ")
+leecher03=read.table(paste(target_folder, "p2p-next-01-104.log.data", sep="/"), header=T, sep=" ")
+leecher04=read.table(paste(target_folder, "p2p-next-01-105.log.data", sep="/"), header=T, sep=" ")
+leecher05=read.table(paste(target_folder, "p2p-next-01-106.log.data", sep="/"), header=T, sep=" ")
+leecher06=read.table(paste(target_folder, "p2p-next-01-107.log.data", sep="/"), header=T, sep=" ")
+leecher07=read.table(paste(target_folder, "p2p-next-01-108.log.data", sep="/"), header=T, sep=" ")
+leecher08=read.table(paste(target_folder, "p2p-next-01-109.log.data", sep="/"), header=T, sep=" ")
+leecher09=read.table(paste(target_folder, "p2p-next-01-110.log.data", sep="/"), header=T, sep=" ")
+leecher10=read.table(paste(target_folder, "p2p-next-03-101.log.data", sep="/"), header=T, sep=" ")
+leecher11=read.table(paste(target_folder, "p2p-next-03-102.log.data", sep="/"), header=T, sep=" ")
+leecher12=read.table(paste(target_folder, "p2p-next-03-103.log.data", sep="/"), header=T, sep=" ")
+leecher13=read.table(paste(target_folder, "p2p-next-03-104.log.data", sep="/"), header=T, sep=" ")
+leecher14=read.table(paste(target_folder, "p2p-next-03-105.log.data", sep="/"), header=T, sep=" ")
+leecher15=read.table(paste(target_folder, "p2p-next-03-106.log.data", sep="/"), header=T, sep=" ")
+leecher16=read.table(paste(target_folder, "p2p-next-03-107.log.data", sep="/"), header=T, sep=" ")
+leecher17=read.table(paste(target_folder, "p2p-next-03-108.log.data", sep="/"), header=T, sep=" ")
+leecher18=read.table(paste(target_folder, "p2p-next-03-109.log.data", sep="/"), header=T, sep=" ")
+leecher19=read.table(paste(target_folder, "p2p-next-03-110.log.data", sep="/"), header=T, sep=" ")
+leecher20=read.table(paste(target_folder, "p2p-next-04-101.log.data", sep="/"), header=T, sep=" ")
+leecher21=read.table(paste(target_folder, "p2p-next-04-102.log.data", sep="/"), header=T, sep=" ")
+leecher22=read.table(paste(target_folder, "p2p-next-04-103.log.data", sep="/"), header=T, sep=" ")
+leecher23=read.table(paste(target_folder, "p2p-next-04-104.log.data", sep="/"), header=T, sep=" ")
+leecher24=read.table(paste(target_folder, "p2p-next-04-105.log.data", sep="/"), header=T, sep=" ")
+leecher25=read.table(paste(target_folder, "p2p-next-04-106.log.data", sep="/"), header=T, sep=" ")
+leecher26=read.table(paste(target_folder, "p2p-next-04-107.log.data", sep="/"), header=T, sep=" ")
+leecher27=read.table(paste(target_folder, "p2p-next-04-108.log.data", sep="/"), header=T, sep=" ")
+leecher28=read.table(paste(target_folder, "p2p-next-04-109.log.data", sep="/"), header=T, sep=" ")
+leecher29=read.table(paste(target_folder, "p2p-next-04-110.log.data", sep="/"), header=T, sep=" ")
+leecher30=read.table(paste(target_folder, "p2p-next-05-101.log.data", sep="/"), header=T, sep=" ")
+leecher31=read.table(paste(target_folder, "p2p-next-05-102.log.data", sep="/"), header=T, sep=" ")
+leecher32=read.table(paste(target_folder, "p2p-next-05-103.log.data", sep="/"), header=T, sep=" ")
+leecher33=read.table(paste(target_folder, "p2p-next-05-104.log.data", sep="/"), header=T, sep=" ")
+leecher34=read.table(paste(target_folder, "p2p-next-05-105.log.data", sep="/"), header=T, sep=" ")
+leecher35=read.table(paste(target_folder, "p2p-next-05-106.log.data", sep="/"), header=T, sep=" ")
+leecher36=read.table(paste(target_folder, "p2p-next-05-107.log.data", sep="/"), header=T, sep=" ")
+leecher37=read.table(paste(target_folder, "p2p-next-05-108.log.data", sep="/"), header=T, sep=" ")
+leecher38=read.table(paste(target_folder, "p2p-next-05-109.log.data", sep="/"), header=T, sep=" ")
+leecher39=read.table(paste(target_folder, "p2p-next-05-110.log.data", sep="/"), header=T, sep=" ")
+leecher40=read.table(paste(target_folder, "p2p-next-06-101.log.data", sep="/"), header=T, sep=" ")
+leecher41=read.table(paste(target_folder, "p2p-next-06-102.log.data", sep="/"), header=T, sep=" ")
+leecher42=read.table(paste(target_folder, "p2p-next-06-103.log.data", sep="/"), header=T, sep=" ")
+leecher43=read.table(paste(target_folder, "p2p-next-06-104.log.data", sep="/"), header=T, sep=" ")
+leecher44=read.table(paste(target_folder, "p2p-next-06-105.log.data", sep="/"), header=T, sep=" ")
+leecher45=read.table(paste(target_folder, "p2p-next-06-106.log.data", sep="/"), header=T, sep=" ")
+leecher46=read.table(paste(target_folder, "p2p-next-06-107.log.data", sep="/"), header=T, sep=" ")
+leecher47=read.table(paste(target_folder, "p2p-next-06-108.log.data", sep="/"), header=T, sep=" ")
+leecher48=read.table(paste(target_folder, "p2p-next-06-109.log.data", sep="/"), header=T, sep=" ")
+leecher49=read.table(paste(target_folder, "p2p-next-06-110.log.data", sep="/"), header=T, sep=" ")
+leecher50=read.table(paste(target_folder, "p2p-next-07-101.log.data", sep="/"), header=T, sep=" ")
+leecher51=read.table(paste(target_folder, "p2p-next-07-102.log.data", sep="/"), header=T, sep=" ")
+leecher52=read.table(paste(target_folder, "p2p-next-07-103.log.data", sep="/"), header=T, sep=" ")
+leecher53=read.table(paste(target_folder, "p2p-next-07-104.log.data", sep="/"), header=T, sep=" ")
+leecher54=read.table(paste(target_folder, "p2p-next-07-105.log.data", sep="/"), header=T, sep=" ")
+leecher55=read.table(paste(target_folder, "p2p-next-07-106.log.data", sep="/"), header=T, sep=" ")
+leecher56=read.table(paste(target_folder, "p2p-next-07-107.log.data", sep="/"), header=T, sep=" ")
+leecher57=read.table(paste(target_folder, "p2p-next-07-108.log.data", sep="/"), header=T, sep=" ")
+leecher58=read.table(paste(target_folder, "p2p-next-07-109.log.data", sep="/"), header=T, sep=" ")
+leecher59=read.table(paste(target_folder, "p2p-next-07-110.log.data", sep="/"), header=T, sep=" ")
+leecher60=read.table(paste(target_folder, "p2p-next-08-101.log.data", sep="/"), header=T, sep=" ")
+leecher61=read.table(paste(target_folder, "p2p-next-08-102.log.data", sep="/"), header=T, sep=" ")
+leecher62=read.table(paste(target_folder, "p2p-next-08-103.log.data", sep="/"), header=T, sep=" ")
+leecher63=read.table(paste(target_folder, "p2p-next-08-104.log.data", sep="/"), header=T, sep=" ")
+leecher64=read.table(paste(target_folder, "p2p-next-08-105.log.data", sep="/"), header=T, sep=" ")
+leecher65=read.table(paste(target_folder, "p2p-next-08-106.log.data", sep="/"), header=T, sep=" ")
+leecher66=read.table(paste(target_folder, "p2p-next-08-107.log.data", sep="/"), header=T, sep=" ")
+leecher67=read.table(paste(target_folder, "p2p-next-08-108.log.data", sep="/"), header=T, sep=" ")
+leecher68=read.table(paste(target_folder, "p2p-next-08-109.log.data", sep="/"), header=T, sep=" ")
+leecher69=read.table(paste(target_folder, "p2p-next-08-110.log.data", sep="/"), header=T, sep=" ")
+leecher70=read.table(paste(target_folder, "p2p-next-09-101.log.data", sep="/"), header=T, sep=" ")
+leecher71=read.table(paste(target_folder, "p2p-next-09-102.log.data", sep="/"), header=T, sep=" ")
+leecher72=read.table(paste(target_folder, "p2p-next-09-103.log.data", sep="/"), header=T, sep=" ")
+leecher73=read.table(paste(target_folder, "p2p-next-09-104.log.data", sep="/"), header=T, sep=" ")
+leecher74=read.table(paste(target_folder, "p2p-next-09-105.log.data", sep="/"), header=T, sep=" ")
+leecher75=read.table(paste(target_folder, "p2p-next-09-106.log.data", sep="/"), header=T, sep=" ")
+leecher76=read.table(paste(target_folder, "p2p-next-09-107.log.data", sep="/"), header=T, sep=" ")
+leecher77=read.table(paste(target_folder, "p2p-next-09-108.log.data", sep="/"), header=T, sep=" ")
+leecher78=read.table(paste(target_folder, "p2p-next-09-109.log.data", sep="/"), header=T, sep=" ")
+leecher79=read.table(paste(target_folder, "p2p-next-09-110.log.data", sep="/"), header=T, sep=" ")
+leecher80=read.table(paste(target_folder, "p2p-next-10-101.log.data", sep="/"), header=T, sep=" ")
+leecher81=read.table(paste(target_folder, "p2p-next-10-102.log.data", sep="/"), header=T, sep=" ")
+leecher82=read.table(paste(target_folder, "p2p-next-10-103.log.data", sep="/"), header=T, sep=" ")
+leecher83=read.table(paste(target_folder, "p2p-next-10-104.log.data", sep="/"), header=T, sep=" ")
+leecher84=read.table(paste(target_folder, "p2p-next-10-105.log.data", sep="/"), header=T, sep=" ")
+leecher85=read.table(paste(target_folder, "p2p-next-10-106.log.data", sep="/"), header=T, sep=" ")
+leecher86=read.table(paste(target_folder, "p2p-next-10-107.log.data", sep="/"), header=T, sep=" ")
+leecher87=read.table(paste(target_folder, "p2p-next-10-108.log.data", sep="/"), header=T, sep=" ")
+leecher88=read.table(paste(target_folder, "p2p-next-10-109.log.data", sep="/"), header=T, sep=" ")
+leecher89=read.table(paste(target_folder, "p2p-next-10-110.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
+leecher07$dlspeed <- leecher07$dlspeed*8/1000
+leecher08$dlspeed <- leecher08$dlspeed*8/1000
+leecher09$dlspeed <- leecher09$dlspeed*8/1000
+leecher10$dlspeed <- leecher10$dlspeed*8/1000
+leecher11$dlspeed <- leecher11$dlspeed*8/1000
+leecher12$dlspeed <- leecher12$dlspeed*8/1000
+leecher13$dlspeed <- leecher13$dlspeed*8/1000
+leecher14$dlspeed <- leecher14$dlspeed*8/1000
+leecher15$dlspeed <- leecher15$dlspeed*8/1000
+leecher16$dlspeed <- leecher16$dlspeed*8/1000
+leecher17$dlspeed <- leecher17$dlspeed*8/1000
+leecher18$dlspeed <- leecher18$dlspeed*8/1000
+leecher19$dlspeed <- leecher19$dlspeed*8/1000
+leecher20$dlspeed <- leecher20$dlspeed*8/1000
+leecher21$dlspeed <- leecher21$dlspeed*8/1000
+leecher22$dlspeed <- leecher22$dlspeed*8/1000
+leecher23$dlspeed <- leecher23$dlspeed*8/1000
+leecher24$dlspeed <- leecher24$dlspeed*8/1000
+leecher25$dlspeed <- leecher25$dlspeed*8/1000
+leecher26$dlspeed <- leecher26$dlspeed*8/1000
+leecher27$dlspeed <- leecher27$dlspeed*8/1000
+leecher28$dlspeed <- leecher28$dlspeed*8/1000
+leecher29$dlspeed <- leecher29$dlspeed*8/1000
+leecher30$dlspeed <- leecher30$dlspeed*8/1000
+leecher31$dlspeed <- leecher31$dlspeed*8/1000
+leecher32$dlspeed <- leecher32$dlspeed*8/1000
+leecher33$dlspeed <- leecher33$dlspeed*8/1000
+leecher34$dlspeed <- leecher34$dlspeed*8/1000
+leecher35$dlspeed <- leecher35$dlspeed*8/1000
+leecher36$dlspeed <- leecher36$dlspeed*8/1000
+leecher37$dlspeed <- leecher37$dlspeed*8/1000
+leecher38$dlspeed <- leecher38$dlspeed*8/1000
+leecher39$dlspeed <- leecher39$dlspeed*8/1000
+leecher40$dlspeed <- leecher40$dlspeed*8/1000
+leecher41$dlspeed <- leecher41$dlspeed*8/1000
+leecher42$dlspeed <- leecher42$dlspeed*8/1000
+leecher43$dlspeed <- leecher43$dlspeed*8/1000
+leecher44$dlspeed <- leecher44$dlspeed*8/1000
+leecher45$dlspeed <- leecher45$dlspeed*8/1000
+leecher46$dlspeed <- leecher46$dlspeed*8/1000
+leecher47$dlspeed <- leecher47$dlspeed*8/1000
+leecher48$dlspeed <- leecher48$dlspeed*8/1000
+leecher49$dlspeed <- leecher49$dlspeed*8/1000
+leecher50$dlspeed <- leecher50$dlspeed*8/1000
+leecher51$dlspeed <- leecher51$dlspeed*8/1000
+leecher52$dlspeed <- leecher52$dlspeed*8/1000
+leecher53$dlspeed <- leecher53$dlspeed*8/1000
+leecher54$dlspeed <- leecher54$dlspeed*8/1000
+leecher55$dlspeed <- leecher55$dlspeed*8/1000
+leecher56$dlspeed <- leecher56$dlspeed*8/1000
+leecher57$dlspeed <- leecher57$dlspeed*8/1000
+leecher58$dlspeed <- leecher58$dlspeed*8/1000
+leecher59$dlspeed <- leecher59$dlspeed*8/1000
+leecher60$dlspeed <- leecher60$dlspeed*8/1000
+leecher61$dlspeed <- leecher61$dlspeed*8/1000
+leecher62$dlspeed <- leecher62$dlspeed*8/1000
+leecher63$dlspeed <- leecher63$dlspeed*8/1000
+leecher64$dlspeed <- leecher64$dlspeed*8/1000
+leecher65$dlspeed <- leecher65$dlspeed*8/1000
+leecher66$dlspeed <- leecher66$dlspeed*8/1000
+leecher67$dlspeed <- leecher67$dlspeed*8/1000
+leecher68$dlspeed <- leecher68$dlspeed*8/1000
+leecher69$dlspeed <- leecher69$dlspeed*8/1000
+leecher70$dlspeed <- leecher70$dlspeed*8/1000
+leecher71$dlspeed <- leecher71$dlspeed*8/1000
+leecher72$dlspeed <- leecher72$dlspeed*8/1000
+leecher73$dlspeed <- leecher73$dlspeed*8/1000
+leecher74$dlspeed <- leecher74$dlspeed*8/1000
+leecher75$dlspeed <- leecher75$dlspeed*8/1000
+leecher76$dlspeed <- leecher76$dlspeed*8/1000
+leecher77$dlspeed <- leecher77$dlspeed*8/1000
+leecher78$dlspeed <- leecher78$dlspeed*8/1000
+leecher79$dlspeed <- leecher79$dlspeed*8/1000
+leecher80$dlspeed <- leecher80$dlspeed*8/1000
+leecher81$dlspeed <- leecher81$dlspeed*8/1000
+leecher82$dlspeed <- leecher82$dlspeed*8/1000
+leecher83$dlspeed <- leecher83$dlspeed*8/1000
+leecher84$dlspeed <- leecher84$dlspeed*8/1000
+leecher85$dlspeed <- leecher85$dlspeed*8/1000
+leecher86$dlspeed <- leecher86$dlspeed*8/1000
+leecher87$dlspeed <- leecher87$dlspeed*8/1000
+leecher88$dlspeed <- leecher88$dlspeed*8/1000
+leecher89$dlspeed <- leecher89$dlspeed*8/1000
+
+# plot dlspeed-percent data
+p <- ggplot() + 
+geom_point(aes(x=leecher01$percent, y=leecher01$dlspeed, label="Leecher 01"), size=1) +
+geom_point(aes(x=leecher02$percent, y=leecher02$dlspeed, label="Leecher 02"), size=1) +
+geom_point(aes(x=leecher03$percent, y=leecher03$dlspeed, label="Leecher 03"), size=1) +
+geom_point(aes(x=leecher04$percent, y=leecher04$dlspeed, label="Leecher 04"), size=1) +
+geom_point(aes(x=leecher05$percent, y=leecher05$dlspeed, label="Leecher 05"), size=1) +
+geom_point(aes(x=leecher06$percent, y=leecher06$dlspeed, label="Leecher 06"), size=1) +
+geom_point(aes(x=leecher07$percent, y=leecher07$dlspeed, label="Leecher 07"), size=1) +
+geom_point(aes(x=leecher08$percent, y=leecher08$dlspeed, label="Leecher 08"), size=1) +
+geom_point(aes(x=leecher09$percent, y=leecher09$dlspeed, label="Leecher 09"), size=1) +
+geom_point(aes(x=leecher10$percent, y=leecher10$dlspeed, label="Leecher 10"), size=1) +
+geom_point(aes(x=leecher11$percent, y=leecher11$dlspeed, label="Leecher 11"), size=1) +
+geom_point(aes(x=leecher12$percent, y=leecher12$dlspeed, label="Leecher 12"), size=1) +
+geom_point(aes(x=leecher13$percent, y=leecher13$dlspeed, label="Leecher 13"), size=1) +
+geom_point(aes(x=leecher14$percent, y=leecher14$dlspeed, label="Leecher 14"), size=1) +
+geom_point(aes(x=leecher15$percent, y=leecher15$dlspeed, label="Leecher 15"), size=1) +
+geom_point(aes(x=leecher16$percent, y=leecher16$dlspeed, label="Leecher 16"), size=1) +
+geom_point(aes(x=leecher17$percent, y=leecher17$dlspeed, label="Leecher 17"), size=1) +
+geom_point(aes(x=leecher18$percent, y=leecher18$dlspeed, label="Leecher 18"), size=1) +
+geom_point(aes(x=leecher19$percent, y=leecher19$dlspeed, label="Leecher 19"), size=1) +
+geom_point(aes(x=leecher20$percent, y=leecher20$dlspeed, label="Leecher 20"), size=1) +
+geom_point(aes(x=leecher21$percent, y=leecher21$dlspeed, label="Leecher 21"), size=1) +
+geom_point(aes(x=leecher22$percent, y=leecher22$dlspeed, label="Leecher 22"), size=1) +
+geom_point(aes(x=leecher23$percent, y=leecher23$dlspeed, label="Leecher 23"), size=1) +
+geom_point(aes(x=leecher24$percent, y=leecher24$dlspeed, label="Leecher 24"), size=1) +
+geom_point(aes(x=leecher25$percent, y=leecher25$dlspeed, label="Leecher 25"), size=1) +
+geom_point(aes(x=leecher26$percent, y=leecher26$dlspeed, label="Leecher 26"), size=1) +
+geom_point(aes(x=leecher27$percent, y=leecher27$dlspeed, label="Leecher 27"), size=1) +
+geom_point(aes(x=leecher28$percent, y=leecher28$dlspeed, label="Leecher 28"), size=1) +
+geom_point(aes(x=leecher29$percent, y=leecher29$dlspeed, label="Leecher 29"), size=1) +
+geom_point(aes(x=leecher30$percent, y=leecher30$dlspeed, label="Leecher 30"), size=1) +
+geom_point(aes(x=leecher31$percent, y=leecher31$dlspeed, label="Leecher 31"), size=1) +
+geom_point(aes(x=leecher32$percent, y=leecher32$dlspeed, label="Leecher 32"), size=1) +
+geom_point(aes(x=leecher33$percent, y=leecher33$dlspeed, label="Leecher 33"), size=1) +
+geom_point(aes(x=leecher34$percent, y=leecher34$dlspeed, label="Leecher 34"), size=1) +
+geom_point(aes(x=leecher35$percent, y=leecher35$dlspeed, label="Leecher 35"), size=1) +
+geom_point(aes(x=leecher36$percent, y=leecher36$dlspeed, label="Leecher 36"), size=1) +
+geom_point(aes(x=leecher37$percent, y=leecher37$dlspeed, label="Leecher 37"), size=1) +
+geom_point(aes(x=leecher38$percent, y=leecher38$dlspeed, label="Leecher 38"), size=1) +
+geom_point(aes(x=leecher39$percent, y=leecher39$dlspeed, label="Leecher 39"), size=1) +
+geom_point(aes(x=leecher40$percent, y=leecher40$dlspeed, label="Leecher 40"), size=1) +
+geom_point(aes(x=leecher41$percent, y=leecher41$dlspeed, label="Leecher 41"), size=1) +
+geom_point(aes(x=leecher42$percent, y=leecher42$dlspeed, label="Leecher 42"), size=1) +
+geom_point(aes(x=leecher43$percent, y=leecher43$dlspeed, label="Leecher 43"), size=1) +
+geom_point(aes(x=leecher44$percent, y=leecher44$dlspeed, label="Leecher 44"), size=1) +
+geom_point(aes(x=leecher45$percent, y=leecher45$dlspeed, label="Leecher 45"), size=1) +
+geom_point(aes(x=leecher46$percent, y=leecher46$dlspeed, label="Leecher 46"), size=1) +
+geom_point(aes(x=leecher47$percent, y=leecher47$dlspeed, label="Leecher 47"), size=1) +
+geom_point(aes(x=leecher48$percent, y=leecher48$dlspeed, label="Leecher 48"), size=1) +
+geom_point(aes(x=leecher49$percent, y=leecher49$dlspeed, label="Leecher 49"), size=1) +
+geom_point(aes(x=leecher50$percent, y=leecher50$dlspeed, label="Leecher 50"), size=1) +
+geom_point(aes(x=leecher51$percent, y=leecher51$dlspeed, label="Leecher 51"), size=1) +
+geom_point(aes(x=leecher52$percent, y=leecher52$dlspeed, label="Leecher 52"), size=1) +
+geom_point(aes(x=leecher53$percent, y=leecher53$dlspeed, label="Leecher 53"), size=1) +
+geom_point(aes(x=leecher54$percent, y=leecher54$dlspeed, label="Leecher 54"), size=1) +
+geom_point(aes(x=leecher55$percent, y=leecher55$dlspeed, label="Leecher 55"), size=1) +
+geom_point(aes(x=leecher56$percent, y=leecher56$dlspeed, label="Leecher 56"), size=1) +
+geom_point(aes(x=leecher57$percent, y=leecher57$dlspeed, label="Leecher 57"), size=1) +
+geom_point(aes(x=leecher58$percent, y=leecher58$dlspeed, label="Leecher 58"), size=1) +
+geom_point(aes(x=leecher59$percent, y=leecher59$dlspeed, label="Leecher 59"), size=1) +
+geom_point(aes(x=leecher60$percent, y=leecher60$dlspeed, label="Leecher 60"), size=1) +
+geom_point(aes(x=leecher61$percent, y=leecher61$dlspeed, label="Leecher 61"), size=1) +
+geom_point(aes(x=leecher62$percent, y=leecher62$dlspeed, label="Leecher 62"), size=1) +
+geom_point(aes(x=leecher63$percent, y=leecher63$dlspeed, label="Leecher 63"), size=1) +
+geom_point(aes(x=leecher64$percent, y=leecher64$dlspeed, label="Leecher 64"), size=1) +
+geom_point(aes(x=leecher65$percent, y=leecher65$dlspeed, label="Leecher 65"), size=1) +
+geom_point(aes(x=leecher66$percent, y=leecher66$dlspeed, label="Leecher 66"), size=1) +
+geom_point(aes(x=leecher67$percent, y=leecher67$dlspeed, label="Leecher 67"), size=1) +
+geom_point(aes(x=leecher68$percent, y=leecher68$dlspeed, label="Leecher 68"), size=1) +
+geom_point(aes(x=leecher69$percent, y=leecher69$dlspeed, label="Leecher 69"), size=1) +
+geom_point(aes(x=leecher70$percent, y=leecher70$dlspeed, label="Leecher 70"), size=1) +
+geom_point(aes(x=leecher71$percent, y=leecher71$dlspeed, label="Leecher 71"), size=1) +
+geom_point(aes(x=leecher72$percent, y=leecher72$dlspeed, label="Leecher 72"), size=1) +
+geom_point(aes(x=leecher73$percent, y=leecher73$dlspeed, label="Leecher 73"), size=1) +
+geom_point(aes(x=leecher74$percent, y=leecher74$dlspeed, label="Leecher 74"), size=1) +
+geom_point(aes(x=leecher75$percent, y=leecher75$dlspeed, label="Leecher 75"), size=1) +
+geom_point(aes(x=leecher76$percent, y=leecher76$dlspeed, label="Leecher 76"), size=1) +
+geom_point(aes(x=leecher77$percent, y=leecher77$dlspeed, label="Leecher 77"), size=1) +
+geom_point(aes(x=leecher78$percent, y=leecher78$dlspeed, label="Leecher 78"), size=1) +
+geom_point(aes(x=leecher79$percent, y=leecher79$dlspeed, label="Leecher 79"), size=1) +
+geom_point(aes(x=leecher80$percent, y=leecher80$dlspeed, label="Leecher 80"), size=1) +
+geom_point(aes(x=leecher81$percent, y=leecher81$dlspeed, label="Leecher 81"), size=1) +
+geom_point(aes(x=leecher82$percent, y=leecher82$dlspeed, label="Leecher 82"), size=1) +
+geom_point(aes(x=leecher83$percent, y=leecher83$dlspeed, label="Leecher 83"), size=1) +
+geom_point(aes(x=leecher84$percent, y=leecher84$dlspeed, label="Leecher 84"), size=1) +
+geom_point(aes(x=leecher85$percent, y=leecher85$dlspeed, label="Leecher 85"), size=1) +
+geom_point(aes(x=leecher86$percent, y=leecher86$dlspeed, label="Leecher 86"), size=1) +
+geom_point(aes(x=leecher87$percent, y=leecher87$dlspeed, label="Leecher 87"), size=1) +
+geom_point(aes(x=leecher88$percent, y=leecher88$dlspeed, label="Leecher 88"), size=1) +
+geom_point(aes(x=leecher89$percent, y=leecher89$dlspeed, label="Leecher 89"), 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-all: a test swarm (1 Seeder, 89 Leechers), all peers have an 8 Mbit/s upload BW limitation", sep="\n"))
+
+# plot data as an eps file
+postscript(paste(target_folder, "test-scenario-pre-post-nop--all-dlspeed-percent.eps", sep="/"))
+print(p)
+dev.off()
+
+# plot data as an png file
+png(paste(target_folder, "test-scenario-pre-post-nop--all-dlspeed-percent.png", sep="/"), width = 1280, height = 800)
+print(p)
+dev.off()
+
+
+
+# plot dlspeed-time data
+p <- ggplot() + 
+geom_point(aes(x=leecher01$percent, y=leecher01$dlspeed, label="Leecher 01"), size=1) +
+geom_point(aes(x=leecher02$percent, y=leecher02$dlspeed, label="Leecher 02"), size=1) +
+geom_point(aes(x=leecher03$percent, y=leecher03$dlspeed, label="Leecher 03"), size=1) +
+geom_point(aes(x=leecher04$percent, y=leecher04$dlspeed, label="Leecher 04"), size=1) +
+geom_point(aes(x=leecher05$percent, y=leecher05$dlspeed, label="Leecher 05"), size=1) +
+geom_point(aes(x=leecher06$percent, y=leecher06$dlspeed, label="Leecher 06"), size=1) +
+geom_point(aes(x=leecher07$percent, y=leecher07$dlspeed, label="Leecher 07"), size=1) +
+geom_point(aes(x=leecher08$percent, y=leecher08$dlspeed, label="Leecher 08"), size=1) +
+geom_point(aes(x=leecher09$percent, y=leecher09$dlspeed, label="Leecher 09"), size=1) +
+geom_point(aes(x=leecher10$percent, y=leecher10$dlspeed, label="Leecher 10"), size=1) +
+geom_point(aes(x=leecher11$percent, y=leecher11$dlspeed, label="Leecher 11"), size=1) +
+geom_point(aes(x=leecher12$percent, y=leecher12$dlspeed, label="Leecher 12"), size=1) +
+geom_point(aes(x=leecher13$percent, y=leecher13$dlspeed, label="Leecher 13"), size=1) +
+geom_point(aes(x=leecher14$percent, y=leecher14$dlspeed, label="Leecher 14"), size=1) +
+geom_point(aes(x=leecher15$percent, y=leecher15$dlspeed, label="Leecher 15"), size=1) +
+geom_point(aes(x=leecher16$percent, y=leecher16$dlspeed, label="Leecher 16"), size=1) +
+geom_point(aes(x=leecher17$percent, y=leecher17$dlspeed, label="Leecher 17"), size=1) +
+geom_point(aes(x=leecher18$percent, y=leecher18$dlspeed, label="Leecher 18"), size=1) +
+geom_point(aes(x=leecher19$percent, y=leecher19$dlspeed, label="Leecher 19"), size=1) +
+geom_point(aes(x=leecher20$percent, y=leecher20$dlspeed, label="Leecher 20"), size=1) +
+geom_point(aes(x=leecher21$percent, y=leecher21$dlspeed, label="Leecher 21"), size=1) +
+geom_point(aes(x=leecher22$percent, y=leecher22$dlspeed, label="Leecher 22"), size=1) +
+geom_point(aes(x=leecher23$percent, y=leecher23$dlspeed, label="Leecher 23"), size=1) +
+geom_point(aes(x=leecher24$percent, y=leecher24$dlspeed, label="Leecher 24"), size=1) +
+geom_point(aes(x=leecher25$percent, y=leecher25$dlspeed, label="Leecher 25"), size=1) +
+geom_point(aes(x=leecher26$percent, y=leecher26$dlspeed, label="Leecher 26"), size=1) +
+geom_point(aes(x=leecher27$percent, y=leecher27$dlspeed, label="Leecher 27"), size=1) +
+geom_point(aes(x=leecher28$percent, y=leecher28$dlspeed, label="Leecher 28"), size=1) +
+geom_point(aes(x=leecher29$percent, y=leecher29$dlspeed, label="Leecher 29"), size=1) +
+geom_point(aes(x=leecher30$percent, y=leecher30$dlspeed, label="Leecher 30"), size=1) +
+geom_point(aes(x=leecher31$percent, y=leecher31$dlspeed, label="Leecher 31"), size=1) +
+geom_point(aes(x=leecher32$percent, y=leecher32$dlspeed, label="Leecher 32"), size=1) +
+geom_point(aes(x=leecher33$percent, y=leecher33$dlspeed, label="Leecher 33"), size=1) +
+geom_point(aes(x=leecher34$percent, y=leecher34$dlspeed, label="Leecher 34"), size=1) +
+geom_point(aes(x=leecher35$percent, y=leecher35$dlspeed, label="Leecher 35"), size=1) +
+geom_point(aes(x=leecher36$percent, y=leecher36$dlspeed, label="Leecher 36"), size=1) +
+geom_point(aes(x=leecher37$percent, y=leecher37$dlspeed, label="Leecher 37"), size=1) +
+geom_point(aes(x=leecher38$percent, y=leecher38$dlspeed, label="Leecher 38"), size=1) +
+geom_point(aes(x=leecher39$percent, y=leecher39$dlspeed, label="Leecher 39"), size=1) +
+geom_point(aes(x=leecher40$percent, y=leecher40$dlspeed, label="Leecher 40"), size=1) +
+geom_point(aes(x=leecher41$percent, y=leecher41$dlspeed, label="Leecher 41"), size=1) +
+geom_point(aes(x=leecher42$percent, y=leecher42$dlspeed, label="Leecher 42"), size=1) +
+geom_point(aes(x=leecher43$percent, y=leecher43$dlspeed, label="Leecher 43"), size=1) +
+geom_point(aes(x=leecher44$percent, y=leecher44$dlspeed, label="Leecher 44"), size=1) +
+geom_point(aes(x=leecher45$percent, y=leecher45$dlspeed, label="Leecher 45"), size=1) +
+geom_point(aes(x=leecher46$percent, y=leecher46$dlspeed, label="Leecher 46"), size=1) +
+geom_point(aes(x=leecher47$percent, y=leecher47$dlspeed, label="Leecher 47"), size=1) +
+geom_point(aes(x=leecher48$percent, y=leecher48$dlspeed, label="Leecher 48"), size=1) +
+geom_point(aes(x=leecher49$percent, y=leecher49$dlspeed, label="Leecher 49"), size=1) +
+geom_point(aes(x=leecher50$percent, y=leecher50$dlspeed, label="Leecher 50"), size=1) +
+geom_point(aes(x=leecher51$percent, y=leecher51$dlspeed, label="Leecher 51"), size=1) +
+geom_point(aes(x=leecher52$percent, y=leecher52$dlspeed, label="Leecher 52"), size=1) +
+geom_point(aes(x=leecher53$percent, y=leecher53$dlspeed, label="Leecher 53"), size=1) +
+geom_point(aes(x=leecher54$percent, y=leecher54$dlspeed, label="Leecher 54"), size=1) +
+geom_point(aes(x=leecher55$percent, y=leecher55$dlspeed, label="Leecher 55"), size=1) +
+geom_point(aes(x=leecher56$percent, y=leecher56$dlspeed, label="Leecher 56"), size=1) +
+geom_point(aes(x=leecher57$percent, y=leecher57$dlspeed, label="Leecher 57"), size=1) +
+geom_point(aes(x=leecher58$percent, y=leecher58$dlspeed, label="Leecher 58"), size=1) +
+geom_point(aes(x=leecher59$percent, y=leecher59$dlspeed, label="Leecher 59"), size=1) +
+geom_point(aes(x=leecher60$percent, y=leecher60$dlspeed, label="Leecher 60"), size=1) +
+geom_point(aes(x=leecher61$percent, y=leecher61$dlspeed, label="Leecher 61"), size=1) +
+geom_point(aes(x=leecher62$percent, y=leecher62$dlspeed, label="Leecher 62"), size=1) +
+geom_point(aes(x=leecher63$percent, y=leecher63$dlspeed, label="Leecher 63"), size=1) +
+geom_point(aes(x=leecher64$percent, y=leecher64$dlspeed, label="Leecher 64"), size=1) +
+geom_point(aes(x=leecher65$percent, y=leecher65$dlspeed, label="Leecher 65"), size=1) +
+geom_point(aes(x=leecher66$percent, y=leecher66$dlspeed, label="Leecher 66"), size=1) +
+geom_point(aes(x=leecher67$percent, y=leecher67$dlspeed, label="Leecher 67"), size=1) +
+geom_point(aes(x=leecher68$percent, y=leecher68$dlspeed, label="Leecher 68"), size=1) +
+geom_point(aes(x=leecher69$percent, y=leecher69$dlspeed, label="Leecher 69"), size=1) +
+geom_point(aes(x=leecher70$percent, y=leecher70$dlspeed, label="Leecher 70"), size=1) +
+geom_point(aes(x=leecher71$percent, y=leecher71$dlspeed, label="Leecher 71"), size=1) +
+geom_point(aes(x=leecher72$percent, y=leecher72$dlspeed, label="Leecher 72"), size=1) +
+geom_point(aes(x=leecher73$percent, y=leecher73$dlspeed, label="Leecher 73"), size=1) +
+geom_point(aes(x=leecher74$percent, y=leecher74$dlspeed, label="Leecher 74"), size=1) +
+geom_point(aes(x=leecher75$percent, y=leecher75$dlspeed, label="Leecher 75"), size=1) +
+geom_point(aes(x=leecher76$percent, y=leecher76$dlspeed, label="Leecher 76"), size=1) +
+geom_point(aes(x=leecher77$percent, y=leecher77$dlspeed, label="Leecher 77"), size=1) +
+geom_point(aes(x=leecher78$percent, y=leecher78$dlspeed, label="Leecher 78"), size=1) +
+geom_point(aes(x=leecher79$percent, y=leecher79$dlspeed, label="Leecher 79"), size=1) +
+geom_point(aes(x=leecher80$percent, y=leecher80$dlspeed, label="Leecher 80"), size=1) +
+geom_point(aes(x=leecher81$percent, y=leecher81$dlspeed, label="Leecher 81"), size=1) +
+geom_point(aes(x=leecher82$percent, y=leecher82$dlspeed, label="Leecher 82"), size=1) +
+geom_point(aes(x=leecher83$percent, y=leecher83$dlspeed, label="Leecher 83"), size=1) +
+geom_point(aes(x=leecher84$percent, y=leecher84$dlspeed, label="Leecher 84"), size=1) +
+geom_point(aes(x=leecher85$percent, y=leecher85$dlspeed, label="Leecher 85"), size=1) +
+geom_point(aes(x=leecher86$percent, y=leecher86$dlspeed, label="Leecher 86"), size=1) +
+geom_point(aes(x=leecher87$percent, y=leecher87$dlspeed, label="Leecher 87"), size=1) +
+geom_point(aes(x=leecher88$percent, y=leecher88$dlspeed, label="Leecher 88"), size=1) +
+geom_point(aes(x=leecher89$percent, y=leecher89$dlspeed, label="Leecher 89"), 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, 8 Leechers), all peers have an 8 Mbit/s upload BW limitation", 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()