1.UDP的特点
1.无连接
知道对端的IP和端口号就直接进行传输,不需要建立连接;
2.不可靠
没有任何安全机制,发送端发送数据报以后,如果因为网络故障该段无法发到对方,UDP协议层也不会 给应用层返回任何错误信息;
3.面向数据报
应用层交给UDP多长的报文,UDP原样发送,既不会拆分,也不会合并;
比如说发送端如果一次发送100字节,那么接收端也必须一次接收100字节,而不能循环接收10次,每次接收10个字节。同时UDP没有真正意义上的 发送缓冲区。发送的数据会直接交给内核,由内核将数据传给网络层协议 进行后续的传输动作; UDP具有接收缓冲区,但是这个接收缓冲区不能保证收到的UDP报的顺序和发送UDP报的顺序一 致;如果缓冲区满了,再到达的UDP数据就会被丢弃;
4.全双工通信
全双工通信代表不仅客户端与服务器之间可以同时互相发送数据
2.UDP的协议端口格式
其中的的16位UDP长度代表一个UDP数据包能发送的最大数据为2^16-1== 65535bit = =64kb, 其中的校验和是通过将每一个二进制位相加得到一个和,用于判断数据在传输途中是否丢失,校验和不正确数据一定出现问题,校验和正确却不一定能保证数据正确。因为可能出现两个二进制位,一个0->1,另一个1->0,那么其校验和也正确。