笔试题--URL输入浏览器后经历的过程

URL输入浏览器后经历的过程

1.URL解析

判断输入的URL是否为标准的URL格式,如果不是需要通过搜索引擎搜索。

2.DNS解析

浏览器并不能直接通过URL找到网页,只能通过IP地址来定位。URL只是IP带上的一层面具的伪装,通过浏览器缓存---->操作系统缓存---->本地DNS缓存---->根域名服务器这样的流程搜索。其中浏览器缓存---->操作系统缓存---->本地DNS缓存是一个递归搜索的过程,本地DNS缓存---->根域名服务器是一个迭代搜索过程。

3.建立TCP连接,三次握手

1.浏览器向服务器发送SYN=1,Seq=X的数据包到服务器。(代表浏览器想要向服务器发送连接请求)
2.服务器发送SYN=1,ACK=X+1,Seq=Y的数据包回浏览器。(表示同意连接请求)
3.浏览器传回ACK=Y+1,Seq=Z的数据包,握手结束。(表示收到响应包,马上要发送连接请求)

4.发送HTTP请求

5.处理并响应报文

6.渲染网页

7.断开连接,四次挥手

1.客户端发送Fin=1,Ack=Z,Seq=X,表示没有数据需要发送了,进入FIN_WAIT_1状态。
2.服务器发送ACK=X+1,Seq=Z,表示服务器同意关闭请求,进入FIN_WAIT_2状态。
3.服务器发送Fin=1,Ack=X,Seq=Y,表示响应报文发送完成,进入LAST_ACK状态。
4.客户端发送ACK=Y,Seq=X表示成功接受响应报文,进入TIME_WAIT状态。

TCP协议规定:
ACK=1时有效,当建立连接后的ACK都必须为1。
SYN=1时ACK=0时,代表该报文为请求建立连接报文,若对方同意则回复SYN=1,ACK=1
SYN=1时,该报文一定是请求建立连接报文或者同意接受连接报文。

猜你喜欢

转载自blog.csdn.net/weixin_46002001/article/details/125269219