AI智能
改变未来

在浏览器输入googl.com会发生什么?

这个问题涉及的知识点比较多,在这里简单地将整个过程阐述一下。

在你输入完google.com按下回车之后,首先浏览器会进行URL解析
如果URL非法,浏览器会将地址栏中的文字传给搜索引擎,大部分情况下传给搜索引擎的时候URL会带有一串字符,说明本次搜索是特定浏览器发起的。
如果不非法,那就检查是否包含非ASCII字符,如果有进行转码。
之后会检查HSTS列表(HTTP严格安全传输),如果该网站在列表内,则将协议头换为HTTPS,否则将继续以HTTP协议请求。
但需要注意,就算网站不在列表内,在第一次请求后,网站也可以要求浏览器以HTTPS进行请求,但是这样容易受到降级攻击,所以现在浏览器都预置HSTS列表。
至此URL解析完毕。

之后我们要进行DNS查询找到目标服务器的IP地址
首先我们查看域名是否在缓存中,若在则得到IP地址,若不在则去本地HOSTS查询,若也没有,则开始DNS解析
首先先向本地DNS服务器发送查询请求(先用ARP找到DNS或者网关的IP),如果本地DNS没有,则发出一个递归请求,逐层向上查询,直到找到返回。
这样就找到了目标服务器的IP地址

我们能从URL中获得端口号,组成套接字,我们就可以建立TCP连接了(三次握手)
在传输层(OSI第4层)被封装成TCP段,在网络层加个IP头部,变成TCP包,在链路层加帧头部,内包含网关MAC地址及本地网卡MAC地址。
封包结束就可以发送了。

随后浏览器可想目标服务器发送HTTP请求,服务器会返回一个响应码,随后服务器会发送有效负载(HTML,CSS,JS等)

之后断开TCP连接,浏览器进行解析渲染,最后呈现出来google首页。

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » 在浏览器输入googl.com会发生什么?