UDP 和 TCP 的区别

  TCP 和 UDP 都是运输层的协议,负责运输应用层产生的数据。

  UDP(user datagram protocol),用户数据报协议。不需要 握手 操作,通信速度快,允许网络上的其他主机在接收方同意通信之前传输数据。特点如下:

  • 能够支持容忍数据包丢失的宽带密集型应用程序
  • 速度快
  • 能够发送大量的数据包
  • 允许DNS查找

  

  TCP(transmission control protocol),传输控制协议。能确定计算机连接到 internet 及它们之间的数据传输。通过三次握手(用来启动和确认TCP连接的过程)建立TCP连接,连接建立后才可发送数据,数据传输完成后再关闭虚拟电路来断开连接。特点如下:

  • 能够确保连接的建立和数据包的发送
  • 支持错误重传机制
  • 支持拥塞控制,能够在网络拥堵的情况下延迟发送。
  • 能够提供错误校验和甄别有害的数据包。

 

  两者的区别整理

TCP UDP
是面向连接的协议 是无连接的协议
在发送数据前需要先建立连接再发送数据 无需建立连接就可以直接发送大量数据
会按照特定顺序重新排列数据包 数据包没有固定顺序,数据包相互独立
传输速度较慢 传输速度较快
头部字节:20个字节 头部字节:8个字节
会进行错误校验,能够错误恢复 会错误检查,但是会丢弃错误的数据包
有发送确认 没有发送确认
会使用握手协议:SYN、SYN_ACK、ACK 无握手协议
可以确保将数据传送到路由器 不能保证将数据传送到目标

  以上整理参考:https://mp.weixin.qq.com/s/qetBsYmDqwi_nJVnKmBw8Q
  

posted @ 2020-12-06 00:05  smallzhen  阅读(98)  评论(0编辑  收藏  举报