建议看看Jon C.Snader的"高级TCP/IP编程",里面介绍的很详细!
解决方案 »
- 遍历查找树结构
- VC用UNICODE时编码写进注册表的数据是乱码
- 错误提示的求答2
- vc中好像有一个叫系统注册区??它是在哪的?谢先
- 请问在FileView视图下,怎么加文件到External Dependencies,谢谢
- 请教各位 高手关于一个发音程序的编写.使用声卡发出给定频率的声音.谢谢!
- 请问在dll中开始的线程(自己写的 也在该dll中)是否随着dll函数的结束而结束呢?
- 为什么没人回答我的问题??:(,请大家帮我看看,有关实现vc调用matlab的问题!!
- 如何得到文档模板类指针
- 高分请教:ADO调用存储过程,参数传递顺序导致数据类型转换错误DB_E_CANTCONVERTVALUE
- 关于打印的几个问题?
- 请问有什么好的C++好书可以介绍给我看的吗?请各位帮忙!
连接 无连接
稳定 不稳定
需资源多 资源少
简单点讲UDP把需要发送的包往网络上一扔就不管它了,主要用于一些突发的小数据包,比如OICQ;而TCP还要实现差错控制、流量控制等,主要用于持续的数据流,比如HTTP、FTP等协议。
不过,WEB看到的大部分是TCP
而,QICQ是UDP
对比以下救明白了
技术上讲,实现起来区别不大,tcp需要首先建立连接,而udp只要绑定端口发送就行,tcp如果建立连接以后,能够保证传送的数据包次序,而udp则不能保证数据包到达的先后次序,甚至会丢包,就这点而言,udp的客户端所要做的接收工作要更复杂(如接收文件等)
UDP-非可靠连接,会丢包,没有校验,速度快,无须握手过程
UDP则不存在这个问题,最多延迟大一点。UDP加重发机制是很可靠的。
其它的用udp都是很好用的,只是不能保证一定送到而已。
不过这种只是建立一个虚连接
其实本质上和TCP地连接是完全不同的
就是先走tcp的协议——以保证可靠,再走udp的协议——使得高效?