UDP和TCP的对比

      最后更新:2022-06-13 09:55:00 手机定位技术交流文章

      • 用户数据图协议(UDP)和传输控制协议(TCP)

      • UDP和TCP是TCP/IP架构传输层中的两个重要协议,其频率使用仅次于互连层的IP协议

      • 当传输层采用面向连接的TCP协议时,虽然下面的网络不可靠(只提供最好的服务),TCP协议与通信通道的逻辑建立类似,它是完全双向的可靠通道。

      • 当传输层使用不连接的UDP协议时,这个逻辑通信通道是一个不可靠的通道。

      其次,我们用几种方法比较UDP和TCP:

      • 下面的连接是逻辑的,而不是物理的

      1、在连接方式上:

      UDP是一种不连接的通信方式


      TCP通过著名的“三手”和“四手”释放连接。

      2、在传播方式上:

      由于缺乏连接,UDP支持多播和广播


      TCP只支持单播,因为每个通信需要基于TCP连接的可靠通道,每次只有一个连接被建立

      3.在报告处理中:

      在UDP协议中,发送到应用程序层的消息不被处理,且消息边界被保留。 将UDP字节添加到消息中并发送。


      可以 看出 UDP 被 处理 为 报告 单位, 即 UDP 被 应用 为 报告 单位 。


      在TCP协议中更复杂:
      在TCP发送方:

      TCP协议将应用程序进程提供的数据块(消息)视为一系列不结构的字节流(TCP不知道这些字节意味着什么)。将他们编号,并存储在自己的发送缓存中,然后根据发送策略,提取一定量的字节,加上TCP首部,构造发送的TCP消息。


      对接收者来说,两个事情是同时进行的:
      从接受的TCP消息节中,数据负载部分被删除并存储在接收缓冲器中,而接收缓冲器中的某些位子被交付到应用程序进程中。

      TCP 管理 的 数据 包 中 的 大量 数据 块 是 消息 部分 的 单位, 以 促进 传输 。


      有两个点值得注意:

      TCP协议确保接收者接收的数据数量与发送者发送到应用程序过程。
      TCP不保证接收者申请过程接收的数据块和发送者发送的数据块,有相应的大小关系,例如,由发送方的申请过程将总共10个数据块分配给TCP。但接收机的TCP只能使用四个数据块,接收的字节流被交付到最高级别的应用程序进程中。但。也就是说,并非所有的数据都交付到最高级别。


      因此,接收机的TCP应用程序过程必须能够识别接收的字节流并将其恢复到有意义的应用程序层数据


      可以看出,TCP在子节单元中处理消息,即TCP是只读的,这是TCP实现可靠的传输、流量控制和拥堵控制的基础

      在向上级提供的服务中:

      在这里插入图片描述

      UDP提供的不可靠服务:
      对于发送的UDP数据消息,接收机在检测错误代码后直接丢弃它,没有其他操作。 分组的丢失发生在发送者发送过程中,并不会被处理。 因此,其传输数据不一定能够使接收机接收所有数据,因此它不是一个可靠的服务。


      TCP提供可靠的服务:
      由于TCP字符传输需要建立一个通过建立可靠的渠道传输的连接,因此不会发生传输错误,即错误代码、丢失、序列、重复,因此,可以确保发送者发送的,接收者接收的,是可靠的传输。

      协定第一部分的比较:

      由于UDP不提供可靠的传输服务,第一部分是简单的,需要在网络层的基础上添加一个分区端口的分节。


      在交通网络中,必须提供可靠的传输、交通控制、交通堵塞控制等服务,第一部分较复杂,领域较多。

      TCP与UDP的比较摘要:

      对比总结

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/27235.html

          热门文章

          文章分类