高级计算机网络大作业-可靠性udp传输大文件
- 实验数据
- zstd压缩
- 1G文件(延迟100ms、丢包1%)
- 0.1G文件(延迟100ms、丢包1%)
- 0.01G文件(延迟100ms、丢包1%)
- 多线程lzma压缩
- 1G文件(延迟100ms、丢包1%)
- 0.1G文件(延迟100ms、丢包1%)
- 0.01G文件(延迟100ms、丢包1%)
- 最佳窗口数量
实验数据
代码链接:https://github.com/whisperLiang/UDP_for_RDT.git
zstd压缩
1G文件(延迟100ms、丢包1%)
level=3:
level=10:
level=22:
0.1G文件(延迟100ms、丢包1%)
level=3:
level=10:
level=22:
0.01G文件(延迟100ms、丢包1%)
level=3:
level=10:
level=22:
多线程lzma压缩
1G文件(延迟100ms、丢包1%)
preset=6:
可以看到这时md5检测值为False,通过结合下面实验可以判断,当lzma压缩大文件时文件受损,且压缩时间长,如下图:
preset=9:
直接杀死进程,无法压缩
0.1G文件(延迟100ms、丢包1%)
preset=6:
preset=9:
0.01G文件(延迟100ms、丢包1%)
preset=6:
preset=9:
通过上面实现可以看出zstd压缩算法比多线程lzma算法效果较好,且在不同的情况下都能准确地传输文件数据。其中压缩等级level=22由于其他等级。
最佳窗口数量
size=10:
size=50:
size=80:
size=100:
size=200:
由上选择size=50作为最佳窗口。