传输协议特点大比拼之UDP

news2024/11/15 10:39:26

文章目录

  • 前言
  • 一.UDP协议端的格式
    • 源端口号和目的端口号
    • 报文长度
    • 校验和
  • 二.UDP的特点
    • 无连接
    • 面向数据报
    • 不可靠
    • 缓冲区


前言

本文将比较两种主要的传输协议 ,UDP的特点,以帮助读者更好地理解它们的应用场景和优缺点。


一.UDP协议端的格式

大家先来看一些UDP的报文格式具体是什么样子的.
在这里插入图片描述
实际上按照横向画出来的形式是这个样子的
在这里插入图片描述

其实就是端口号和报文长度和检验和组成,大家也别担心,我会一一去解释这些内容实际上是什么意思.

源端口号和目的端口号

在计算机网络中,源端口和目的端口是用于标识不同应用程序或进程之间的通信的端口号。

源端口是指发送数据的应用程序或进程使用的端口号,目的端口则是接收数据的应用程序或进程使用的端口号。

但说实话,我们还可以用西游记唐僧的话来解释,贫僧自东土大唐而来,到西天拜佛求经,为什么这么说呢?我画个图来解释一下,你就明白这个其中的含义了.
在这里插入图片描述
如果这个样还没明白,我再举个生活的例子
电话通信。假设你想要打电话给朋友,你需要拨打对方的电话号码,这就相当于源端口号。而当你朋友接听电话后,你们就可以开始通话了,这时你们的通信就需要使用一个共同的频道,就像计算机网络中的端口一样。在这个例子中,你和朋友的电话就相当于计算机网络中的两个应用程序,电话通信使用的频道就相当于网络中的端口。

报文长度

在这里插入图片描述
仔细看这个报文长度,16位长度,就是2个字节,代表的范围就是65535,这代表的就是64kb
这里代表的就是传输数据最大就是64kb,但又有人会问,我们有时候传输的数据很大怎么办,这个时候我们就需要分片传输,但这会增加网络传输的开销,并且会增加丢失和延迟的风险。因此,在设计UDP应用程序时,应尽量将数据分为适当大小的数据块,以避免UDP报文过大,从而提高传输效率和可靠性.

校验和

在这里插入图片描述
或许大家对校验和十分的感兴趣,校验,校验,说白就是,验证数据的传输是否正确.
具体的一个解释如下:
UDP 数据报时,发送端会计算出 UDP 数据报的校验和,将其添加到 UDP 数据报的头部,然后再将 UDP 数据报发送出去。接收端收到 UDP 数据报后,也会重新计算 UDP 数据报的校验和,并将计算结果与接收到的校验和进行比较,以验证 UDP 数据报的完整性和正确性。
当然我们再来举一个例子,大家就知道我们在传输过程中,校验和是干什么用的啦
在这里插入图片描述
我们检验和用于检测 UDP 数据报在传输过程中是否发生了错误或损坏。

二.UDP的特点

无连接

知道对端的IP和端口号就直接进行传输,不需要建立连接;
类比于你给朋友发短信,不需要先和朋友建立电话通话连接,直接发送短信即可。

面向数据报

应用层交给UDP多长的报文,UDP原样发送,既不会拆分,也不会合并;
用UDP传输100个字节的数据:
如果发送端一次发送100个字节,那么接收端也必须一次接收100个字节;而不能循环接收10次,
每次接收10个字节。

不可靠

UDP 不提供可靠的数据传输,因为它不会重传丢失的数据包,也不保证数据包的顺序。
类比于你给朋友发快递,如果其中一件丢失了,你不会主动重新发送,而是等待朋友询问缺少了哪件快递,再重新发送。

缓冲区

UDP只有接收缓冲区,没有发送缓冲区:
UDP没有真正意义上的 发送缓冲区。发送的数据会直接交给内核,由内核将数据传给网络层协议
进行后续的传输动作;
UDP具有接收缓冲区,但是这个接收缓冲区不能保证收到的UDP报的顺序和发送UDP报的顺序一
致;如果缓冲区满了,再到达的UDP数据就会被丢弃;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/431671.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

企业应用程序单点登录

企业每天都依赖于各种企业应用程序,包括云和本地应用程序。这意味着用户必须经常输入更多密码才能访问这些应用程序并完成他们的工作。为了提高用户的工作效率、减少密码疲劳并使身份管理更有效,您的组织需要部署高效的 SSO 解决方案。 AD360 提供企业 …

[STM32F103C8T6]ADC转换

什么是ADC转换? ADC转换的全称是:Analog-to-Digital Converter,指模拟/数字转换器 ADC的性能指标: ADC分辨率: SSA与VREF-一起接到地,DDA与VREF接到3.3v,所以ADC转换的范围是0---3.3v 所以最后的…

计算机网络复习——第4章 4.2.3 4.2.4 4.3

4.2.3 IP 地址与 MAC 地址 IP地址:虚拟地址、软件地址、逻辑地址。 网络层和以上各层使用。 放在 IP 数据报的首部。 MAC地址:固化在网卡上的 ROM 中。硬件地址、物理地址。数据链路层使用。放在 MAC 帧的首部。IP 地址放在 IP 数据报的首部&#xff…

Windows命令提示符之常见命令--动态更新

序言: 在大家接触Windows电脑的过程中,一般是直接通过鼠标来进行操作,很少甚至没有用到过命令来执行操作,而想必大家都看过电影里面的黑客大神都是通过密密麻麻的指令来操作的,并且执行的速度也会比我们用鼠标块&…

