可靠性udp传输大文件

高级计算机网络大作业-可靠性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:
可靠性udp传输大文件_第1张图片level=10:
可靠性udp传输大文件_第2张图片level=22:
可靠性udp传输大文件_第3张图片

0.1G文件(延迟100ms、丢包1%)

level=3:
可靠性udp传输大文件_第4张图片level=10:
可靠性udp传输大文件_第5张图片level=22:
可靠性udp传输大文件_第6张图片

0.01G文件(延迟100ms、丢包1%)

level=3:
可靠性udp传输大文件_第7张图片level=10:
可靠性udp传输大文件_第8张图片level=22:
可靠性udp传输大文件_第9张图片

多线程lzma压缩

1G文件(延迟100ms、丢包1%)

preset=6:
可靠性udp传输大文件_第10张图片可以看到这时md5检测值为False,通过结合下面实验可以判断,当lzma压缩大文件时文件受损,且压缩时间长,如下图:
ct16preset=9:
ct9直接杀死进程,无法压缩

0.1G文件(延迟100ms、丢包1%)

preset=6:
可靠性udp传输大文件_第11张图片preset=9:
可靠性udp传输大文件_第12张图片

0.01G文件(延迟100ms、丢包1%)

preset=6:
可靠性udp传输大文件_第13张图片preset=9:
可靠性udp传输大文件_第14张图片
通过上面实现可以看出zstd压缩算法比多线程lzma算法效果较好,且在不同的情况下都能准确地传输文件数据。其中压缩等级level=22由于其他等级。

最佳窗口数量

size=10:
可靠性udp传输大文件_第15张图片size=50:
可靠性udp传输大文件_第16张图片size=80:
可靠性udp传输大文件_第17张图片size=100:
可靠性udp传输大文件_第18张图片size=200:
可靠性udp传输大文件_第19张图片
由上选择size=50作为最佳窗口。

你可能感兴趣的:(udp,网络,网络协议)