其他分享
首页 > 其他分享> > 无连接运输:UDP

无连接运输:UDP

作者:互联网

多路复用和解复用与校验和是UDP唯一能做的事,运输层的协议必须做点什么,什么都没有就不需要这一层了。

为什么要使用UDP

既然有了可靠传输的TCP,为什么还要在udp之上来构件应用呢?

  1. 有效载荷大,TCP头部20Byte,UDP头部8B,相同的MTU下,传输的数据较多。
  2. 无需建立连接,时延小,直接就开始传输数据,不需要开头的三次握手,对于一个发送一次报文就能解决的应用,TCP握手的时延是不可以忽略的。
  3. 无连接的状态,两边的端系统不需要维持通信的状态,实现起来更加简单,资源占用小,且可以维持更多的通信。
  4. TCP有时会故意拖延发送的数据的时间,但是UDP不会,应用程序以什么样的速率交给它,他就怎么样发出去,整个过程可以由应用程序完全掌握。

报文结构

UDP数据校验和

image-20210523230226807

与IP头部字段中的校验和不同,它不只是对数据部分进行校验,还包括UDP的头部和伪首部,其中UDP长度为整个UDP的长度,17是0x11是UDP的协议号。校验的过程是16bit一组,不断累加,溢出16bit的部分截取出来再回滚相加。

标签:运输,UDP,报文,校验,TCP,头部,16bit,连接
来源: https://www.cnblogs.com/yiwei-jun/p/14802871.html