zoukankan      html  css  js  c++  java
  • 一、浏览器生成消息(2)

    2、向 DNS server查询 web server 的 IP

    qq浏览器解析网址并生成HTTP消息,然后根据域名查询 IP 地址,然后浏览器提供给 OS IP 地址并委托其发送消息。

    (1)、了解 IP 地址

    网络由很多小的子网(上学时宿舍用的交换机连接多台电脑成小子网),通过路由器(范围更大)连接起来组成一个大的网络。

    在网络中,所有设备都会被分配一个地址即IP地址,通过IP地址可判断出目标服务器的位置,从而将消息发到服务器。

    实际的 IP 地址是一串32bit(4字节)的数字,8bit(1字节)一组分为四组,分别用十进制表示再用原点隔开。

    (2)、获取IP

    浏览器调用OS中socket库中的dns解析器(一段程序),向DNS server请求查询域名对应IP,DNS server 会从域名与IP地址的对照表中查找相应的记录(这是一场接力赛,客户端先找到最近一台DNS server即客户端的TCP/IP设置中填写的DNS server 地址 --> 根DNS server --> 下级DNS server --> ... --> 目标DNS server),并返回IP地址,OS收到响应后取出IP放入响应内存中,浏览器从内存中取出IP地址。

    3、委托协议栈发送消息

    输入网址后回车,qq浏览器解析网址并生成HTTP消息,然后根据域名向 DNS server 查询 IP 地址,然后浏览器提供给 OS IP 地址并委托 OS 内部的协议栈向目标IP发送消息。

    要发送给web服务器的HTTP消息是一种数字信息,因此也可以说是委托协议栈来发送数字信息。

    (1)、数据收发操作概览

    向OS内部的协议栈发出委托时,需要按照指定顺序来调用socket库中的程序组件。

    收发数据操作如下,都是委托OS的协议栈执行:

    1. 创建套接字(创建套接字阶段)
    2. 将管道连接到服务器端的套接字上(连接阶段)
    3. 收发数据(通信阶段)
    4. 断开管道并删除套接字(断开阶段)

    这就是HTTP工作过程。

    渐变 --> 突变
  • 相关阅读:
    linux 防火墙管理
    自动化运维监控工具有哪些?常用的开源运维监控工具大全
    编程必备github代码仓库使用
    安全加密算法
    浅笑若风之高效工作流程
    jmeter压力测试工具使用
    ES扩容实战记录
    在5G+AI+CLCP下拉动互联网走向物联网
    设计模式之简单工厂模式
    设计模式之单例模式
  • 原文地址:https://www.cnblogs.com/lybpy/p/8146505.html
Copyright © 2011-2022 走看看