20260512-计网知识

URL 解析与网络通信流程

URL 结构解析

本地开发场景示例:
http://localhost:8080/project/xxx.html

  • 协议 :http
  • 主机名 :localhost(解析为 127.0.0.1)
  • 端口 :8080(Tomcat 默认端口)
  • 路径 :/project/xxx.html

公网访问场景示例:
https://www.baidu.com

  • 协议 :https(加密传输)
  • 域名 :www.baidu.com(需 DNS 解析为 IP)
  • 默认端口 :443(HTTPS)
本地地址类型对比
类型 作用范围 是否跨设备访问
localhost 仅本机 ❌
127.0.0.1 本机回环 ❌
192.168.x.x 局域网 ✔️

网络通信核心地址

IP 地址 vs MAC 地址
特性 MAC 地址 IP 地址
层级 数据链路层(L2) 网络层(L3)
作用范围 同一局域网 跨网络全局
可变性 硬件固定(除非更换网卡) 随网络环境变化(如切换WiFi)

关键区别:

  • IP:标识逻辑终点(类似收件人地址),全程不变。
  • MAC:标识下一跳设备(类似快递中转站),每经过一个网络设备更新一次。

数据传输路径示例

以设备 A → 设备 A1 跨网段通信为例:

  1. 局域网内转发

    • 设备 A 发现目标 IP 不在本地网段,将数据帧发送至默认网关(路由器 L1)。
    • 帧头:目标 MAC = 路由器 L1 的 MAC。
  2. 路由器转发

    • 路由器 L1 查询路由表,确定下一跳为三层交换机 L2。
    • 更新帧头:目标 MAC = L2 的 MAC,源 MAC = L1 的 MAC。
  3. 三层交换机处理

    • L2 根据目标 IP 找到 A1 所在网络的路由器,转发数据。
    • 更新帧头:目标 MAC = A1 的路由器 MAC。
  4. 最终交付

    • 目标路由器将数据帧直接发送至设备 A1(目标 MAC = A1 的 MAC)。

DNS 解析流程

  1. 浏览器缓存查询
    • 检查是否缓存过 www.baidu.com 的 IP。
  2. 本地 hosts 文件查询
    • 若未缓存,读取系统 hosts 文件。
  3. 本地 DNS 服务器查询
    • 向 ISP 提供的 DNS 服务器发起请求。
  4. 递归查询
    • 本地 DNS 依次查询根域名服务器 → 顶级域名服务器 → 权威域名服务器。
  5. 返回 IP
    • 最终将解析到的 IP(如 180.101.50.242)返回给浏览器。

TCP 连接管理

三次握手(建立连接)
  1. 客户端 → 服务器
    • 发送 SYN=1, seq=x(同步序列号)。
  2. 服务器 → 客户端
    • 回复 SYN=1, ACK=1, seq=y, ack=x+1。
  3. 客户端 → 服务器
    • 确认 ACK=1, ack=y+1。
四次挥手(关闭连接)
  1. 主动方 → 被动方
    • 发送 FIN=1, seq=u。
  2. 被动方 → 主动方
    • 回复 ACK=1, ack=u+1(半关闭状态)。
  3. 被动方 → 主动方
    • 发送 FIN=1, seq=v。
  4. 主动方 → 被动方
    • 确认 ACK=1, ack=v+1。

完整通信链路示例(访问百度)

  1. URL 解析
    • 提取协议、域名、端口。
  2. DNS 查询
    • 将 www.baidu.com 解析为 IP。
  3. TCP 连接
    • 通过三次握手建立可靠连接。
  4. 数据传输
    • HTTP 请求封装为 IP 数据包,经路由器、交换机逐跳转发至服务器。
  5. 响应返回
    • 服务器生成响应数据,原路返回至浏览器渲染页面。

通信模式对比

模式 特点 典型场景
客户端-服务器 中心化控制,安全性高 Web 服务、即时通讯
P2P 直接传输,速度快但需 NAT 穿透 文件共享、视频通话
相关推荐
局部有解6 小时前
计算机网络:概论知识点整理
计算机网络
KobeSacre21 小时前
计算机网络概览
网络·计算机网络
流浪0012 天前
计算机网络篇8:传输层——序列化与反序列化,TCP 面向字节流的报文边界由应用层自己切
网络协议·tcp/ip·计算机网络·1024程序员节·序列化反序列化·面向字节流·面向数据包
lazy H2 天前
【计算机网络】第 5 篇:TCP 和 UDP 有什么区别?从 Java 后端场景理解两种传输协议
经验分享·后端·网络协议·tcp/ip·计算机网络·1024程序员节
2501_915106323 天前
跨平台抓包工具怎么选?TraceEagle抓包鹰 的四种跨平台能力
网络协议·计算机网络·网络安全·ios·adb·https·udp
流浪0013 天前
计算机网络篇7:传输层——TCP 网络编程常用接口与调用流程
网络协议·tcp/ip·计算机网络·listen·tcp接口
sbjdhjd4 天前
从 VLAN 到 MSTP 的交换网络入门
网络·计算机网络·mac·ip·stp·vlan·交换机
坐看风云变幻4 天前
《系统架构师成长之路》第 3 期|计算机网络:TCP 三次握手与可靠传输
tcp/ip·计算机网络·系统架构
CS_Zero6 天前
计算机网络通信基础2:带宽和吞吐量、客户端和服务器、网络基础设施
网络·计算机网络