推荐一个可靠UDP的开源项目,我用过了,效率比较高。

gunsand 2009-06-29 12:09:41
随着网络带宽时延产品(BDP)的增加,通常的TCP协议开始变的低效。这是因为它的AIMD(additive increase multiplicative decrease)算法彻底减少了TCP拥塞窗口,但不能快速的恢复可用带宽。理论上的流量分析表明TCP在BDP增加到很高的时候比较容易受包损失攻击。

另外,继承自TCP拥塞控制的不公平的RTT也成为在分布式数据密集程序中的严重问题。拥有不同RTT的并发TCP流将不公平地分享带宽。尽管在小的BDP网络中使用通常的TCP实现来相对平等的共享带宽,但在拥有大量BDP的网络中,通常的基于TCP的程序就必须承受严重的不公平的问题。这个RTT基于的算法严重的限制了其在广域网分布式计算的效率,例如:internet上的网格计算。

一直到今天,对标准的TCP的提高一直都不能在高BDP环境中效率和公平性方面达到满意的程度(特别是基于RTT的问题)。例如:TCP的修改,RFC1423(高性能扩展),RFC2018(SACK)、RFC2582(New Reno)、RFC2883(D-SACK)、和RFC2988(RTO计算)都或多或少的提高了点效率,但最根本的AIMD算法没有解决。HS TCP(RFC 3649)通过根本上改变TCP拥塞控制算法来在高BDP网络中获得高带宽利用率,但公平性问题仍然存在。

考虑到上面的背景,需要一种在高BDP网络支持高性能数据传输的传输协议。我们推荐一个应用程序级别的传输协议,叫UDT或基于UDP的数据传输协议并拥有用塞控制算法。

本文描述两个正交的部分,UDP协议和UDT拥塞控制算法。一个应用层级别的协议,位于UDP之上,使用其他的拥塞算法,然而这些本文中描述的算法也可以在其他协议中实现,例如:TCP。

一个协议的参考实现叫[UDT];详细的拥塞控制算法的性能分析在[GHG04]中可以找到。

下载点:
http://udt.sourceforge.net/
...全文
745 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
VTCP是虚拟TCP协yi缩写,它实现了UDP可靠传输协yi,UDP本来是一种不可靠的网络协yi,但在有些情况下UDP协yi可能会变得非常有用。因为UDP具有TCP所望尘莫及的速度优势。因此我们设计出了一种新的可靠UDP协yi(VTCP),自动实现UDP数据传输的可靠性。该项目始于2008年,在7年多的研制时间里,提出摆动G点理论与水桶理论,不断进化与提,VTCP有着显著的速度与实时性能,是制作视频传输,音频传输,IM通讯,文件传输极好的选择。 ============================================= 为什么选择VTCP? 1.标准化,VTCP的接口采用的是 BSD POSIX 标准接口模型,为你的应用跨平台移植奠定坚实的基础;同时程序员只要熟悉任何一种系统的socket编程,那么几乎不用学习新知识就可以立即上手。 2.便捷化,VTCP并提供应用层二次开发标准接口,比如QIO异步模型接口(开源),你无需了解QIO具体原理,直接可以通过添加回调处理代码的形式来完成你的工作。 3.速度,VTCP拥有极强的抗丢包,拥有100%满带宽传输能力,和TCP比较不只是快一点点,超乎寻常。 4.效率,VTCP结合IOCP技术和EPOLL技术优势发明了跨平台统一的QIO速异步接口,满足用户大规模数据量吞吐量要求。 5.稳定,VTCP编译代码精炼,稳定性从设计阶段就本身很注重,大量测试与应用是VTCP稳定的又一个保障。 6.跨平台,VTCP支持几乎所有操作系统平台,以及多种多样的语言环境,VC,VS,GCC,Delphi,Java,VB,甚至是国产 易语言 等等。
VTCP模块 版本 V1.1 2015年12月6日 1、去除常量库(Const.fnr) 2、去除死循环提示 3、减少其它的系统库引用 4、精简了代码, 修正若干BUG VTCP是虚拟TCP协yi缩写,它实现了UDP可靠传输协yi,UDP本来是一种不可靠的网络协yi,但在有些情况下UDP协yi可能会变得非常有用。因为UDP具有TCP所望尘莫及的速度优势。因此我们设计出了一种新的可靠UDP协yi(VTCP),自动实现UDP数据传输的可靠性。该项目始于2008年,在7年多的研制时间里,提出摆动G点理论与水桶理论,不断进化与提,VTCP有着显著的速度与实时性能,是制作视频传输,音频传输,IM通讯,文件传输极好的选择。 ============================================= 为什么选择VTCP? 1.标准化,VTCP的接口采用的是 BSD POSIX 标准接口模型,为你的应用跨平台移植奠定坚实的基础;同时程序员只要熟悉任何一种系统的socket编程,那么几乎不用学习新知识就可以立即上手。 2.便捷化,VTCP并提供应用层二次开发标准接口,比如QIO异步模型接口(开源),你无需了解QIO具体原理,直接可以通过添加回调处理代码的形式来完成你的工作。 3.速度,VTCP拥有极强的抗丢包,拥有100%满带宽传输能力,和TCP比较不只是快一点点,超乎寻常。 4.效率,VTCP结合IOCP技术和EPOLL技术优势发明了跨平台统一的QIO速异步接口,满足用户大规模数据量吞吐量要求。 5.稳定,VTCP编译代码精炼,稳定性从设计阶段就本身很注重,大量测试与应用是VTCP稳定的又一个保障。 6.跨平台,VTCP支持几乎所有操作系统平台,以及多种多样的语言环境,VC,VS,GCC,Delphi,Java,VB,甚至是国产易语言等等。

6,721

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 Google技术社区
社区管理员
  • Google技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