美文网首页
TCP与UDP的区别

TCP与UDP的区别

作者: caojiying | 来源:发表于2019-06-11 11:09 被阅读0次
https://img-my.csdn.net/uploads/201303/15/1363304832_2419.jpg

TCP 与 UDP 的区别

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

TCP发送数据前使用三次握手建立连接,UDP发送数据前不需要建立连接。

2. TCP可靠,UDP不可靠

TCP丢包可以自动重传,UDP不会(任何必需的可靠性必须由应用层来提供)。TCP可靠性由三个机制保证:

  1. 序号(TCP报文的序号)
  2. 确认(ACK机制)
  3. 重传(超时或者冗余的ACK)

3. TCP面向字节流,UDP面向报文(保留报文的边界)

UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。这也就是说,应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文。
应用程序和TCP的交互是一次一个大小不等的数据块。TCP可以把应用程序的数据块划分成小块发送,也可以积累足够多的小数据块合并成一个报文单次发送。

4. TCP效率较低,UDP效率高

  • TCP需要建立连接、保证可靠性和有序性,UDP不需要建立连接
  • TCP首部20字节,UDP首部只需要8字节

5. TCP全双工,UDP支持单播,多播,广播

TCP连接的两端都设有缓存,用来临时存放双向通信的数据(实现全双工)。
TCP只能一对一通信,UDP支持一对一、一对多、多对一、多对多的方式。

6. TCP支持流量控制(滑动窗口)和拥塞控制,UDP不支持

流量控制(滑动窗口)是点对点的通信量抑制,抑制发送端发送速率,使得接收端来得及接收。

应用场景

  • TCP适用于要求可靠传输的应用,例如文件传输
  • UDP适用于实时应用(IP电话、视频会议、直播等)

参考

TCP 与 UDP 的区别
面向报文(UDP)和面向字节流(TCP)的区别
一文搞懂TCP与UDP的区别
TCP和UDP的最完整的区别

相关文章

  • 2018-09-19

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

  • 网络

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

  • Netty知识汇总

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

  • iOS 网络相关面试题

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

  • Tcp的三次握手与四次挥手-back

    tcp与udp的区别

  • tcp和udp

    TCP和UDP的区别(转) TCP****协议与UDP协议的区别 首先咱们弄清楚, TCP 协议和 UCP ...

  • TCP和UDP的最完整的区别

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

  • TCP/IP

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

  • Android基础(44)TCP、HTTP

    1)TCP的3次握手和四次挥手2)TCP与UDP的区别、TCP与UDP的应用3)HTTP1.0与2.0的区别、HT...

  • TCP vs UDP

    简单总结TCP与UDP的区别。 I、TCP与UDP基本区别 II、应用场景 对于TCP协议,在要求可靠性高的场景下...

网友评论

      本文标题:TCP与UDP的区别

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