• 1


    一、DNS解析

    1. 查询浏览器缓存
    2. 查询系统缓存(nslookup baidu.com
    3. 查询系统host文件
    4. 查询本地路由器
    5. ISP的缓存 DNS 服务器(假设在所有缓存上述1-4都没查到域名对应的ip地址,同时不知道默认网关的mac地址)
      • 5.1、使用arp获取默认网关地址
      • 5.2、组织数据发送给默认网关(ip还是DNS服务器的ip,但是mac地址是默认网关的mac地址)
      • 5.3、默认网关转发数据给路由器
      • 5.4、路由器根据自己的路由协议会选择一个合社 的较快的路径把数据给DNS服务器的网关
      • 5.5、目的网关把数据转发给DNS服务器
      • 5.6、DNS服务器查询解析出 baidu.com对应的ip地址,DNS服务器回答报文

    二、TCP连接

    得到baidu.com对应的 ip地址 ,会与目的服务器进行tcp连接,经过3次握手,建立连接

    三 、HTTP请求

    1. 使用http发送请求数据给baidu.com对应的服务器
    2. 服务器收到数据请求后,通过查询自己的服务器得到相应的结果,原路返回给浏览器
    3. 浏览器收到 数据后 ,通过浏览器 自己的渲染功能来显示baidu.com这个页面

    四、关闭TCP连接

    浏览器主动关闭TCP连接




    备注:上述过程可用cisco Packet模拟

    思科-网络学习工具cisco Packet (免费使用),支持mac和windows

    思科网络学习网站:https://www.netacad.com/zh-hant/courses/packet-tracer

  • 相关阅读:
    前端大文件分片上传/多线程上传
    网页大文件分片上传/多线程上传
    docker基础入门之二
    linux之iptable
    linux内核之网络协议栈
    ubuntu之iptables
    c++栈管理库TCMalloc、jeMalloc
    curl之post提交xml
    ceph基本操作整理
    docker基础入门之一
  • 原文地址:https://www.cnblogs.com/snailrunning/p/14346978.html
Copyright © 2020-2023  润新知