UDP与TCP的区别

  1. UDP是无链接的,即发送数据以前不须要创建链接,发送数据结束时也没有链接能够释放,所以减小了开销和发送数据以前的时延。目的主机的运输层在收到UDP报文后,不须要给出任何确认
     
  2. TCP是面向链接的运输层协议,也就是说,应用程序在使用TCP协议以前,必须先创建TCP链接,在传送数据完毕后,必须释放已经创建的TCP链接
     
  3. UDP尽最大努力交付,即不保证可靠交付,所以主机不须要维持复杂的链接状态表
     
  4. TCP提供可靠交付的服务。经过TCP链接传送的数据,无差错、不丢失、不重复,而且按序到达
     
  5. UDP是面向报文的。发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付IP层,应用层交给UDP多长的报文,UDP就照样发送,既不合并,也不拆分,一次发送一个报文。
     
  6. TCP是面向字节流的,即TCP把应用程序交下来的数据仅仅当作是一连串的无结构的字节流
     
  7. UDP支持一对1、一对多、多对一和多对多的交互通讯
     
  8. 每一条TCP链接只能有两个端点,每一条TCP链接只能是点对点的(一对一)。
     
  9. UDP没有拥塞控制,所以网络出现的拥塞不会使源主机的发送速率下降。
     
  10. UDP的首部小,只有8个字节,比TCP的20个字节的首部要短
     
  11. TCP提供全双工通讯。TCP容许通讯双方的应用进程在任什么时候候都能发送数据。TCP链接的两端都设有发送缓存和接收缓存,用来临时存放双向通讯的数据。在发送时,应用程序在把数据传送给TCP的缓存后,就能够作本身的事情了,而TCP在合适的时候把数据发送出去。在接收时,TCP把收到的数据方法缓存,上层的应用进程在合适的时候读取缓存中的数据。  参考书籍:计算机网络(第7版) 谢希仁
相关文章
相关标签/搜索