jrollback – a platform independent backup solution
DESCRIPTION
JRollback – A Platform Independent Backup Solution. Aaron Steele. Project Motivation. Alice. Bob. 50+GB Free . 50+GB Free . Ultimate Project Objectives. Determine if a “friend”-based backup system is efficient enough to be feasible - PowerPoint PPT PresentationTRANSCRIPT
JRollback – A Platform Independent Backup Solution
Aaron Steele
Project Motivation
Alice Bob
50+GB Free
50+GB Free
Ultimate Project Objectives
Determine if a “friend”-based backup system is efficient enough to be feasible
Determine if UDP is useful in practice when used over the Internet
Create a platform-independent “friend”-based backup tool and compare it to other backup solutions
RDP vs TCPRDP – Reliable UDP (RFC-1151)Rollback has a homemade RDP libraryRDP should be faster in theory
Design decision….RDP or TCP?
Experiment to find out
Data Transfer Results
1MB 2MB 4MB 8MB0
50
100
150
200
250
300
350
Transfer Times
Min Average MaxFile Size
Seco
nds
Packet Loss Results
Comcast Notre Dame0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
UDP Packet Loss
MaxMin
% o
f Pa
cket
s Lo
st
Data Transfer Comparison
RDP DecisionAttribute the high packet loss to buffer bloat
and ISP traffic filtering
TCP performed better when ISPs filtered traffic
TCP performs better over a wireless network (results not shown)
We ultimately decided to switch to TCP
EvaluationTime to Backup
Measure how long it takes to backup an entire dataset
Measure how long to back up a single file.
Recovery TimeTime to recover an entire datasetTime to recover a single file
Repeat Experiments on LAN and InternetCompare to Rollback
LAN Experimental Setup100 Mbps
Single Files {10MB – 100MB}Large Datasets {100MB – 1 GB}
Each Experiment is repeated 5 times transferring data in each direction. (10 total)
LAN Backup Results
0 50 100 150 200 2500
10
20
30
40
50
60
Single File Backup
Linux WindowsFile Size (MB)
Bac
kup
Tim
e (s
ec)
LAN Backup Results
0 200 400 600 800 1000 12000
50
100
150
200
250
300
Dataset Backup
Linux WindowsData Set Size (MB)
Bac
kup
Tim
e(se
c)
LAN Recovery ResultsSingle File Recovery
Size(MB) Linux Windows Average Backup
10 2.35 4.011 2.6265
50 6.129 13.031 8.8289
100 15.337 27.884 20.5355
200 32.212 58.422 44.454
DataSet recovery
Size(MB) Linux Windows Average Backup
100 25.365 26.265 24.4625
200 50.342 49.986 49.2765
500 122.766 121.111 120.726
1000 260.443 244.333 249.31
Internet Experimental Setup
Single Files {10MB – 100MB}Large Datasets {100MB – 1 GB}
Each Experiment is repeated 5 times transferring data in each direction. (10 total)
1.1 Mbps
14 MbpsComcast Comcast
1.1 Mbps
14 MbpsIL I
N
Internet Backup Results
Dataset Backup (sec)Size(MB) Linux Windows Average
100 370.464 372.336 371.400
200 779.233 780.825 780.029
500 1944.334 1952.078 1948.206
1000 4083.101 4118.885 4100.993
Single File Backup (sec)Size (MB) Linux Windows Average
10 20.93 30.488 25.709
50 193.91 182.185 188.0475
100 389.892 387.07 388.481
200 774.734 783.911 784.734
Internet Recovery ResultsDataset Recovery
Size(MB) Linux Windows Backup Average100 375.226 378.655 371.4
200 790.663 801.203 780.029
500 1955.352 1957.227 1948.2061000 4150.651 4162.999 4100.993
Single File Recovery
Size (MB) Linux Windows Backup Average10 20.93 31.022 25.70950 193.91 181.663 188.0475
100 389.892 399.021 388.481200 790.212 765.544 779.3225
RollBack ExperimentsRollback contains RDP networking code
The code is not implemented in the latest release
Unable to perform a network backup with Rollback
To work around this a windows share was created to provide a reliable connection.
Measure the time t0 backup and recover (also repeated 10 times….by hand)
Rollback Comparison
0 50 100 150 200 2500
10
20
30
40
50
60
Single File Backup
LinuxWindowsRollback
File Size
Tim
e (s
ec)
Rollback Comparison
0 200 400 600 800 1000 12000
50
100
150
200
250
300
Dataset Backup
LinuxWindowsRollback
Dataset Size
Tim
e (s
ec)
Current Features & MoreScheduled BackupE-mail confirmation of Backup/Restore (gmail
compatible)
Open Source Project available at: code.google.com/p/selfstorage
Conclusions“Friend”-based backup is quite efficient and
feasible
RDP is not an ideal protocol for transferring data over the internet
JRollback can be used for an efficient backup and seems to perform on par with Rollback(which still lacks network functionality)
Questions?
Project IdeasDetecting Bufferbloat and routing traffic
away from it?
Detecting virtual machines through a secure processor?