【严重】Artifex Software Ghostscript 任意命令执行漏洞(POC已公开)(CVE-2023-28879)

漏洞描述 Artifex Software Ghostscript是美国Artifex Software公司的一款开源的PostScript解析器。 Artifex Ghostscript 10.01.0及之前版本中,如果写入缓冲区的数据比总长度少一个字节,则尝试写入转义字符,导致两个字节被写入。攻击者可通…

WPF入门(三)--事件Event调用

1、WPF应用程序的关闭 WPF应用程序的关闭只有在应用程序的 Shutdown 方法被调用时,应用程序才停止运行。 ShutDown 是隐式或显式发生,可以通过指定 ShutdownMode 的属性值来进行设置。 对ShutdownMode选项的更改,可以直接在App.xaml中更改&a…

酒店管理系统(Servlet+JSP)

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:Java案例分…

【网络小知识】TCP协议介绍/三次握手,四次挥手的作用

前端开发人员需要了解三次握手和四次挥手的原因是,这些概念是在客户端和服务器端之间进行网络通信时所涉及到的 TCP 协议的基本知识。而对于前端来讲,如果页面中请求服务端数据时出现连接失败、延迟等问题,就需要对TCP协议中三次握手、四次挥…

VS——Visual Studio 2022 社区版——安装

VS——Visual Studio 2022 社区版——安装 下载安装官网下载:点击【免费Visual Studio 】即可下载安装界面:选择社区版 Community 安装先修改【安装位置】,选择【全部下载后安装】【工作负荷】选择 【使用C桌面开发】【语言包】点击【安装】&…

排序算法(二)

三、桶排序 先看定义: 桶排序会进行两次排序,一次将所有元素分配到不同的桶中,一次针对每个桶排序或再次排序所有元素。 练习题: 1) 力扣https://leetcode.cn/problems/top-k-frequent-elements/这道题就是非常典型…

NFS能使使用者访问网络上别处的文件就像在使用自己的计算机一样

先关闭selinux跟防火墙 安装NFS yum install nfs-utils -y 配置共享目录 mkdir /webdata 赋权 chmod 755 /webdata 修改配置文件 vim /etc/exports 换顺序启动 systemctl start rpc-bind systemct start nfs 测试 showmount -e 客户端挂载 创建共享目录 mkdir /we…

BUUCTF-rip

https://www.cnblogs.com/refrain-again/p/15001283.html 看了这个文章 我起码能理解我们栈溢出的目的 在做题之前 我们需要先理解 栈的存储方法 从上往下看 就能理解入栈 说回这道题目 为什么这道题目是栈溢出 1.查看基本信息 checksec file 是kali下的elf文件 相当于w…

ASEMI代理ADI亚德诺AD8061ARTZ-REEL7车规级芯片

编辑-Z AD8061ARTZ-REEL7芯片参数: 型号:AD8061ARTZ-REEL7 −3dB小信号带宽:320MHz −3dB大信号带宽:280MHz 0.1 dB平坦度的带宽:30MHz 斜率:650V/μs 总谐波失真:-77dBc 输入电压噪声&…

Kotlin | 这些隐藏的内存陷阱,你应该熟记于心

作者:Petterp 引言 Kotlin 是一个非常 yes 的语言,从 null安全 ,支持 方法扩展 与 属性扩展,到 内联方法、内联类 等,使用Kotlin变得越来越简单舒服。但编程从来不是一件简单的工作,所有简洁都是建立在复杂…

电子招标采购系统:营造全面规范安全的电子招投标环境,促进招投标市场健康可持续发展

营造全面规范安全的电子招投标环境,促进招投标市场健康可持续发展 传统采购模式面临的挑战 一、立项管理 1、招标立项申请 功能点:招标类项目立项申请入口,用户可以保存为草稿,提交。 2、非招标立项申请 功能点:非招标…

使用SpringAOP的方式修改controller接口返回的数据

1为什么需要修改返回接口的数据? 先看一个关于返回接口数据中包含时间的接口,如下接口中的birth属性,是日期,假设我们不做任何处理,那么在页面,我们看到的将是如下的时间显示效果,这明显不是我…

NVM-无缝切换Node版本

NVM-无缝切换Node版本 如果未使用nvm之前已经下载了node,并且配置了环境变量,那么此时删除这些配置(Node的环境以及Node软件),使用nvm是为了在某些项目中使用低版本的node NVM下载 进入github的nvm readme: https://github.com/coreybutler/nvm-windows…

企业如何利用数据打造新的人才战略?

由于利率上升、能源价格上涨、政治不确定性、全球供应限制以及寻找和资助昂贵人才的问题,企业的优先事项,也就是人们的优先事项,正在以前所未有的速度发生转变。在数据的基础之上迅速做出正确决策,并灵活精准地向他人传达意义。 …

必要的项目管理软件因素

什么样的项目管理软件好?对于一个项目团队来说,从项目开始到项目结束,需要多个部门的配合。每个成员可能会参与一个以上的项目,这通常需要并行的多个项目。据介绍,国外90%以上的项目是用软件管理的,而中国只…

dump 定位分析

在缺少pdb的时候如何分析dump? windbgidaWindbg定位崩溃位置 通过windbg打开dump,并且分析dump !analyze -v 分析: 分析dump: !analyze -v错误原因:读取空指针错误线程:00001e04,可通过命令…