UDP协议

embedded/2024/9/23 10:22:59/

UDP协议端格式

在这里插入图片描述

源端口: 占16位、源端口号。在需要对方回信时选用。不需要时可用全0。

目的端口: 占16位、目的端口号。这在终点交付报文时必须使用。

长度: 占16位、UDP用户数据报的长度,其最小值是8字节(仅有首部,没有数据)。

检验和: 占16位、检测UDP用户数据报在传输中是否有错。有错就丢弃。

UDP的特点

  • 无连接:知道目的IP和端口号就可以进行通信,无需连接
  • 不可靠:没有确认应答机制,没有重传机制;数据因网络原因丢失,UDP协议层也不会返回任何错误
  • 面向数据报:不能够灵活的控制读写数据的次数和数量;
  • 双全工:可以传输也可以接收

面向数据报

对于应用层传输的数据,添加首部后直接交接给给ip层,没有分割、合并。对于ip层交付的udp数据报,直接去除首部后上付给应用层。所有在整个过程中,报文是不可分割的最小单位,故UDP面向数据报。

传输速度快

由以下特点支持了此特性:

  • 无连接:由于UDP不需要连接,时间上不存在建立连接需要的时延。空间上,TCP需要在端系统中维护连接状态,需要一定的开销。
  • 不可靠:因为UDP传输不可靠,不需要额外的机制来保证可靠性,所有UDP的体积更小,并且UDP只用关注传输,并不关心是否传输到目的地。

检验和

为了保证数据传输过程中的安全,没用因为物理因素导致数据变动。我们需要对得到的数据进行检验。

发送方,首先是把全零放入校验和字段并且添加伪首部,然后把UDP数据报看成是由许多16位的子串连接起来,若UDP数据报的数据部分不是偶数个字节,则要在数据部分末尾增加一个全零字节(此字节不发送),接下来就按照二进制反码计算出这些16位字的和。将此和的二进制反码写入校验和字段。在接收方,把收到得UDP数据报加上伪首部(如果不为偶数个字节,还需要补上全零字节)后,按二进制反码计算出这些16位字的和。当无差错时其结果全为1,。否则就表明有差错出现,接收方应该丢弃这个UDP数据报。


http://www.ppmy.cn/embedded/44677.html

相关文章

细说ARM MCU中的MX_GPIO_Init()函数的实现过程

目录 1、建立.ioc工程 2、 MX_GPIO_Init()函数 (1)MX_GPIO_Init()函数的类型 (2)MX_GPIO_Init()函数中用到的结构体变量 (3)MX_GPIO_Init()函数使能时钟 (4)MX_GPIO_Init()函数…

bhyve:FreeBSD下的原生虚拟机管理器

hbyve简介 自 FreeBSD 10.0-RELEASE 起,BSD 许可的 bhyve 虚拟机管理器已成为底层系统不可或缺的一部分。bhyve 强大而灵活,支持多种客户机操作系统,涵盖 FreeBSD、OpenBSD 以及多个 Linux 发行版。在默认配置下,bhyve 提供对串行…

K210视觉识别模块学习笔记2:固件的下载升级_官方数字识别例程导入方法

今日开始学习K210视觉识别模块:固件的下载升级_官方数字识别例程导入方法 主要学习如何升级固件库,在哪下载固件库,以及如何在TF卡正确导入官方例程: 亚博智能的K210视觉识别模块...... 本次最终目的是正确导入官方的数字识别例程&#xff0…

Flutter 中的 SliverMainAxisGroup 小部件:全面指南

Flutter 中的 SliverMainAxisGroup 小部件:全面指南 Flutter 是一个由 Google 开发的跨平台 UI 框架,它提供了多种布局和控件来帮助开发者构建高性能、美观的移动和 web 应用。在 Flutter 的滚动和布局体系中,SliverMainAxisGroup 是一个较少…

颠覆传统家居行业?线上3D数字化营销有何魅力?

在数字时代的浪潮中,Z时代年轻用户正成为泛家居行业的消费核心力量。作为数字原生的一代,他们追求的不仅仅是产品本身,更是独特的消费体验。为了迎合这一趋势,泛家居行业正积极引入线上3D数字化沉浸式营销,为用户提供前…

Java设计模式 _行为型模式_访问者模式

一、访问者模式 1、访问者模式 访问者模式(Visitor Pattern)是一种行为型模式。它允许在不修改已有类结构的情况下,向类中添加新的操作。访问者模式通过将操作封装在一个访问者对象中,使得可以在不改变各个元素类的前提下&#x…

ModStartBlog v9.4.0 后台安全升级,已知问题修复

ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场拥有丰富的功能应用,支持后台一键快速安装,让开发者能快的实现业务功能开发。 系统完全开源,基于 Apache 2.0 开源协议。 功能特性 丰富的模块市场,后台一键快速安装 …

OAK相机如何将 YOLOv9 模型转换成 blob 格式?

编辑:OAK中国 首发:oakchina.cn 喜欢的话,请多多👍⭐️✍ 内容可能会不定期更新,官网内容都是最新的,请查看首发地址链接。 Hello,大家好,这里是OAK中国,我是Ashely。 专…