最近在评论区收到不少朋友反应RaySync FTP文件传输的效果挺好,谢谢大家的鼓励。也有部分熟悉技术的同学希望介绍下原理,有部分同学咨询RaySync传输协议会不会是通过超量发包来达到快速传输,担心网络流量利用率低,比如net-speeder的双倍发包来抵抗网络丢包。
这篇文章从原理和实测数据两方面,给大家介绍一下RaySync 传输协议的有效带宽利用率。
1、RaySync 协议是在UDP协议之上,增加了RaySync的报文封装,完成了拥塞控制、报文确认、丢包重传等一系列完整的功能,可对比的实现包括UDT、QUIC、KCP。
2、RaySync传输协议重传机制参考了TCP的快速重传,但是做了全新的报文和确认机制设计,RaySync的重传机制可以确保在网络中丢失的报文在1个RTT时间就立刻得到重传,同时可以把由于网络乱序而触发的误重传率控制在1%以内,保障了网络带宽的充分有效利用。
3、RaySync 传输协议从电信行业IPSIGTRAN规范的SCTP传输协议也借鉴了一些功能设计,比如单个连接(connection)内部多流(stream)的特性,使RaySync 传输协议在两个端点之间多流传输时,无需建立多条连接,实时性得到了优化。
RaySync 传输协议测试方法和数据收集方法简介
带宽(Mbps) | 丢包率(%) | 时延(毫秒) | 测试文件大小(MB) | 实际网络发送流量(MB) | 传输完成时间(秒) | 网络带宽利用率 | 网络带宽有效利用率 |
---|---|---|---|---|---|---|---|
100 | 2% | 100 | 1000 | 1028 | 85 | 97% | 94% |
100 | 5% | 100 | 1000 | 1060 | 88 | 96.3% | 90.9% |
从上面实测数据看,RaySync 传输协议在高丢包和高时延环境中,可以保持良好的有效带宽利用率。丢失的数据报文重传是基于精准重传算法策略判断,并非net-speeder工具的暴力双倍发包。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。