输入网址后发生了什么

  • 输入url

    统一资源定位器uniform resource locator

    • url组成

      https://www.baidu.com/
      协议://域名[:端口]/路径
      
      file:///H:/BaiduNetdiskDownload/
    • url作用

      定位指定的资源.

      url是uri的一个子集, uri是唯一标识符的意思. 身份证可以是uri, 但不是url.
  • DNS解析

    域名系统Domain Name System, 将域名解析为IP地址

    • 域名解析流程

      域名(www.baidu.com) -> DNS服务器->返回真实的IP地址36.152.44.96:443 -> 通过IP地址访问服务器

  • 客户端与服务器建立连接.

    客户端和服务端要互相确认身份, 建立连接通道后再发送数据

  • 客户端正式向服务端发送请求.
  • 服务端处理请求并返回结果
  • 浏览器接收到响应后, 做相应的渲染

TCP/IP五层协议

https://www.cnblogs.com/xjtu-lyh/p/12416763.html

img

img

img

  • 应用层

    为进程(客户端应用)和进程(服务器应用)之间提供服务. 应用层协议定义了应用之间进行数据交互的方式.

    浏览网页
    网易云
    用python模拟请求
    • 应用层协议

      • HTTP/HTTPS(超文本传输协议)
      • DNS(域名系统)
      • FTP(文件传输协议)
      • SMTP(邮箱传输协议)
  • 传输层

    负责向两个主机应用进程的通信提供服务.

    一个主机可以开启不同的因看应用, 同不同的服务器之间进行通信, 但是都是共用一个传输服务来发送和接受信息
    进程 <---> 进程
    • 传输层协议

      • TCP(传输控制协议)

        提供面向连接, (尽可能)可靠的数据传输服务.

        一对一
        面向连接指的就是, 客户端和服务端进行三次交互验证, 也就是TCP三次握手. 建立连接后才可以发送数据.
        • 文件传输(FTP)
        • 浏览网页(HTTP)
      • UDP(用户数据协议)

        提供无连接的, 不保证数据传输的可靠性

        一对多, 一对一, 多对多...
        • 直播
        • 实况游戏
  • 网络层

    决定了数据的转寄和路径选择, 封装和分组运输层产生的报文段/用户数据段.

    主机 <---> 主机
    • 网络层协议

      • IP协议

        • 公网IP

          也就是指的传统IP地址, 是唯一的.

        • 局域网IP

          ipconfig
  • 数据链路层

    负责两台主机之间的数据传输, 向网路层提供数据传输服务

    网卡 <---> 网卡
    • 数据链路层的作用

      比特流在传输媒介上传输时肯定有误差, 数据链路层的作用就是检错和纠错

      • *流量控制
      • 差错检测
      • 差错控制
  • 物理层

    物理层再局部局域网上传送数据帧, 在设备节点传输比特流.

    光纤 <---> 光纤
    • 物理层和数据链路层

      物理层才是真正传输数据的, 数据链路层是用来检查数据完整性的.
Last modification:September 6, 2022
如果觉得我的文章对你有用,请随意赞赏