一、计算机网络到底在做什么?
**本质:把数据从一台设备,可靠 / 快速地送到另一台设备。**为了做到这件事,需要解决:
- 怎么标识设备(地址)
- 怎么找到路径(路由)
- 怎么保证不丢、不错、不被窃听(可靠 / 安全)
- 怎么让不同设备、不同系统能互相听懂(协议)
二、分层思想:网络的 "总架构"
1. 为什么要分层?
- 复杂问题拆小
- 各层只干自己的事
- 方便替换、升级、排错
- 下层为上层服务,上层使用下层能力
2. 实用模型:TCP/IP 四层(开发 / 面试主流)
- 应用层:给用户 / 软件用(HTTP、DNS、FTP)
- 传输层:端到端传输(TCP、UDP)
- 网络层:跨网寻址转发(IP、ARP、ICMP)
- 网络接口层:局域网内传输(以太网、MAC)
三、每层核心原理(从上到下)
1. 应用层:你每天都在用的一层
作用:规定 "数据长什么样、怎么交互"
- HTTP/HTTPS:网页、接口
- DNS:域名 → IP
- FTP:文件传输
- WebSocket:长连接、实时通信
特点:
- 面向业务
- 基于传输层协议(大多基于 TCP)
2. 传输层:程序之间的快递员
作用:实现 进程 ↔ 进程 的通信 靠 端口号 区分不同应用。
两个核心协议:
① TCP(可靠快递)
- 面向连接
- 可靠:丢包重传、有序、校验
- 流量控制 + 拥塞控制
- 面向字节流
- 场景:网页、文件、登录、接口
② UDP(短信 / 快递包裹)
- 无连接
- 不保证可靠、不管顺序
- 速度极快、开销小
- 面向数据报
- 场景:直播、游戏、视频通话、DNS 查询
3. 网络层:跨网导航系统
作用:实现 主机 ↔ 主机 的通信 负责寻址 + 路由选择。
核心协议
-
IP
- 给每台设备一个地址
- IPv4:32 位,如
192.168.1.10 - 尽力投递,不保证可靠
-
ARP
- 功能:IP → MAC 地址
- 局域网内广播问路
-
ICMP
- 探测网络是否通
ping命令就是基于它
4. 网络接口层:局域网内搬运工
作用:同一局域网内,设备之间传帧
- 用 MAC 地址 标识网卡
- 单位:帧(Frame)
- 代表:以太网、Wi-Fi
四、数据怎么流动:封装与解封装
发送方(从上到下封装) 应用数据→ 加 TCP/UDP 头 → 段 / 报文 → 加 IP 头 → 包 → 加帧头 / 尾 → 帧→ 转为比特流发出
**接收方(从下到上解封装)**比特流 → 拆帧头 → 拆 IP 头 → 拆 TCP 头→ 纯数据交给对应应用
一句话:每一层只认识自己的头,不关心上层数据是什么。
五、网络最核心流程:打开一个网页发生了什么?
- 浏览器查 DNS,把域名解析成 IP
- 浏览器与服务器建立 TCP 三次握手
- 浏览器发送 HTTP 请求
- 服务器处理,返回 HTTP 响应
- 浏览器渲染页面
- 结束后 TCP 四次挥手 断开
如果是 HTTPS :在 TCP 连接后,多一步 TLS 握手(加密协商)。
六、必须掌握的硬核概念
1. 无状态 vs 有状态
- HTTP 无状态:服务器记不住你
- 用 Cookie + Session 实现 "记住你"
2. 三次握手(建立 TCP)
目的:
- 确认双方收发正常
- 同步序列号
过程:
- C → S:SYN
- S → C:SYN+ACK
- C → S:ACK
3. 四次挥手(断开 TCP)
因为是全双工,两边要分别关闭:
- A:我发完了(FIN)
- B:收到(ACK)
- B:我也发完了(FIN)
- A:收到(ACK)
4. HTTPS 加密逻辑
- 非对称加密:安全交换对称密钥
- 对称加密:真正传输数据
- 数字证书:防中间人掉包公钥
七、设备分别工作在哪一层?
- 路由器:网络层(根据 IP 转发)
- 交换机:数据链路层(根据 MAC 转发)
- 防火墙:多层(可按端口 / 应用过滤)
八、高频问题一句话答案
-
**TCP 和 UDP 区别?**TCP 可靠、慢、面向连接;UDP 不可靠、快、无连接。
-
**IP 和 MAC 区别?**IP 标识网络位置,MAC 标识网卡硬件。
-
**HTTP 和 HTTPS 区别?**HTTP 明文 80;HTTPS 加密 443,多了 TLS 层。
-
**为什么要三次握手?**防止失效连接建立,浪费资源。
-
**为什么 DNS 一般用 UDP?**小包、快、允许偶尔丢包。
-
**什么是拥塞控制?**网络堵了,TCP 主动减慢发送速度。
-
**什么是会话保持?**用 Cookie 带 SessionId,让服务器认出同一个用户。
九、极简知识地图(可直接背诵)
- 应用层:HTTP/DNS → 业务数据
- 传输层:TCP/UDP + 端口 → 进程间传输
- 网络层:IP/ARP + 路由 → 跨网寻址
- 链路层:MAC + 以太网 → 局域网传输
- 整体流程:封装 → 传输 → 解封装
- 核心目标:连通、寻址、可靠、安全