TCP与UDP的区别

TCP和UDP的区别

  1. TCP面向连接的,UDP无连接,即发送数据前不需要建立连接
  2. TCP提供可靠的服务。也就是说TCP连接传送的数据,无差错,不丢失,不重复且按序到达;UDP尽最大努力交付,挤不保证可靠交付,并且因为TCP可靠面向连接,不会丢失数据因此适合大数据量的交换
  3. TCP面向字节流,UDP面向报文,并且网络出现拥塞不会使得发送速率降低(因此会丢包)
  4. TCP只能是1对1,UDP可以1对1也可以1对多(可以联想到微信群视频记忆)
  5. TCP首部较大为20字节,而UDP只有8字节
  6. TCP面向连接的可靠性传输,而UDP是不可靠的。
    TCP如何保证数据是可靠传输的呢
  7. TCP的可靠数据传输实现机制包括:差错编码,确认,序号,重传,计时器等。
  8. TCP的可靠数据传输是基于滑动窗口协议,但是发送窗口大小动态变化。
  • 封装TCP报文段
  • 发出一个报文段后启动一个计时器
  • 通过校验和发现数据差错
  • 通过序号重新排序,丢弃重复数据段
  • 流量控制。
    TCP拥塞控制
    慢启动(窗口大小慢慢启动),拥塞避免(大到一定的阈值就慢慢地增加),快速重传和快速恢复

你可能感兴趣的:(TCP与UDP的区别)