查找域名对应的IP地址
包括DNS(根据域名查找IP地址)的查找过程:浏览器缓存-》系统缓存-》本地DNS服务器缓存
浏览器搜索自己的DNS缓存(维护一张域名与IP地址对应表)
搜索操作系统中的DNS缓存(维护一张域名与IP地址对应表)
搜索操作系统的hosts文件(windows环境下,维护一张域名与IP地址对应表)
操作系统将域名发送到本地区域服务器(LNDS),进行查找,成功则返回结果(递归查询),失败则发起一个迭代DNS请求(迭代查询)
本地域名服务器LDNS将得到的IP地址返回给操作系统,同时也将IP地址缓存起来
操作系统将IP地址返回给浏览器,同时将IP地址缓存起来
所以,浏览器得到了域名对应的IP地址
DNS迭代查询和递归查询
递归查询
客户端与服务器之间属于递归查询,即当客户机想DNS服务器发出请求后,若DNS服务器本身不能解析,会向另一个DNS服务器发出查询请求,最后将结果转交给客户端的过程。
服务器必须回答目标IP与域名的映射关系。
迭代查询
DNS服务器之间属于迭代查询。
服务器接收到一次迭代查询回复一次结果,这个结果不一定死目标IP与域名的映射关系,也可以是其他DNS服务器的地址。
本地域名服务器LDNS向根域名服务器(保存com.net.org等顶级域名服务器的地址)发起请求,根域名服务器返回com域的顶级域名服务器地址
本地域名服务器LDNS向com域的顶级域名服务器发起请求,返回biadu.com域名服务器的地址(主域名服务器)
本地域名服务器LDNS向baidu.com域名服务器发起请求,得到。。。的IP地址
建立连接(TCP的三次握手)
三次握手采用TCP协议,保证了信息传输的可靠性,三次握手过程中,若一方收不到确认信息,协议就会要求重新发送信号
构建网页
当服务器和主机建立连接之后,主机便于服务器进行通信。
页请求是一个单向请求的过程,即是一个主机箱服务器请求数据,服务器返回响应数据的过程。
浏览器根据URL内容生成http请求,请求中包含请求文件的位置,请求文件的方式(get,post)
服务器接到请求后,会根据http请求中的内容决定如何获取相应的html文件
服务器将得到的html文件发送给给浏览器
在浏览器还没完全接受到html文件时候就开始下载,解析,执行以便显示页面
在执行html文件中,根据需要会向服务器继续请求图片,css,js等文件,此过程跟请求html文件类似
参考:浏览器工作原理
断开连接(TCP的四次挥手)
等待2个报文传送周期的原因:
如果第四次握手的确认信息丢失,服务器将会重新发送第三次握手的断开连接的信号,而服务器发觉丢包与重新发送的断开连接到达主机的时间正好为 2 个报文传输周期。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。