内容简介:【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】最新在实现udp方面的软件,有一些经验需要总结一下,以供日后参考。1、udp协议简单,共8个byte,分别是源端口、目的端口、长度、校验和。
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
最新在实现udp方面的软件,有一些经验需要总结一下,以供日后参考。
1、udp协议简单,共8个byte,分别是源端口、目的端口、长度、校验和。
2、udp没有超时重传、拥塞控制,所以单次传输的最大长度就是1个short字长。
3、udp可以绑定固定源端口,这是tcp没有办法做到的。
4、单次udp收到的报文就是你能处理的单次最大报文,不能像tcp一样循环接收。发包也是一样。
5、udp没有办法确认接收方是不是真的收到报文,如果需要自己添加ack机制。
6、udp发送的报文如果超过65536,必须分开发送,接收顺序不保证,可以自己实现序列号。
7、udp发送超过1480的报文,也会被ip自动分包。
8、udp比较适合视频、音频这种大数据量传输,即使丢失部分数据也可以接受。
9、udp比较适合一问一答模式,比如所有命令都是client发起,server只要及时处理就可以了。
注意:
学习udp最好的方式就是用 python 来学习,比如像这样,
ubuntu$ python
Python 2.7.13 (default, Dec 18 2016, 07:03:34)
[GCC 4.2.1 Compatible Apple LLVM 7.0.2 (clang-700.1.81)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import socket
>>> s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
>>> local=('0.0.0.0',10000)
>>> s.bind(local)
>>> remote=('0.0.0.0',20000)
>>> buffer='0123456789'
>>> s.sendto(buffer,remote)
10
>>> s.close()
>>>
以上所述就是小编给大家介绍的《随想录(udp经验总结)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Zen of CSS Design
Dave Shea、Molly E. Holzschlag / Peachpit Press / 2005-2-27 / USD 44.99
Proving once and for all that standards-compliant design does not equal dull design, this inspiring tome uses examples from the landmark CSS Zen Garden site as the foundation for discussions on how to......一起来看看 《The Zen of CSS Design》 这本书的介绍吧!
XML 在线格式化
在线 XML 格式化压缩工具
HEX CMYK 转换工具
HEX CMYK 互转工具