我们要知道当我们在浏览器上输入url之后会发生什么?
1.当我们输入url之后,先进行DNS解析为ip地址然后找到相对应的服务器,
2.建立与服务器连接,请求数据,这个过程就是(TCP的三次握手)
3.确认用户信息 ,找到相对应的资源库,返回相对应的页面(数据),解析页面:css/js/img/html,解析的文件会再次找到相对应的服务器,当都返回完成时
4与服务器断开连接,这个过程就是(TCP的四次挥手)
接下来,我们去了解一下TCP三次握手与四次挥手的过程:
首先:我们先了解一下TCP标志位:
TCP标志位有6种标识
SYN(synchronous建立联机) ACK(acknowledgement确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急) Sequence number(顺序号码) 接收的数据包中的确认号(始终让对方来设置我的序列号,以便于接收方按照序列号对分组数据重组,保证数据的完整性) Acknowledge number(确认号码) 一般是接收数据包中的序列号+该包的有效数据长度。 --------------------- 作者:diligence-zpf 来源:CSDN 原文:https://blog.csdn.net/qdh186/article/details/85603627 版权声明:本文为博主原创文章,转载请附上博文链接!
TCP三次握手是指:
客户端在通过域名或者ip向服务器请求数据时的过程
第一次握手 :客户端向服务器请求数据:
源端口号为:55722
目的端口号为: 9999
确认 :ACK=0,
建立联机:SYN = 1,
顺序号码 :Sequence number = 0,
确认号码 :Acknowledgment number = 0
第二次握手:服务端向客户端返回数据:
源端口号为:9999
目的端口号为:55722
确认 :ACK=1
建立联机:SYN = 1,
顺序号码 :Sequence number = 0,
确认号码 :Acknowledgment number =1
第三次握手:客户端向服务器返回已接收信息的回复
源端口号为:52722
目的端口号为:9999
确认 :ACK=1
建立联机:SYN = 0,
顺序号码 :Sequence number = 1
确认号码 :Acknowledgment number =1
TCP的四次挥手是指:
当客户端向服务器请求数据成功之后断开与服务器之间联系的过程
第一次挥手:客户端向服务器发送结束请求数据:
源端口号为:9999
目的端口号为: 55722
确认 :ACK=1
结束 :FIN=1,
顺序号码 :Sequence number = 7
确认号码 :Acknowledgment number =8
第二挥手:服务器收到请求向客户端返回收到回复信息:
源端口号为:55722
目的端口号为: 999
确认 :ACK=1
结束 :FIN=0,
顺序号码 :Sequence number =8
确认号码 :Acknowledgment number =8
第三次挥手:服务器在没有收到客户端响应时主动向客户端发送断开请求:
源端口号为:55722
目的端口号为: 9999
确认 :ACK=1
结束 :FIN=1,
顺序号码 :Sequence number =8
确认号码 :Acknowledgment number =8
第四挥手:客户端向服务器返回已收到的回复信息:
源端口号为:9999
目的端口号为: 55722
确认 :ACK=1
结束 :FIN=0,
顺序号码 :Sequence number =8
确认号码 :Acknowledgment number =9