【好书精读】网络是怎样连接的 —— UDP 协议的收发操作

这篇具有很好参考价值的文章主要介绍了【好书精读】网络是怎样连接的 —— UDP 协议的收发操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【好书精读】网络是怎样连接的 —— UDP 协议的收发操作

 ( 该图由我使用 AI 绘制 )

目录

不需要重发的数据用 UDP 发送更高效

控制用的短数据

 音频和视频数据


不需要重发的数据用 UDP 发送更高效

DNS 服务器查询 IP 地址的时候我们用的是 UDP 协议

简单的说就是,TCP之所以复杂,是因为他要确认的东西很多,比如发了10个包,7号包失败了,TCP可以知道哪个包失败,重发的时候只需要发这一个就好了

而UDP不知道,但是他也有他的好处,那就是,只发一个包的时候

控制用的短数据

DNS 查询等交换控制信息的操作基本上都可以在一个包的大小范围内解决 这种场景中就可以用 UDP 来代替 TCP
UDP 没有 TCP 的接收确认 窗口等机制 因此在收发数据之前也不需要交换控制信息 也就是说不需要建立和断开连接的步骤 只要在从应 用程序获取的数据前面加上 UDP 头部 然后交给 IP 进行发送就可以了 )。 接收也很简单 只要根据 IP 头部中的接收方和发送方 IP 地址 以及 UDP 头部中的接收方和发送方端口号 找到相应的套接字并将数据交 给相应的应用程序就可以了 除此之外 UDP 协议没有其他功能了 遇到 错误或者丢包也一概不管 因为 UDP 只负责单纯地发送包而已 并不像 TCP 一样会对包的送达状态进行监控 所以协议栈也不知道有没有发生错 但这样并不会引发什么问题 因此出错时就收不到来自对方的回复 应用程序会注意到这个问题 并重新发送一遍数据

【好书精读】网络是怎样连接的 —— UDP 协议的收发操作文章来源地址https://www.toymoban.com/news/detail-501261.html

 音频和视频数据

还有另一个场景会使用 UDP 就是发送音频和视频数据的时候 音频和视频数据必须在规定的时间内送达 一旦送达晚了 就会错过播放时机 导致声音和图像卡顿 如果像 TCP 一样通过接收确认响应来检查错误并重 重发的过程需要消耗一定的时间 因此重发的数据很可能已经错过了 播放的时机 一旦错过播放时机 重发数据也是没有用的 因为声音和图 像已经卡顿了 这是无法挽回的 当然 我们可以用高速线路让重发的数 据能够在规定的时间内送达 但这样一来可能要增加几倍的带宽才行 此外 音频和视频数据中缺少了某些包并不会产生严重的问题 只是 会产生一些失真或者卡顿而已 一般都是可以接受的 在这些无需重发数据 或者是重发了也没什么意义的情况下 使用 UDP 发送数据的效率会更高

