zoukankan      html  css  js  c++  java
  • TCP和UDP协议的区别

    TCP和UDP都是传输层的协议

    UDP协议的特点:
    • UDP协议是一种无连接的、不可靠的传输层协议(尽力而为的协议)
    • 为什么说UDP是一种无连接、不可靠的协议呢?UDP协议在传输报文之前不需要在双方之间建立连接。
    • UDP协议对报文只提供了一种保证数据传输可靠性的措施——可选的校验和
    • 如果UDP协议检测出收到的分组出现错误,就丢弃分组,不会确认,也不会通知重传,这也是UDP最大的缺点,传输不可靠。当传递数据的时候,网络质量不好,就会发生丢包(数据丢失),无法保证数据的传输顺序。
    • 在传输上UDP的传输速度非常快,因为在传输之前不需要进行确认,传输中没有拥塞,重传。
      类似于一个广播的形式,不管你听不听,发送方一直在发送数据。UDP的效率高,处理速度快,对网络要求不高的的特点使他应用在P2P会话类。可以一对一,一对多,多对一的通信。适用于实时的语音和视频传输。
    TCP协议的特点:
    • 面向连接的传输服务,下面是一段形象的总结:

      UDP像是你邮一封信,信邮丢了不知道,写信的一直以为信已经邮到,之后还会邮信。而TCP像是打电话,如果对方不接电话,双方永远不能交流信息,对方接电话你知道,对方说了什么你知道,对方挂了电话你也会知道。
      所以TCP协议的传输不会出现差错,丢失,重复(双方会有确认)

    • 由于是面向连接的协议,TCP协议提高了数据传输的可靠性,TCP会有三次握手来建立连接,在传输过程中会有重传,确认,拥塞控制等机制,传输完成后还会断开连接释放资源。

    • 相比于UDP协议,TCP传输速度上会慢,效率低下,时间都浪费在保证数据传输的各种机制上。
    • TCP支持全双工通信:第一次听到这个名词的时候是在单片机课上,老师详细的讲述了单工,半双工,全双工的区别。全双工就是双方可以同时在任何时候发送数据。
    • TCP协议是将数据看成一连串,无结构的字节流,UDP是面向报文传输的。
  • 相关阅读:
    POJ 1142 Smith Numbers
    POJ 1171 Letter Game 解题思路
    人人德克萨斯牌出手规则整理
    OpenMP相关知识索引
    如何进行有效的沟通
    台哥算法练习:一个for循环打印九九乘法表
    啊哈,381654729!
    发牌的小窍门
    判断数abcdef能否被k整除(k属于[2,9])
    如何在数轴上找到一个数的倒数
  • 原文地址:https://www.cnblogs.com/duzhentong/p/8576494.html
Copyright © 2011-2022 走看看