Cloud benchmarks

From SimpleWiki
Revision as of 08:27, 20 May 2015 by Idiliod (talk | contribs)
Jump to navigationJump to search

This page contains the software and data presented in:

  • Preliminary work: "Benchmarking Personal Cloud Storage" by Idilio Drago, Enrico Bocchi, Marco Mellia, Herman Slatman and Aiko Pras. In Proceedings of the 13th ACM Internet Measurement Conference. IMC 2013.

More results of our work on personal cloud storage can be found on this page and on this page.

The slides of the presentation can be downloaded from here.

Benchmarks Scripts

The scripts are written in python. All scripts require: netifaces, pcapy

How to execute the benchmarks

 ./ -i wlan0 --seed 123134 --bytes 10000 --test 3 -o /tmp/output/ --ftp --port 2121 --user "user_name" --passwd "password" --folder="."

Important remarks:

1 - The folder ftp://user:pass@server/folder/ must be in a synchronized folder of the storage tool.

2 - The file must not be in a synchronized folder, otherwise the .pyc files created at run-time will disturb the experiment.

3 - The folder /tmp/output/ must not be in a synchronized folder, for the same reasons as above.

4 - Disable as much processes as possible in the benchmarking machine. This will minimize external interference on the test.

5 - If the storage system is running on a virtual machine, make sure the host machine is powerful enough to support the load. Check also whether the virtual machine limit or shape the network traffic.


Some traffic traces that generated the results in the paper can be downloaded from these links:

Provider File Size
Amazon Cloud Drive 197M
Dropbox 88M
Google Drive 70M
Microsoft SkyDrive 69M
LaCie Wuala 63M

These traces, together with the scripts below, produce the results in Figure 7 of the paper. More details about this dataset can also be obtained in Chapter 5 of:

Post-processing the data

The benchmark scripts generate a pcap file per benchmark step. In order to produce the figures presented in the paper, the pcap files need to be post-processed. The scripts in the following are examples to generate Figure 7. The typical flows of each tool are isolated by means of lists of server IP addresses, and statistics are calculated according to heuristics to determine the start and the end of synchronization steps during the benchmarks.

Acceptable Use Policy

  • When writing a paper using software or data from this page, please cite:
   author        = {Idilio Drago and Enrico Bocchi and Marco Mellia and Herman Slatman and Aiko Pras},
   title         = {Benchmarking Personal Cloud Storage},
   booktitle     = {Proceedings of the 13th ACM Internet Measurement Conference},
   series        = {IMC'13},
   pages         = {205--212},
   year          = {2013}

Paper abstract

Personal cloud storage services are data-intensive applications already producing a significant share of Internet traffic. Several solutions offered by different companies attract more and more people. However, little is known about each service capabilities, architecture and - most of all - performance implications of design choices. This paper presents a methodology to study cloud storage services. We apply our methodology to compare 5 popular offers, revealing different system architectures and capabilities. The implications on performance of different designs are assessed executing a series of benchmarks. Our results show no clear winner, with all services suffering from some limitations or having potential for improvement. In some scenarios, the upload of the same file set can take seven times more, wasting twice as much capacity. Our methodology and results are useful thus as both benchmark and guideline for system design.


This work was partly funded by the Network of Excellence project Flamingo (ICT-318488) and the EU-IP project mPlane (n-318627). Both projects are supported by the European Commission under its Seventh Framework Programme.