简单介绍TCP,UDP 协议的区别

1. TCP

TCP(Transmission Control Protocol,传输控制协议)是面向连接的、可靠的字节流服务,也就是说,在收发数据前,必须和对方建立可靠的连接。这一过程和打电话类似:先拨号振铃,等待对方接电话,说喂,再说自己是谁。在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之上,应用层之下的传输层。

2. UDP

3.TCP和UDP区别

4.TCP 协议如何保证可靠传输

1.应用数据被分割成TCP认为最适合发送的数据块。

2.TCP给发送的每个包进行编号,接收方对数据包进行排序,把有序数据传送给应用层。

3.校验和:TCP将保持他首部和数据的校验。这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到段的检验有差错,TCP将丢弃这个报文段和不确认收到此报文段。

4.TCP的接收端会丢弃重复数据。

5.流量控制:TCP连接的每一方都有固定大小的缓冲空间,TCP的接收端只允许发送端发送接收端缓冲区能接纳的数据。当接收方来不及处理发送方的数据,能提示发送方降低发送的速率,防止包丢失。TCP使用的流量控制协议是可变大小的滑动窗口协议(TCP利用滑动窗口实现流量控制)。

6.拥塞控制:当网络拥塞时,减少数据发送。

7.ARQ协议:也是为了实现可靠传输的,它的基本原理就是每发完一个分组就停止,等待对方确认。在收到确认后再发下一个分组。

8.超时传送:当TCP发送一段后,他启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到确认,将重新发送这个报文段。

经验分享 程序员 微信小程序 职场和发展