在浏览器中输入www.baidu.com后执行的全部过程

    在浏览器中输入www.baidu.com后执行的全部过程
        键盘硬件终端;OS处理中断,转换为特定消息放入浏览器程序的事件队列;浏览器循环处理该消息,请求网址;
        7层网络协议
            应用层
                提供应用程序。

                应用程序解析URL

                    解析出http协议,如果是Https,会检查网站是否在安全列表中

                    非ASCII转Unicode编码

                    在传输信息中加入浏览器、地区、cookie等信息

                域名解析的应用层环节
            表示层
                对数据进行Encode、Decode、加密、解密、压缩等数据处理。
            会话层
                建立管理和终止会话。
                进行HTTP会话  计算机网络·基础知识·面经·HTTP中的请求报文格式
            传输层
                HTTP基于TCP连接
                HTTP数据包会嵌入在TCP报文段中
                域名解析中的DNS进行地址解析环节

    网络层
        TCP报文段再嵌入IP数据包中
        通过查找路由表决定到达服务器的路径。
         ARP协议进行地质解析
    链路层   
        IP数据packet嵌入到Frame,传输Frame
        客户的包通过链路层发送到路由器,ARP(地址解析协议)根据给定的服务器IP地址获取对应的物理地址
    物理层
        传输bit
    传输层
    网络层
    会话层
        HTTP会话
        计算机网络·基础知识·面经·HTTP中的响应报文格式
    表示层
        将数据decode和解压缩为HTML,CSS,JS,图片等资源
    应用层
        应用程序进行HTML解析、CSS解析、页面渲染等。

1、客户端浏览器通过DNS解析到www.baidu.com的IP地址220.181.27.48,通过这个IP地址找到客户端到服务器的路径。客户端浏览器发起一个HTTP会话到220.161.27.48,然后通过TCP进行封装数据包,输入到网络层。

2、在客户端的传输层,把HTTP会话请求分成报文段,添加源和目的端口,如服务器使用80端口监听客户端的请求,客户端由系统随机选择一个端口如5000,与服务器进行交换,服务器把相应的请求返回给客户端的5000端口。然后使用IP层的IP地址查找目的端。

4、客户端的链路层,包通过链路层发送到路由器,通过邻居协议查找给定IP地址的MAC地址,然后发送ARP请求查找目的地址,如果得到回应后就可以使用ARP的请求应答交换的IP数据包现在就可以传输了,然后发送IP数据包到达服务器的地址。
---------------------
作者:BrotherDongDong
来源:CSDN
原文:https://blog.csdn.net/wzwdcld/article/details/81569372
版权声明:本文为博主原创文章,转载请附上博文链接!

posted @ 2018-10-17 23:05  不停地奔跑  阅读(1422)  评论(0编辑  收藏  举报