美文网首页
TCP 与 UDP

TCP 与 UDP

作者: 杰哥长得帅 | 来源:发表于2019-02-03 10:25 被阅读0次

区别总结:

  1. TCP 面向连接(如打电话要先拨号建立连接);UDP 是无连接的,即发送数据之前不需要建立连接

  2. TCP 提供可靠的服务。也就是说,通过 TCP 连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP 尽最大努力交付,即不保证可靠交付

  3. TCP 面向字节流,实际上是 TCP 把数据看成一连串无结构的字节流;UDP是面向报文的
    UDP 没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等)

  4. 每一条 TCP 连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信

  5. TCP 首部开销 20 字节;UDP 的首部开销小,只有 8 个字节

  6. TCP 的逻辑通信信道是全双工的可靠信道,UDP 则是不可靠信道

为什么 UDP 有时比 TCP 更有优势?

UDP 以其简单、传输快的优势,在越来越多场景下取代了 TCP,如实时游戏

  • 网速的提升给 UDP 的稳定性提供可靠网络保障,丢包率很低,如果使用应用层重传,能够确保传输的可靠性
  • TCP 为了实现网络通信的可靠性,使用了复杂的拥塞控制算法,建立了繁琐的握手过程,由于 TCP 内置的系统协议栈中,极难对其进行改进

采用 TCP,一旦发生丢包,TCP 会将后续的包缓存起来,等前面的包重传并接收到后再继续发送,延时会越来越大,基于 UDP 对实时性要求较为严格的情况下,采用自定义重传机制,能够把丢包产生的延迟降到最低,尽量减少网络问题对游戏性造成影响

TCP 与 UDP 的适用场景

  • TCP:
    对数据传输的质量有较高要求,但对实时性要求不高。比如 HTTP,HTTPS,FTP 等传输文件的协议以及 POP,SMTP 等邮件传输的协议,应选用 TCP 协议

  • UDP:
    只对数据传输的实时性要求较高,但不对传输质量有要求。比如视频传输、实时通信等,应选用 UDP 协议

相关文章

  • iOS 网络相关面试题

    问题:TCP、UDP TCP/UDP 传输层协议 ||—— UDP:用户数据报协议 TCP与UDP的区别: 问题...

  • 2018-09-19

    网络面试集 一、TCP/UDP 1、UDP与TCP的区别 TCP(TransmissionControl ...

  • TCP 与 UDP

    TCP 与 UDP(主要说TCP)TCP/UDP端口号TCP/UDP端口号TCP连接的建立TCP连接的建立发送se...

  • TCP和UDP的最完整的区别

    TCP UDP TCP与UDP基本区别 1.基于连接与无连接 2.TCP要求系统资源较多,UDP较少; 3.UDP...

  • 网络

    一、TCP 二、UDP 三、TCP与UDP的区别 四、Socket

  • TCP与UDP详解

    1、TCP与UDP概述 TCP (Transmission Control Protocol)和UDP(User ...

  • TCP和UDP的最完整的区别

    TCP UDP TCP与UDP基本区别 1.基于连接与无连接 2.TCP要求系统资源较多,UDP较少; 3....

  • TCP和UDP的最完整的区别

    TCP UDP TCP与UDP基本区别 1.基于连接与无连接 2.TCP要求系统资源较多,UDP较少; 3....

  • TCP/IP

    引用 一文搞懂TCP与UDP的区别 TCP/UDP协议详解... TCP基础特性* TCP 1、 TCP特性: T...

  • Netty知识汇总

    1、TCP、UDP的区别? TCP与UDP区别总结: 1)、TCP面向连接(如打电话要先拨号建立连接);UDP是无...

网友评论

      本文标题:TCP 与 UDP

      本文链接:https://www.haomeiwen.com/subject/cnkysqtx.html