UDP协议图文详解-yzc888亚洲城系统官网

yzc888

  • 热门搜索:
  • yzc888亚洲城手机版
  • 雨林木风系统
  • 深度系统
  • 电脑公司系统
  • win7装机版
  • 教程分类
    当前位置:主页 > 教程咨询 > Linux教程

    UDP协议图文详解

    来源:yzc888亚洲城┆发布时间:2018-10-09 00:00┆点击:

    yzc888亚洲城为您提供UDP协议图文详解的文章咨询供您阅读,如何使用UDP协议图文详解的方法对您有帮助也请您举手之劳分享给您身边的人。

    UDP是User Datagram Protocol的简称,中文名是用户数据报协议,是OSI参考模型中的传输层协议,它是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。 

    UDP传输与IP传输非常类似。你可以将UDP协议看作IP协议暴露在传输层的一个接口。UDP协议同样以数据包的方式传输,它的传输方式也是"Best Effort"的,所以UDP协议也是不可靠的。

    那么,我们为什么不直接使用IP协议而要额外增加一个UDP协议呢? 一个重要的原因是IP协议中并没有端口(port)的概念。IP协议进行的是IP地址到IP地址的传输,这意味者两台计算机之间的对话。但每台计算机中需要有多个通信通道,并将多个通信通道分配给不同的进程使用

    一个端口就代表了这样的一个通信通道。

    UDP只在IP的数据报服务之上增加了一点的功能,这就是复用和分用的功能以及差错检测的功能,UDP的主要特定是:

    1.UDP是无连接的,即发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延。

    2.UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的连接状态表

    3.UDP是面向报文的。发送方的UDP对应程序交下来的报文,在添加首部后就向下交付IP层。UDP对应用层交下来的报文既不合并也不拆分,而是保留这些报文的边界。

    UDP协议图文详解

    4.UDP没有拥塞控制

    5.UDP支持一对一,一对多,多对一和多对多交换通信。

    6.UDP的首部开销小,只有8个字节,比TCP的20个字节的首部要短。

    二.UDP协议头部

    UDP协议图文详解

    UDP报头由4个部分组成:

    1.各16bit的来源端口和目的端口用来标记发送和接受的应用进程。因为UDP不需要应答,所以来源端口是可选的,如果来源端口不用,那么置为零。

    当运输层从IP层收到UDP数据报时,就是根据首部中的目的端口,把UDP数据报通过相应的端口,上交最后的终点--应用程序。

    UDP协议图文详解

    如果接收方UDP发现收到的报文中的目的端口号不正确,就会丢弃改报文,并由网际控制协议ICMP发送“端口不可达”差错报文给发送方。

    ICMP应用Traceroute,就是让发送的UDP用户数据报故意使用一个非法的UDP端口,结果ICMP返回“端口不可达”差错报文,因而达到了测试的目的。

    2.在目的端口后面是长度固定的以字节为单位的报文长度域,用来指定UDP数据报包括数据部分的长度,长度最小值为8byte。

    3.首部剩下地16bit是用来对首部和数据部分一起做校验和(Checksum)的,这部分是可选的,但在实际应用中一般都使用这一功能。

    4.UDP和TCP的校验和都覆盖到了他们的首部和数据,而之前介绍的IP首部的校验和只覆盖了IP首部。

    三:端口与Socket

    端口(port)是伴随着传输层诞生的概念。它可以将网络层的IP通信分送到各个通信通道。UDP协议和TCP协议尽管在工作方式上有很大的不同,但它们都建立了从一个端口到另一个端口的通信。

    UDP协议图文详解

    随着我们进入传输层,我们也可以调用操作系统中的API,来构建socket。Socket是操作系统提供的一个编程接口,它用来代表某个网络通信。应用程序通过socket来调用系统内核中处理网络协议的模块,而这些内核模块会负责具体的网络协议的实施。这样,我们可以让内核来接收网络协议的细节,而我们只需要提供所要传输的内容就可以了,内核会帮我们控制格式,并进一步向底层封装。因此,yzc888亚洲城手机版,在实际应用中,我们并不需要知道具体怎么构成一个UDP包,而只需要提供相关信息(比如IP地址,比如端口号,比如所要传输的信息),操作系统内核会在传输之前会根据我们提供的相关信息构成一个合格的UDP包(以及下层的包和帧)。

    UDP协议图文详解

    四.UDP协议使用场景

    1.需要资源少,在网络情况比较好的内网,或者对于丢包不敏感的应用。如DHCP协议就是基于UDP的。一般的获取IP地址都是内网请求,而且一次获取不到IP又没事。

    2.不需要一对一沟通,建立连接,而是可以广播的应用。DHCP就是一种广播的形式。VXLAN也是需要用到组播,也是基于UDP协议的。

    3.需要处理速度快,时延低,可以容忍少数丢包,但是要求即便网络拥塞,也毫不退缩,一往无前的时候。

    4.QUIC是Google提出的一种基于UDP改进的通信协议,其目的是降低网络通信的延迟,提供更好的用户互动体验。

    Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx


    以上就是yzc888亚洲城给大家介绍的如何使用UDP协议图文详解的方法了,如何使用UDP协议图文详解的方法到这里也全部结束了相信大家对如何使用UDP协议图文详解的方法都有一定的了解了吧,好了,如果大家还想了解更多的资讯,那就赶紧点击yzc888亚洲城系统官网吧。

    本文来自yzc888亚洲城www.zhuangjiyuan.com如需转载请注明!

    Tag标签| RSS订阅 | 网站地图
    yzc888亚洲城系统之家提供win7装机版xp系统下载win7系统下载、最新Windows10系统下载,专为装机修机员奉上最好的软件、系统、U盘pe、程等平台
    请勿发布违反国家法律法规的内容,会员观点不代表本站立场.本站发布的系统与软件仅为个人学习测试使用,请在下载后24小时内删除,不得用于任何商业用途,
    否则后果自负,请支持购买微软正版软件! 如侵犯到您的权益,请及时通知我们,我们会及时处理。 粤ICP备15116662号