UT P2P库
UT P2P库,目前版本是2,是基于UDP多对多可靠传输编写的一个P2P库,它采纳了BT协议的分块传输方法,吸收了标准FTP协议中主动和被动连接模式以及精简指令,借鉴了Emule的资源文件连接的HASH生成方式,综合各种优点后,在UT1.x版本基础上,重新开发的P2P库,它的上层和1.x版本的UT协议完全兼容.
UT 2.x版的技术参数如下:
网络连接: UDP 单端口 多对多 虚拟可靠连接 [双向传输]
最大支持文件大小: 1字节到 1980 TB(1TB=1024GB)
最大支持文件名长度: 200个字符 [UTF8 ,将来可以根据需要放宽]
最大主动连接数量: 32767 [单连接 双通道]
最大被动连接数量: 32767 [单连接 双通道]
传输协议: UT 2.0 精简指令 分块传输
迷你FTP服务器: 内带 支持RFC 959标准中基本指令
编码: UTF8
线程数量: 2
每虚拟连接缓冲包数量: 5 -- 12 [默认自动根据网络情况调整,可强制指定]
超时重发控制: 自动判断 60 -- 3200 [1/1000秒] 单次最多重发1包
IP协议: IPV4 或 IPV6
压缩传输: 目前支持标准ZIP压缩传输
退出通知: 支持
自动扩展组网: 支持IP交换 支持传输层自动组建无中心子网
支持语言: C C++ Pascal Delphi
或者其他可以支持本地编译和指针调用的语言,注意,不支持指针的语言无法调用
支持平台: windows xp 2003 vista win7 2008 以及WIN8
,包括32位和64位平台 ,目前已经完成了Linux平台的代码移植,因为缺少需求,因此没有进行测试.
授权: 内网 , IPV4环境开发运行和内部发行,不需要授权; 其他应用需要申请或者购买授权.
技术支持: 根据购买的授权说明提供对应的包括电话 邮件 或者 QQ等方式的技术支持.
--------------------------------------------------------------------------------
下图是ut传输于普通的http/ftp传输之间的对比:
左侧是典型的c/s下载结构,FTP下载[http也是如此],我们可以看到,下载同一个文件,例如
test.avi , 500mb大小,都是单纯的从服务器传输到客户端,服务器需要总输出
4*500mb,大约2gb流量.
假如服务器的输出带宽是10mbps,那么大约每台机器可以分配到2.5mbps,也就是250KB/S的平均下载速度.
作为对比,右边是我们的UT下载,假设文件大小,输出带宽等完全相同,我们可以看到,除了从服务器下载目标文件test.avi,正在下载的机器之间也实现了互连,彼此交换已经下载的完成部分,这样可以大大加快传输速度,并减少对服务器带宽的要求,假设下载的机器之间彼此也以10m带宽互连,那么理想情况下,服务器只需要输出500mb多一点的流量,而其余的流量就完全由下载机器间彼此交换来完成,也就是
服务器大约输出
500-1000mb流量,就可以让4台机器完成下载,对比上面的ftp/http下载,速度和效率的提升,带宽的节约都是非常明显的.
当然,10m互联在国内Internet上还不现实,目前普遍只有1m上传带宽,但是在校园网络,公司内网等环境,10m互联已经非常普遍,使用ut下载模式可以极大的提升传输效率.
|
|