关键字:
UDT协议
UDX协议
UDP可靠文件传输
UDP小包发送
UDP往返时间
RTT
经过长时间的摸索和实践发现一个新问题.目前现在主流算法上,对一流量计算都是假定每个包是一个最小单元MSS.
在这个基础上,进行传输计算时,那么流量在很多时候,是不准确的.
比如,UDT中计算
m_dPktSndPeriod = m_dCWndSize / (m_iRTT + m_iRCInterval);
这里m_dCWndSize 就是发送窗口的大小,如果其中每个包都是以MSS来计算的话,那么,这个算法是无错的.
而有些应用他发的包很小,比如一些命令,在竟技游戏中,一个操作可能只有几个字节,象视频方面,BPI侦都有可能,小于MSS,那么,这个算出来的流量和实际是有很大区别的.
而UDT中CCC算法没有提供反馈这个信息的接口.换句话说,UDT是不适合这种应用的收发的.
在早期 UDX版本,也同样存在这样的问题,一切假定也是MSS,
尽管在窄带下拥塞控制方面,已经领先UDT,但是,同样和UDT有这样的问题.最近UDX对这方面进行了改进,完全支持小包发送,发送效率不受引响.所以,UDX不管是大包小包,还是混合包,都会正确的计算流量从而最大利用代宽,适合更多的应用.