-
Delphi实现的UDP可靠传输代码
资源介绍
UDP安全传输(完整源码)
大家都知道UDP比TCP好用发送速度快很多,程序写起来也简单的多,可缺点也同样明显UDP容易丢包,而且不能自动重发也不能自动组包没有数据安全机制,发的包不能超过2K(INDY,NMUDP等控件都是这样)否则就出错。
可很多需求中又需要发送大量数据包并且需要保证速度(如语音和视频通讯或者点对点点播服务。)而且有些重要的数据不允许丢包这个时候就需要安全UDP了。
有朋友可能会说那你干嘛不用TCP?TCP不就是安全的UDP吗?
主要因为
1、TCP无法很好的穿透NAT,来进行点对点通讯。
2、通讯过程中需要某些重要的命令不丢失,TCP需要首先建立连接,每个包都需要确认。这样发送速度会慢不少。
所以偶需要一个安全的UDP可以发送任意大小包,可以保证某些重要的包不会丢失,并且可以轻松穿透NAT来进行点对点通讯。
网上四处寻找未果SO自己动手写了一个。具有以下功能(本类是站在前人的肩膀上实现,基类为偶稍加修改过的NMUDP)
1、自动分包组包
2、支持一次性发送任意大小的包
3、支持安全控制
4、根据丢包率和网速度动态控制发包速度(因时间的局限此功能未很好的实现)
5、对于用户透明的接口(开发人员不用关心实现细节可以和使用其它UDP控件一样简单的使用本类)
- 上一篇: 基于Delphi的简单udp协议编写
- 下一篇: dzdiocp(地质灾害的iocp控件)