• 在浏览器中输入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
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    vs code 使用小技巧
    数组22组合
    js--arTemplate引擎
    JAVA -简要记录maven的安装与环境变量的配置
    JAVA -简要记录jdk的安装与环境变量的配置
    浅谈“复制粘贴”对于程序员的伤害
    C#中 IndexOf的使用
    C# Substring函数的总结
    C# 还原Nuget包失败的解决方法
    C# 未能找到类型或命名空间名称“XXXX”(是否缺少 using 指令或程序集引用?)解决方案
  • 原文地址:https://www.cnblogs.com/dylq/p/9807786.html
Copyright © 2020-2023  润新知