Internet Layers
🌐 网络分层与数据传输详解
1. 网络分层概览¶
下表展示了网络通信中各层级的核心要素、协议数据单元及常见设备:
| 层次 | PDU | 常见协议 | 作用位置 |
|---|---|---|---|
| Application Layer(应用层) | Message(消息) | HTTP, SSH, FTP, SMTP/POP3/IMAP, DNS | 应用程序 |
| Transport Layer(传输层) | Segment(TCP) Datagram(UDP) |
TCP, UDP | 网络终端:电脑/手机等物联网设备 |
| Network Layer(网络层) | Packet(包) | IPv4, IPv6 | 路由器 |
| Link Layer(链路层) | Frame(帧) | Ethernet, Wi-Fi | 交换机 |
| Physical Layer(物理层) | Bit(比特流) | \ | 光纤/光缆 |
2. 实例解析:HTTP 与 TCP 的协作¶
HTTP协议是面向应用的(如浏览器与 Web 服务器),比如你现在通过浏览器应用,路由网址来获取我的这篇 blog 内容(不妨称之为 Message)来阅读。
其底层则是由 TCP协议 实现,也就是说应用发起了 HTTP 请求后,网络边缘(Edge Network)的操作系统会调用 TCP 协议栈来完成数据的封装、传输、确认等一系列操作。
3. 各层级详细处理流程¶
以下是数据从应用到物理介质的完整流转过程:
📤 应用层¶
- 生成 Message: 应用层产生要传输的数据。
🚚 传输层¶
- 可靠传输: 例如,TCP 确保数据不丢失、不重复,并按顺序传输。
- 数据分段: 将大块数据分割成较小的 segment,便于网络传输。
- 三次握手: TCP 使用三次握手建立和维护连接的可靠性。
- 流量控制: TCP 通过滑动窗口等机制进行流量控制。
- 错误检测: 传输层头部包含校验和,用于检测数据在传输过程中的错误。
🗺️ 网络层¶
- 路由: 确定数据包 Packet 从源到目的地的最佳路径。
- 寻址: 为数据包 Packet 添加源和目的 IP 地址。
- 分片和重组: 如果数据包大小超过 MTU,网络层会进行分片,并在接收端重组。
🔗 链路层¶
- 封装成帧: 将网络层的数据包封装成帧 Frame,并为帧添加头部和尾部信息。
- 存储转发: 网络设备(如交换机和路由器)存储接收完整的帧 Frame,检查无误后,再转发到下一个节点。
⚡ 物理层¶
- 信号转换: 链路层传递下来的帧被转换成比特流。这些比特通过信号转换器(如网络接口卡 NIC)转换成电信号、光信号或无线信号。
- 信号传输: 转换后的信号通过物理传输介质(如双绞线、光纤、无线电波等)传输。
- 信号接收: 在接收端,物理层设备(如 NIC)接收到信号后,将其转换回比特流。
- 信号检测: 物理层还会检测信号的质量,以确保比特流在传输过程中没有受到过多的干扰或损坏。
- 比特流传递: 一旦信号被转换回比特流,并且通过了质量检测,物理层就会将这些比特流传递给链路层,以便进一步处理。
