TCP && UDP详解

2021-09-14  本文已影响0人  dengbinhero

一:TCP三次握手的流程:  

SYN:synchronous 同步    |        ACK:acknowledgement 确认应答    |    Seq:Sequence  序列(随机生成)

SYN == 1:表示建立TCP连接;  ACK标志表示验证字段;  Seq序列码随机生成,用于校验属于同一个连接请求  

第一次握手:客户端向服务端发起连接请求,首先客户端随机生成一个起始序列号Seq,那客户端向服务端发送的报文段包含SYN=1 && seq=100;

第二次握手:服务端收到客户端发的请求报文,通过教研SYN==1,一个连接请求,于是将客户端的起始序列号100存起来,并且随机生成一个服务端的起始Seq序列号(比如是300)。然后给客户端回复报文:SYN=1 && ACK=101(客户端发过来的seq+1) && Seq=300

第三次握手:客户端收到服务端的回复,发现ACK=1 && ack=101,得出server成功收到了Seq==100的报文;且SYN==1,代表server同意了这次连接,于是就将服务端的序列号300给存下来。然后客户端再回复一段报文给服务端:Seq=101 && ACK=301;

二:TCP为什么需要三次握手:  

1:握手的目的是什么:

目的1:Client确认:收消息 && 发消息 正常;

目的2:Server确认:收消息 && 发消息 正常;

第一次握手:server收到Client的请求,代表server收消息正常  

第二次握手:client收到sever的ACK回执,代表client发消息正常(代表第一次握手server收到了),且client收消息正常  

第三次握手:server收到Client的ACK,代表server发消息正常;

三:TCP和UDP比较:  

1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接

2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付

3、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的

四:TCP保证可靠性的策略:

TCP特点:无差错、不丢失、不重复、并且按序到达

1、序列号和确认应答信号  

2、超时重发控制

3、连接管理 

4、滑动窗口控制  

5、流量控制  

6、拥塞控制  

TCP协议可靠性是如何保证之滑动窗口,超时重发,序列号确认应答信号  

三:TCP和UDP比较:  

四:TCP可靠性表现在什么方面:

五:HTTPS加密流程:

六:DNS解析和DNS劫持:

三:TCP和UDP比较:  

上一篇 下一篇

猜你喜欢

热点阅读