前端面试总结之你输入一个网址之后发生的事情

1.当我们在浏览器里输入一个网址的时候,浏览器首先对请求头进行包装,通过dns解析,在当前缓存里查找域名,如果没找到,再向上一层进行查找,直到找到当前网址的ip地址,与服务器建立连接。

2.连接之后,服务端收到了来自客户端的请求,然后把当前ip地址对应的html文件发送给了浏览器,浏览器进行解析,同时加载里面的资源文件。

3.客户端收到了服务端的内容后,告诉服务端我已经收到了你的消息,我现在没有别的东西要请求了,进入半关闭状态。此时服务端还可以向客户端传递消息,而客户端不再向服务器发送。

4.服务端收到客户端的消息,看看自己还有没有要告诉客户端的,没有的话,告诉客户端我没什么要和你说的了,我也要关闭了,于是服务端也进入了最后连接状态,释放TCP连接。

5.客户端收到了服务端的消息,告诉服务端我知道你进入了最后连接状态,我要关闭了,客户端进入了关闭状态。

6.服务端收到客户端发送的关闭通知,也进入了关闭状态。

这就是浏览器的三次握手和四次挥手原则。

客户端状态变化:未连接----->SYN-SEND----->ESTABLISHED----->FIN-WAIT-1----->FIN-WAIT-2----->TIME-WAIT----->CLOSED

服务器状态变化:未连接----->SYN-RCVD----->ESTABLISHED----->CLOSE-WAIT----->LAST-ACK----->CLOSED

你可能感兴趣的:(前端面试总结之你输入一个网址之后发生的事情)