到了这里,关于【好书精读】网络是怎样连接的 —— UDP 协议的收发操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • UDP协议的数据收发

    DatagramSocket使用的UDP连接,客户端不需要先连接数据,可以直接发送给指定服务端。 需要DatagramSocket来进行中间的运输 无连接的传输层协议,提供面向事务的简单不可靠信息传输服务、可能丢失、非常简单、非常小 一切以包为中心 数据传输不用IO流 1.1 发送端(客户端) 使用

    2024年02月13日
    浏览(32)
  • 【网络】传输层——UDP | TCP(协议格式&&确认应答&&超时重传&&连接管理)

    🐱作者:一只大喵咪1201 🐱专栏:《网络》 🔥格言: 你只管努力,剩下的交给时间! 现在是传输层,在应用层中的报文(报头 + 有效载荷)就不能被叫做报文了,而是叫做 数据段 (报头 + 有效载荷),传输层的有效载荷就是应用层的完整报文。 端口号(port):标识了一个主机上

    2024年02月13日
    浏览(46)
  • 【全民Python】 Python网络通信UDP消息收发处理

    目录 一.UDP介绍 二.UDP的使用方法 三.源码 1. UDP的英文单词是User Datagram Protocol,缩写为UDP,是一种用户数据报协议,又称为用户数据报文协议,是一种报文的协议,是一个简单的面向数据报的传输层协议  。 2.UDP的发起和接受是不需要经过连接的,仅仅只需要发送在对应端口

    2024年02月15日
    浏览(34)
  • FPGA纯verilog实现UDP协议栈,sgmii接口SFP光口收发,提供工程源码和技术支持

    目前网上的fpga实现udp基本生态如下: 1:verilog编写的udp收发器,但中间的FIFO或者RAM等调用了IP,或者不带ping功能,这样的代码功能正常也能用,但不带ping功能基本就是废物,在实际项目中不会用这样的代码,试想,多机互联,出现了问题,你的网卡都不带ping功能,连基本的

    2024年02月16日
    浏览(46)
  • day11 TCP连接管理与UDP协议

    目录 ​编辑 连接的建立——”三次握手” 连接的释放——“四次挥手”  保活计时器 用户数据报协议 UDP​编辑 TCP 建立连接的过程叫做握手。 采用 三报文握手 :在客户和服务器之间交换三个 TCP 报文段,以防止已失效的连接请求报文段突然又传送到了,因而产生 TCP 连接

    2024年02月02日
    浏览(38)
  • 13回归网络:HTTP/2是怎样的网络协议?

    本篇文章我们先放下实践,回归网络,深入gRPC底层的HTTP/2协议,去探究一下框架底层网络协议的原理,提升对高性能网络协议的认知,相信读完这篇文章以后,我们就可以了解HTTP/2有哪些优势,为什么gRPC要使用HTTP/2作为底层的传输协议。 在众多研究HTTP/2的博客和资料中,最

    2023年04月11日
    浏览(31)
  • 网络协议 - UDP 协议详解

    基于TCP和UDP的协议非常广泛,所以也有必要对UDP协议进行详解。 UDP(User Datagram Protocol)即用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中,在第四层——传输层,处于IP协议的上一层。UDP用来支持那些需要在计算机之间传输数据的

    2024年02月22日
    浏览(44)
  • 网路原理-传输层UDP,TCP/IP(确认应答,超时重传,连接管理,三次握手,四次挥手,状态转换,流量控制,滑动窗口,拥塞控制,延时应答,捎带应答,异常情况,面向字节流)-网络层(IP协议,地址管理)

    本节重点 • 理解传输层的作⽤,深⼊理解TCP的各项特性和机制 • 对整个TCP/IP协议有系统的理解 • 对TCP/IP协议体系下的其他重要协议和技术有⼀定的了解 我们之前编写完了基本的 java socket ,要知道,我们之前所写的所有代码都在应⽤层,都是为了 完成某项业务,如翻译等。

    2024年04月15日
    浏览(58)
  • 【网络】传输层协议-UDP协议

    回忆数据发送到网络的过程 之前在学习HTTP等应用层协议时为了方便理解:我们简单的认为HTTP协议是将请求和响应直接发送到了网络当中 实际上: 应用层需要先将数据交给传输层,由传输层对数据做进一步处理后再将数据继续向下进行交付,该过程贯穿整个网络协议栈,最终才能将

    2024年02月03日
    浏览(85)
  • [C++ 网络协议编程] UDP协议

    目录 1. UDP和TCP的区别 2. UDP的工作原理 3. UDP存在数据边界 4. UDP的I/O函数 4.1 sendto函数 4.2 recvfrom函数 4. 已连接(connected)UDP套接字和未连接(unconnected)UDP套接字 5. UDP的通信流程 5.1 服务器端通信流程 5.2 客户端通信流程 主要区别: TCP和UDP的主要区别是,TCP具有流控制机制,而UDP没

    2024年02月12日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包