通常由上到下分为4层,分别是应用层、传输层、网络层、网络接口层。
应用层
- 作用:为用户提供应用功能,如 HTTP、FTP、Telnet、DNS、SMTP 等。
- 应用层数据一般较大,若超出 MSS(TCP 最大报文段长度),会分成多个 TCP Segment。
- 好处:即使某个分块丢失或损坏,只需重传该分块,而非整个数据包。
传输层
核心功能
- 为应用层提供网络支持,实现 应用到应用 的通信。
- 主要协议:TCP 与 UDP。
TCP(传输控制协议)
- 大部分应用(如 HTTP)使用 TCP。
- 提供可靠性:
- 流量控制
- 超时重传
- 拥塞控制
- 保证数据包可靠地传输给对方。
UDP
- 只负责发送数据包,不保证是否抵达。
- 优点:实时性更好,传输效率更高。
- 可以在应用层实现可靠传输(模仿 TCP 特性)。
端口(Port)
- 作用:在同一台设备上区分不同的应用进程。
- 常见端口:
- 80:HTTP 服务
- 22:远程登录(SSH)
- 客户端(如浏览器):
- 每个标签页通常是独立进程
- 操作系统会为其分配临时端口
网络层
设计思想
- 传输层只需服务好应用层,实际的传输功能交给网络层。
IP 协议(Internet Protocol)
- 将传输层的报文作为数据部分,加上 IP 头部 形成 IP 报文。
- 若 IP 报文超过 MTU(以太网一般为 1500 字节),会再次分片。
IP 地址结构
- 组成:
- 网络号:标识 IP 属于哪个子网
- 主机号:标识同一子网下的不同主机
- 子网掩码用于区分网络号和主机号。
- 示例:
10.100.122.0/24/24表示子网掩码为255.255.255.0(二进制 24 个 1)
主机号计算示例
| 项目 | 二进制表示 |
|---|---|
| IP 地址:10.100.122.2 | 00001010 01100100 01111010 00000010 |
| 子网掩码:255.255.255.0 | 11111111 11111111 11111111 00000000 |
| 网络地址(AND 结果) | 00001010 01100100 01111010 00000000(即 10.100.122.0) |
寻址 vs 路由
- IP 寻址:告诉我们应该“往哪里走”(目标方向)
- 路由:根据目标选择具体路径(如何操作)
- 寻址像导航,路由像操作方向盘。
网络接口层(链路层)
封装过程
- 在 IP 头部之后,加上 MAC 头部,封装成 数据帧(Data Frame) 发送到网络。
IP 与 MAC 的职责区别
- IP 地址:表示网络包的最终目的地(逻辑地址)
- MAC 地址:用于以太网等局域网中标识设备(物理地址)
以太网简介
- 包括:
- 电脑上的以太网 / Wi-Fi 接口
- 以太网交换机
- 路由器上的以太网接口
- 网线等
- 作用:在局域网中连接设备,使它们可以通信。
MAC 头部与 ARP
- MAC 头部包含:
- 接收方 MAC 地址
- 发送方 MAC 地址
- ARP 协议:用于通过 IP 地址获取对方的 MAC 地址。
链路层的作用
- 为网络层提供 链路级别 的传输服务
- 在以太网、Wi-Fi 等底层网络上发送原始数据包
- 工作在 网卡 层次
- 使用 MAC 地址 标识网络上的设备
