• TCP与UDP的区别


    前言

    TCP协议:TCP协议是传输控制协议,它是面向连接的可靠传输层协议,在传输数据之前必须建立连接

    UDP协议:UDP协议是用户数据报协议,它是无连接的不可靠传输层协议,在传输数据之前不需要建立连接

    区别

    TCP协议

    UDP协议
    面向连接无连接
    可靠不可靠
    只支持点对点

    支持一对一、一对多、

    多对一和多对多的交互通信

    字节流形式传输数据报文段形式传输
    具备流量控制、拥塞控制等功能不使用拥塞控制
    所需资源较多所需资shubu
    首部字节最小为20字节最多为60字节协议首部字节为8字节

    TCP协议是面向连接的,而UDP协议是无连接的

            TCP协议面向连接体现在,在数据传输之前必须要通过“三次握手”与服务器建立连接,而UDP是无连接的,随时都可以发送数据。

    TCP协议是传输可靠的,UDP协议是传输不可靠的

            TCP的可靠性是体现在,在数据传输的过程中,TCP协议将数据分出若干报文段来进行传输,而当出现网络延迟、网络情况复杂等特殊情况时,出现丢包情况,TCP协议会在网络恢复时,将丢包重新进行发送,而UDP协议不考虑传输的数据是否准确,因从TCP协议是可靠传输,而UDP协议是不可靠传输。

    TCP协议是以字节流形式传输的,UDP协议是以数据报文段形式传输的

            TCP协议是把引用层传下来的报文看作是字节流,把字节流组织成大小不等的报文段,而UDP协议是面向报文传输

    TCP传输效率较低,而UDP传输效率较高

            TCP协议由于要保证数据的可靠性传输,因此在底层代码处理中要比UDP协议复杂的多,所以“以效率换安全”,因此TCP协议相对与UDP协议传输效率较低

    TCP协议所需资源较多,UDP所需资源较少

            正如分析TCP效率低一样,在维护TCP协议数据传输的可靠性这一方面,底层采用多种方式进行控制可靠性,例如:重传机制、滑动窗口、检验和、序列号等多种方式,因此TCP协议是所需资源较多的,而UDP协议是不保证可靠的,因此所需资源较少

    TCP首部字节最小为20字节最多为60字节,UDP协议首部字节为8字节

            在TCP首部中有一个数据偏移,该数据偏移是四字节,最大是1111表示15×4=60个字节,即表示TCP首部最大长度为60个字节,UDP的首部开销较小,只有8字节

    TCP协议使用场景要求通信数据可靠,UDP协议要求通信速度快

            TCP协议:文件传输、邮件传输等

            UDP协议:音频、视频通话、直播等

  • 相关阅读:
    外贸出口游戏设备亚马逊CE认证电磁兼容性(EMC)测试解析
    redis6.0.6安装(window版)
    【探索Spring底层】容器接口
    文献 | 越想快乐,越不快乐
    selenium爬虫如何绕过反爬,看这一篇文章就足够了
    [Vue warn]: Error in render: “TypeError: renderEmpty is not a function“
    C++、c语法基础【1】
    odoo 开发入门教程系列-一些用户界面
    OS2.3.2:进程互斥的软件实现方法
    如何找到适合自己的股票程序化交易接口模式?
  • 原文地址:https://blog.csdn.net/w259149/article/details/127038551