UDP的报文结构及注意事项

news/2024/11/19 22:24:46/

UDP的报文结构及注意事项

  • 🔎UDP的报文结构
    • 源端口和目的端口
    • 报文长度
    • 校验和
  • 🔎UDP的注意事项
    • 端口号
    • 报文长度
    • 校验和
  • 🔎结尾

🔎UDP的报文结构

在这里插入图片描述
图片来自网络


在这里插入图片描述

源端口和目的端口

如果将 源IP 和 目的IP 看作是两台计算机在网络中的地址
那么 源端口 和 目的端口 就看作是两台计算机中的程序(比如 QQ)

举个栗子🥝

唐僧的自我介绍
贫僧自东土大唐而来, 欲往西天拜佛求经

这里的东土大唐就是源IP, 西天就是目的IP
这里的贫僧就是源端口, 拜佛就是目的端口

报文长度

一个 UDP 报文长度的最大值是 64KB
(2字节 --> 0 ~ 65535 --> 65535 / 1024 ≈ 64)

校验和

校验和是为了判断当前传输的数据是否出错

网络传输是有一定几率出现故障的(外部环境的干扰,强磁场的影响等)

举个栗子🥝

女神让滑稽老哥去买菜
分别是(1)芹菜 (2)黄瓜 (3)豆角 (4)白菜, 一共4样

滑稽老哥由于出门太急,只听清了要买4样菜
这时候滑稽老哥买的菜的种类不等于4样, 那么他一定是买错了
但是如果他买了4样菜,也不一定就买对了, 有可能滑稽老哥将黄瓜买成了土豆

校验和就是为了判定买的菜是不是4样
如果不是4样菜, 就一定是出错了
如果是, 也不一定就对


为了让校验和能够识别率更高一些(更为可靠), 计算的时候通常会用数据内容作为参数进行计算
数据内容发生变化, 校验和也会发生变化
(选取内容的一部分, 通过一些算术运算, 数学公式的变换,得到一个数值. 例如奇偶校验等)

发送方, 把载荷数据, 带入到校验和算法中, 计算生成的校验和结果(sum1)

在这里插入图片描述
接收方, 收到的数据, 既有载荷, 也有校验和 sum1
接收方通过同样的算法计算载荷得到校验和 sum2
对比 sum1 与 sum2 是否相同
如果不同, 则证明传输有误

🔎UDP的注意事项

端口号

端口号的取值范围是 0 ~ 65535 (2字节)

其中 < 1024 的端口号, 称为 “知名端口号”, 这部分端口是给一些服务器预留的, 编码的时候通常不使用这部分端口号

报文长度

使用 UDP 编程时, 需要注意 UDP 的报文长度不能过长

校验和

校验和的结果相同, 不一定传输无误
校验和的结果不同, 一定传输有误

🔎结尾

创作不易,如果对您有帮助,希望您能点个免费的赞👍
大家有什么不太理解的,可以私信或者评论区留言,一起加油


http://www.ppmy.cn/news/40943.html

相关文章

亚马逊云科技为游戏全生命周期提供保障,降低游戏整体运营成本

开发一个“爆款”游戏总共需要几步&#xff1f;Marvel Snap可能会告诉你&#xff1a;第一步&#xff0c;专心致志把游戏做好、提高可玩性&#xff1b;第二步&#xff0c;把其他工作交给亚马逊云科技。 相关数据显示&#xff0c;自2022年10月18日正式发行以来&#xff0c;在不…

半监督语义分割_paper reading part2

03 SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers Time&#xff1a;2021.05 我们提出了SegFormer&#xff0c;一个简单&#xff0c;高效而强大的语义分割框架&#xff0c;它将transformer与轻量级多层感知器(MLP)解码器统一起来。SegF…

走进小程序【一】什么是小程序?

文章目录&#x1f31f;前言&#x1f31f;发展史&#x1f31f;什么是[微信小程序](https://developers.weixin.qq.com/miniprogram/dev/framework/)&#xff1f;&#x1f31f;微信小程序能做什么&#xff1f;&#x1f31f;小程序发展前景和优势&#x1f31f;写在最后&#x1f31…

linux中rpm安装包安装mysql-----配置、启动、访问服务

Mysql的下载地址 官网地址: lhttps://downloads.mysql.com/archives/community/ #----------安装Mysql依赖【perl net-tools】 yum install perl net-tools -y #----------卸载mariadb rpm -qa | grep mariadb rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64 #---------…

Python(解非线性方程和线性方程)求水力学法向深度-浪涌高度速度及互连反应器中的浓度和流体分布

非线性方程 在水力学领域遇到的非线性方程的一个例子是通过长梯形通道寻找流动的法向深度 yny_nyn​。 这样的流动深度出现在均匀流动区域&#xff0c;远离任何不均匀原因的影响&#xff0c;例如堰的上游。 法向深度 yny_nyn​ 可以通过求解以下方程获得&#xff1a; Q1nAR2/…

第十四届蓝桥杯大赛软件赛省赛-试题 B---01 串的熵 解题思路+完整代码

欢迎访问个人网站来查看此文章&#xff1a;http://www.ghost-him.com/posts/db23c395/ 问题描述 对于一个长度为 n 的 01 串 Sx1x2x3...xnS x_{1} x_{2} x_{3} ... x_{n}Sx1​x2​x3​...xn​&#xff0c;香农信息熵的定义为 H(S)−∑1np(xi)log2(p(xi))H(S ) − {\textstyl…

web自动化测试入门篇06 —— 元素定位进阶技巧

&#x1f60f;作者简介&#xff1a;博主是一位测试管理者&#xff0c;同时也是一名对外企业兼职讲师。 &#x1f4e1;主页地址&#xff1a;【Austin_zhai】 &#x1f646;目的与景愿&#xff1a;旨在于能帮助更多的测试行业人员提升软硬技能&#xff0c;分享行业相关最新信息。…

场景联动设备触发消息设计思考

场景联动设备触发消息设计思考 一&#xff1a;数据丢失。 消息是否会发生丢失&#xff0c;在于以下 3 个环节&#xff1a; 1、生产者会不会丢消息&#xff1f; 2、消费者会不会丢消息&#xff1f; 3、队列中间件会不会丢消息&#xff1f; 生产者会不会丢消息&#xff1f;…