数据交换协议UDT-Sat的制作方法

文档序号:9870090阅读:528来源:国知局
数据交换协议UDT-Sat的制作方法
【技术领域】:
[0001] 本发明设及及一种数据交换模型,具体设及无法进行布线、必须使用无线或卫星 运样的环境中一个数据交换协议UDT-Sat。
【背景技术】:
[0002] 针对无法进行布线、必须使用无线或卫星运样的环境,我们设计实现了一个数据 交换协议UDT-Sat,该协议是实施在UDP (User Datagram Protocol, RFC768)协议之上的应 用层协议,完成应用层大容量数据块(或文件)的安全可靠稳定的传输。在传输的过程中, 每个大容量数据块(或文件)分割成若干个小的数据包,直接发生到接收端或者通过中间 节点转发到接收端,接收方收到数据后,将数据包组装成完整的原数据内容,UDT-Sat规定 了数据封装、路由和组装的规则。

【发明内容】

[0003] 本发明的目的在于提供数据交换协议UDT-Sat,它能提供端对端的流量控制和差 错控制,为数据的安全可靠传输提供了一个通道。UDT-Sat协议针对卫星通信环境的特点对 传输的效率进行了优化,使得能够获得比TCP更高的产出率,同时在地面网络中能够保持 局效。UDT-Sat使用基于滑动窗口的机制进行流量巧制,义用负反馈机制进行差错巧制。
[0004] 本发明采用W下技术方案:针对无法进行布线、必须使用无线或卫星运样的环境 中高延迟和高错误率(与有线相比)的数据交换模型,该协议是实施在UDP扣ser化tagram Protocol, RFC768)协议之上的应用层协议,完成应用层大容量数据块的安全可靠稳定的 传输。在传输的过程中,每个大容量数据块分割成若干个小的数据包,直接发生到接收端 或者通过中间节点转发到接收端,接收方收到数据后,将数据包组装成完整的原数据内容, UDT-Sat规定了数据封装、路由和组装的规则。 阳0化]UDT-Sat协议是一个应用层的协议,提供端对端的流量控制和差错控制,为数据的 安全可靠传输提供了一个通道。UDT-Sat协议针对卫星通信环境的特点对传输的效率进行 了优化,使得能够获得比TCP更高的产出率,同时在地面网络中能够保持高效。UDT-Sat使 用基于滑动窗口的机制进行流量控制,采用负反馈机制进行差错控制。
[0006] 滑动窗口描述了数据发送方的数据缓冲区中能够发送数据的大小,发送方发生的 数据不能超出运个范围,而当发送的数据没有被确认需要发送端进行重传。运个窗口称为 拥塞控制窗口 cwnd。窗口有W下S种变化方式:(1)窗口合犹:当窗口从左边向右边靠近的 时候,运种现象发生在数据被发送和确认的时候。(2)窗口张开:当窗口的右边沿向右边移 动的时候,运种现象发生在接受端处理了数据W后,发送端发送了更多的数据。(3)窗口收 缩:当窗口的右边沿向左边移动的时候,一般是发生拥塞W后缩减拥塞窗口所致。
[0007] 拥塞控制过程将根据网络的状况对拥塞控制窗口 Cwnd进行调整,使得尽量充分 利用网络资源但不会发生拥塞。拥塞控制的另一个重要的目标是能够保证多个连接的公平 性W及对其它协议的友好性。
[0008] UDT-Sat中需要计算两个重要的变量用于拥塞控制:网络带宽估计值和网络拥塞 状态。
[0009] 本发明具有W下有益效果:能提供端对端的流量控制和差错控制,为数据的安全 可靠传输提供了一个通道。UDT-Sat协议针对卫星通信环境的特点对传输的效率进行了优 化,使得能够获得比TCP更高的产出率,同时在地面网络中能够保持高效。
【附图说明】:
[0010] 为了易于说明,本发明有下述的具体实施及附图作W详细描述。 1 ] 图1是本发明中SNACK缓存状态图; 阳01引 图2是本发明中SNACK状态图。
【具体实施方式】:
[0013] 本【具体实施方式】采用W下技术方案:拥塞控制过程将根据网络的状况对拥塞控制 窗口 Cwnd进行调整,使得尽量充分利用网络资源但不会发生拥塞。拥塞控制的另一个重要 的目标是能够保证多个连接的公平性W及对其它协议的友好性。
[0014] UDT-Sat中需要计算两个重要的变量用于拥塞控制:网络带宽估计值和网络拥塞 状态。 阳〇1引 a)估计网络带宽:
[0016] UDT-Sat中的带宽估计在接收端进行。带宽估计值表示了当前能够达到的产出 率,可W用在判断拥塞状态算法中,也用于拥塞控制中。由于在数据包传递的方向上,瓶 颈链路基本处于饱和状态,接收端接收到数据包的间隔更接近于瓶颈链路传输一个数据包 所需要的时间,因此可W用来更准确的估计链路带宽。
[0017] 设在接收端tk时刻到达的数据包携带的数据量为dk,则有实时带宽估计值bk和使 用指数平滑得到带宽估计值BWE分别为:
[0020] a为平滑因子。 阳OW b)分辨网络拥塞:
[0022] 应用层协议无法直接获取网络是否发生拥塞或误码,不能区分分组的拥塞丢失和 随机丢失,无法直接判断拥塞状态。UDT-Sat协议通过观测RlT的变化来做近似的判断。网 络从空闲到饱和再到发生拥塞,在路径上传递数据包的往返时间RlT需要经历一个从恒定 不变到慢慢增加的过程。最小的RlT -般记为BaseRTT,它完全由通信节点的距离来决定, 数据包在传递过程中不发生延迟。
[0023] UDP Sat直接计算在瓶颈路径上积累的数据包的个数来衡量拥塞的程度:
[0024] N = B肥* 巧TT - BaseRTT) = Diff*BaseRTT
[00巧]如果N大于等于预设值0,则认为网络处于拥塞状态,此时发生的丢包认为是拥 塞丢包,否则认为网络尚未饱和,此时发生的丢包认为是误码造成的。
[00%] C)拥塞控制算法:
[0027] 拥塞控制过程中,除了使用估计的带宽值和拥塞状态值,还需要计算RTT。协议中 在返回的ACK中复制了发送数据报文的时间戳,运样当确认数据的ACK到达时便可m十算 往返时间,由此可W获得最小往返时间RTTmin,同时可W计算平均RlT及其标准偏差W便 判断超时。
[0028] UDT-Sat的拥塞控制算法使用被称为"线性增加、加速递减"(AIMD,Additive Increase and Multiplicative Decrease)的方式更新拥塞窗口 cwnd。其中包括互相关联 的四个过程:慢启动、拥塞避免、快速重传和快速恢复。
[0029] 慢启动:
[0030] 慢启动(Slow-Start,S巧算法用于在连接建立初期使UDT快速增大cwnd,达到网 络容量极限。源端使用状
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1