现如今,计算机网络的概念已经普及大众,互联网也给我们的生活带来了便利和活力。
作为一个软件开发者,说到计算机网络,自然会想到网络设备,网络通讯的概念,想到Berkeley套接字,TCP/IP协议细节。
今天开始介绍一种高性能的网络传输协议:UDT协议。
一 UDT协议是什么?
UDT是一种基于UDP的互联网数据传输协议。
UDT的主要目的是支持高速广域网上的海量数据传输,而互联网上的标准数据传输协议TCP在高带宽长距离网络上性能很差。
UDT建于UDP之上,并引入新的拥塞控制和数据可靠性控制机制。
UDT是面向连接的双向的应用层协议。它同时支持可靠的数据流传输和部分可靠的数据报传输。 由于UDT完全在UDP上实现,它也可以应用在除了高速数据传输之外的其它应用领域,
例如点到点技术(P2P),防火墙穿透,多媒体数据传输等等。
二 设计目标
UDT主要用在小数量的bulk源共享富裕带宽的情况下,最典型的例子就是建立在光纤广域网上的网格计算,一些研究所在这样的网络上运行他们的分布式的数据密集程式,例如,远
程访问仪器、分布式数据挖掘和高分辨率的多媒体流。
UDT的主要目标是效率、公平、稳定。单个的或少量的UDT流应该利用任何高速连接提供的可用带宽,即使带宽变化的很剧烈。同时,任何并发的流必须公平地共享带宽,不依赖于不
同的带宽瓶颈、起始时间、RTT。稳定性需要包发送速率应该一直会聚可用带宽很快,并且必须避免拥塞碰撞。
UDT并不是在瓶颈带宽相对较小的和大量多元短文档流的情况下用来取代TCP的。
UDT主要作为TCP的朋友&