网络协议之五(UDP)
来源:互联网 发布:玻璃胶 白色透明知乎 编辑:程序博客网 时间:2024/04/30 23:23
1. UDP特性
1.1. 字节流
1.2. 不可靠
1.3. 限定到端口,TCP端口和UDP端口是不同的端口系列,因此可以有相同的端口号。因此如果提供相同的协议,UDP和TCP一般用相同的端口号。
1.4. UDP校验和是可选的,TCP校验和则是必须的。
2. IP分片
2.1. 分片的原因是MTU,IP包通过链路层发送,因此最大包不能超过MTU。
2.2. 分片可以在发送主机上,也可以在中间路由器上。
2.3. 分片标识:是否还有分片字段,只有最后一个分片为0;片偏移字段;是否可以分片标志(可以用于发现路径MTU值,traceroute即用这个参数来发现路径MTU)。
2.4. 分片只要有一片丢失,则TCP就需要重传整个TCP包,因为如果分片发生在中间路由器,则主机将不知道分片是如何划分的。因此尽量不要分片。
2.5. 如果内核接收到的UDP数据长度比应用程序提供的缓冲区大,则一般会丢弃多余的数据。
3. UDP队列
UDP接收的数据会放入队列。由内核维护。
如果接收速度大于处理速度,则会发送ICMP源站抑制差错报文。
4. 端口有多个接收者
多个程序使用一个端口,如果是广播,则会给每个程序拷贝一份;如果是单播地址,则只给其中一个发送,具体给谁由实现决定。
- 网络协议之五(UDP)
- Linux内核--网络栈实现分析(五)--传输层之UDP协议(上)
- Linux内核--网络栈实现分析(五)--传输层之UDP协议(上)
- Linux内核--网络栈实现分析(五)--传输层之UDP协议(上)
- TCP/IP协议学习之五(UDP协议)
- 网络编程之UDP协议
- 网络编程之UDP协议
- 网络编程之UDP协议
- 网络编程之UDP协议
- 网络编程之UDP协议
- linux网络编程之TCP/IP基础(五):分析一帧基于UDP的TFTP协议帧
- linux网络编程之TCP/IP基础(五):分析一帧基于UDP的TFTP协议帧
- linux网络编程之TCP/IP基础(五):分析一帧基于UDP的TFTP协议帧
- linux网络编程之TCP/IP基础(五):分析一帧基于UDP的TFTP协议帧
- 网络协议之五(TCP)
- 网络协议(三)Socket编程之UDP
- 网络通信(udp协议)
- 网络协议(三)UDP
- 【九度】题目1419:文献排序
- TCP连接中的TIME_WAIT状态
- PowerDesigner生成sql及说明文档
- 输入输出流(一)——格式控制细节探讨
- 大小写字母转化
- 网络协议之五(UDP)
- CCproxy代理服务器
- sort
- 移动uiView 缩放uiView+一个View实现不同子view的功能
- ASM和OS文件系统之间交互
- netfilter-libnetfilter_queue
- DRM hang causes frequent RAC Instances Reconfiguration (Doc ID 1528362.1)
- 1009Elevator
- java多线程里Thread类与Runnable接口的区别