美文网首页
浏览器地址栏输入一个URL到收到结果经历了哪些步骤

浏览器地址栏输入一个URL到收到结果经历了哪些步骤

作者: 转身丶即天涯 | 来源:发表于2019-08-21 10:48 被阅读0次

    1.用户输入URL时,浏览器会对输入的URL格式进行检查。
    2.如果只是输入了域名而没有输入网络协议,则默认协议为HTTP,浏览器会帮你自动补全。如果要使用HTTPS需要明确指定。
    3.DNS查询,先查自己的DNS Cache,再查硬盘里的host文件,如果都没有则会去查询DNS服务器,服务器会查询URL的根域名,比如zhihu.com的com,从而获取URL的IP地址,如果DNS服务器查找到了此域名对应的IP地址,则将IP返回给浏览器,使用的是UDP协议。
    4.然后浏览器会通过tcp三次握手和IP地址建立虚拟通道,并将http请求打包放入传输层,通过路由表找到IP地址的服务器,请求到达服务器。
    5.服务器端返回允许通信的response到浏览器,浏览器将请求打包通过TLS协议和服务器商议通信方案,内容有TLS版本、认证算法、加密算法、数据校验算法、随机码。商议完通信方案后,浏览器需要验证服务器的数字证书。
    6.如果通过验证后,浏览器会获得URL中域名的公钥,然后TLS还会检查证书的有效期,再检查证书是否被吊销。
    7.如果一切正常,TLS协议会用刚刚获取的公钥加密一段随机的字符串,发送给TLS服务器,服务器用自己的私钥解密,得到明文字符串。至此整个TLS沟通过程完成,session key只有TLS和TLS服务器知道。
    8.然后再把包装过的数据包给TCP协议,然后数据包到达服务器,不过端口号变为443,TLS服务器用私钥解密数据包,得到明文。
    9.然后将数据包的明文给服务器(应用服务器),服务器将网页的主题信息返回给浏览器。

    相关文章

      网友评论

          本文标题:浏览器地址栏输入一个URL到收到结果经历了哪些步骤

          本文链接:https://www.haomeiwen.com/subject/lozpsctx.html