浅析UDP

Posted 3 ERROR(s)

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅析UDP相关的知识,希望对你有一定的参考价值。

文章目录

一、UDP协议格式

二、UDP特点

1.无连接
知道对端的IP和端口号就开始传输,不需要建立链接
2.不可靠
没有任何安全机制。发送端发送数据报之后,如果因为网络故障该段无法发送过去,UDP协议层也不会给应用层任何反馈信息。
3.面向数据报
应用层给UDP多长的报文,UDP原样发送,既不会拆分,也不会合并
4.缓冲区
UDP只有接受缓冲区没有发送缓冲区
UDP没有真正意义上的发送缓冲区,发送的数据直接交给内核,由内核将数据传给网络层协议
UDP具有接收缓冲区,但是这个接收缓冲区不能保证收到的UDP报的顺序和发送UDP报的顺序一致,如果缓冲区满了后面的数据会被抛弃。
5.大小有限
UDP协议首部定义了他的大小最大是16位,也就是64k

三、UDP校验和

为什么要校验和?
网络上的数据本质都是一些0,1的比特流,这些比特流是由光电信号来表示的,如果在传输过程中出现地球磁场或者太阳风暴等干扰,可能会出现 “比特翻转” 现象,所以我们就要进行校验和来验证数据是否收到干扰。

1.crc循环冗余校验

以字节为单位,取出数据进行累加,如果结果溢出则后面的就不要了,传输数据的时候把crc也一起传过去。
接收方也同样拥有这样的算法,接收到数据之后再次进行计算crc和传过来的crc做对比。
注意:
两次的crc一样并不能保证两次的数据相同,但是两次的crc不一样数据一定不同

2.MD5校验

本质上是针对数据进行一系列的数学变化它是一种非对称加密
特点

  • 定长:无论输入的字符串多长,得到的结果都是一个固定长度
  • 分散:输入的字符串哪怕差一点点,他的结果会差的特别多(作为哈希算法的核心)
  • 不可逆:根据目前计算机的算力MD5是不可逆的,等到量子计算机出来就不一定了。

以上是关于浅析UDP的主要内容,如果未能解决你的问题,请参考以下文章

浅析UDP

浅析UDP

SOCKET, TCP/UDP, HTTP, FTP 浅析

浅析TCP协议与UDP协议

浅析TCP协议与UDP协议

浅析TCP协议与UDP协议