在浏览器输入一个网址,按回车之后发生了什么
1.浏览器会根据这个URL去查找其对应的IP
<1> 查找浏览器缓存,浏览器会保存之前访问过的一些网站DNS(域名系统 英文:Domain Name System)信息。
<2> 如果浏览器缓存没找到对应的ip,浏览器发送一个请求到路由器,然后在路由器缓存上查找记录,路由器一般也存有DNS信息.
<3>如果还没有,请求将发送到ISP(Internet Service Provider,互联网服务提供商) ,互联网服务提供商会有相应的DNS服务器,再看ISP的DNS缓存.
<4>解析域名,返回ip给浏览器.(解析域名www.baidu.com,首先解析.com的域名,然后跑到管理.com的服务器上进一步查询,然后是.baidu,最后是www,所以域名结构是:三级域名.二级域名.一级域名。)
2.进行TCP连接
HTTP包的传输是依靠TCP的传输,建立三次握手,建立TCP连接.
3.浏览器给这个IP的服务器,发送http请求.
请求包括GET/POST、url、协议、浏览器头、cookies信息等
4.服务器收到浏览器请求后,向客户机发送HTTP响应报文
包括HTTP版本、事件、cookies等,并查找请求的资源是否存在响应
5.浏览器解析渲染页面
当服务器返回响应之后,浏览器读取关于这个响应的说明书(响应头),然后开始解析这个响应并在页面上显示出来。
6.关闭TCP连接
当数据完成请求到返回的过程之后,根据Connection的Keep-Alive属性可以选择是否断开TCP连接,四次挥手释放.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。