UDP 用户数据报协议

一 先热个身

什么是运输层?从网络层来看,ip数据报的首部封装了两个对应主机的ip地址,也即是,通过网络层,我们可以知道是哪两个主机在发生通讯。但是在我们实际的生活中,并不是两个主机发生了通讯,我们更关注的应该是哪两个软件发生了通讯,更具体点,是哪两个进程发生了通讯。这个时候,运输层的作用就显示出来了。
运输层提供了应用程序间的逻辑通讯。运输层有两个重要的功能,也即是复用和分用。复用指的是,不同的应用程序可以通过同一个传输协议传输数据;分用指的是数据可以正确的发送到目的进程中。

二 言归正传

1 UDP的特点:
(1)UDP是无连接的。在发送数据前,不需要进行连接,发送数据结束后,不需要进行释放,所以udp的传输速度很快
(2)UDP尽最大的努力交付,但不保证可靠交付。
(3)UDP是面向报文的。UDP一次性交付一个完整的报文。发送方在接到应用层的报文后,就添加首部,然后就交付给IP层。不对原有报文进行处理;接收方在接到网络层的报文后,去除首部后就交给应用进程。在这个过程中我们可以看出,如果报文太长,ip层可能需要进行分片,会影响ip层的传输效率,而如果报文太短,那么加上首部后,会浪费传输资源,影响效率。
2 UDP的首部
udp的首部是有八个字节,四个字段,分别是:
(1)源端口:如果需要接收方反馈,并且受到回应的话,那么就需要制定,否则就传入0;
(2)目的端口:接收方的端口,在接收方传输层交付的时候需要用到,必须要传
(3)长度:UDP报文的长度,最小是8,也即是只有首部的报文;
(4)校验和:用于检测UDP用户数据在传输过程中是否出错,如果出错就丢弃。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 11.1 引言 UDP是一个简单的面向数据报的运输层协议:进程的每个输出操作都正好产生一个UDP数据报,并组装成一...
    张芳涛阅读 7,906评论 1 6
  • 1.介绍 UDP --- 用户数据报协议,是一个无连接的简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把...
    一只写程序的猿阅读 8,251评论 0 2
  • UDP首部格式: 源端口:源端的端口号,在需要给对方回信的时候用到,亦需要的时候设置为0 目的端口:在终点交付的时...
    阿立94s阅读 2,118评论 0 0
  • 1 运输层协议概述 1.1 进程之间的通信 网络层是为主机之间提供逻辑通信,而运输层为应用进程之间提供端到端的逻辑...
    Mr希灵阅读 12,533评论 0 34
  • 让我安静的做个梦吧!不要打扰我,更不要叫醒我;因为我已厌倦了那条街,毕竟我已走了很长很久,累了! 让我安静的做...
    缥缈若尘阅读 793评论 0 1