王剑编程网

分享专业编程知识与实战技巧

从浏览器访问百度的首页这个过程,涉及到哪些协议

从浏览器访问百度首页(https://www.baidu.com)的过程涉及 多层网络协议 的协作,涵盖 应用层、传输层、网络层、链路层和物理层。以下是关键协议及其作用的分步解析:


1.应用层协议

(1)DNS 协议(域名解析)

  • 作用:将域名 www.baidu.com 解析为 IP 地址(如 180.101.49.12)。
  • 协议
    • DNS over UDP:默认使用 UDP 端口 53(查询响应快,适合小数据包)。
    • 若响应过大(如 DNSSEC),可能回退到 DNS over TCP
    • 现代浏览器可能支持 DNS over HTTPS (DoH)DNS over TLS (DoT)(加密 DNS 查询)。

(2)HTTP/HTTPS 协议(网页传输)

  • HTTP/1.1 或 HTTP/2
    • 早期使用 HTTP(明文传输,已淘汰),现在默认 HTTPS(加密)。
    • HTTP/2 支持多路复用,提升加载效率。
  • TLS/SSL 协议(加密层):
    • 在 HTTPS 中,先通过 TLS 握手(如 TLS 1.2/1.3)建立安全连接。
    • 涉及 证书验证(百度服务器的数字证书由 CA 颁发,如 DigiCert)。

2.传输层协议

(1)TCP 协议(可靠传输)

  • 作用:建立端到端可靠连接,确保数据有序、无丢失。
  • 关键过程
    • 三次握手:浏览器与百度服务器(如 180.101.49.12:443)建立 TCP 连接。
    • TLS 握手:在 TCP 连接上协商加密参数(如密钥交换算法、对称加密算法)。
    • 数据传输:HTTP 请求(如 GET /)和响应(HTML 页面)通过 TCP 传输。
    • 四次挥手:页面加载完成后释放连接(HTTP/1.1 可能复用连接)。

(2)UDP 协议(可选)

  • 若使用 QUIC 协议(HTTP/3 的基础),则基于 UDP 实现快速连接(减少握手延迟)。

3.网络层协议

(1)IP 协议(路由寻址)

  • IPv4/IPv6
    根据网络环境选择 IP 版本(如 180.101.49.12 是 IPv4,百度也支持 IPv6)。
  • 路由选择
    数据包通过路由器跳转,依赖
    OSPF、BGP 等路由协议(运营商网络层)。

(2)ICMP 协议(辅助控制)

  • 作用
    用于网络诊断(如 ping www.baidu.com 使用 ICMP Echo 请求/响应)。

4.链路层与物理层协议

(1)以太网/Wi-Fi 协议(局域网传输)

  • MAC 地址
    数据包在本地网络通过 MAC 地址(如网关路由器)转发。
  • ARP 协议
    将网关 IP 解析为 MAC 地址(若本地缓存不存在)。

(2)物理介质(信号传输)

  • 有线:光纤/网线(使用 Ethernet 协议)。
  • 无线:Wi-Fi(IEEE 802.11 a/b/g/n/ac/ax)。



完整流程示例

  1. 输入 URL:https://www.baidu.com → 浏览器解析域名。
  2. DNS 查询:通过 UDP 53 端口获取百度服务器的 IP。
  3. TCP 连接:与 180.101.49.12:443 三次握手。
  4. TLS 握手:协商加密算法,验证证书。
  5. HTTP 请求:发送 GET / 请求,接收 HTML 响应。
  6. 资源加载:解析 HTML,加载 CSS/JS(复用连接或新建 HTTP/2 流)。
  7. 渲染页面:浏览器渲染最终页面。
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言