TCP与UDP的区别和联系

TCP -- 传输控制协议,提供的是面向连接,可靠的字节流服务。即客户和服务器交换数据前,必须现在双方之间建立一个TCP连接,之后才能传输数据。并且提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。

UDP -- 用户数据报协议,是一个简单的面向数据报的运输层协议。它不提供可靠性,只是把应用程序传给IP层的数据报发送出去,但是不能保证它们能到达目的地。由于UDP在传输数据报前不用再客户和服务器之间建立一个连接,且没有超时重发等机制,所以传输速度很快。

TCP (Transmission Control Protocol, 传输控制协议)基于连接的协议,所以在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”或者“握手”,才能建立起来。三次“对话”过程如下:

  1.主机A向主机B发出连接请求数据包;

  2.主机B向主机A发送同意连接和要求同步的数据包;(同步就是两台主机一个在发送,一个在接收,协调工作)

  3.主机A再发出一个数据包确认主机B的要求同步。

三次“对话”的目的是使数据包的发送和接收同步,经过三次“对话”后,主机A才向主机B正式发送数据。

UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议。是面向非连接的协议,它不与对方建立连接,而是直接把数据包发送过去。UDP适用于一次只传送少量数据,对可靠性要求不高的应用环境。

TCP与UDP差别小结:

  1.是否连接面向连接面向非连接;

  2.传输可靠性不可靠性;

  3.应用场合传输大量数据少量数据。

原文地址:https://www.cnblogs.com/hanpengshuai/p/4994237.html