我们常说的“计算机网络五层协议模型”,是一个实际应用中广泛采用的简化模型(介于OSI七层(Open System Interconnect)与TCP/IP四层之间),用于描述网络通信中各层的职责与作用。
文章目录
- 第5层:应用层(Application Layer)
- 第4层:传输层(Transport Layer)
- 第3层:网络层(Network Layer)
- ping
- ICMP
- ARP
- NAT
- 第2层:数据链路层(Data Link Layer)
- 第1层:物理层(Physical Layer)
层次 | 功能 | 协议示例 |
---|---|---|
应用层 | 提供具体应用服务,直接面向用户 | HTTP、FTP、SMTP、DNS |
传输层 | 提供端到端的通信服务,负责数据分段、重组、可靠性控制 | TCP、UDP |
网络层 | 实现不同主机间的通信与路由选择,负责寻址与转发 | IP、ICMP、ARP、NAT |
数据链路层 | 管理一跳内通信(如主机到路由器),负责成帧、差错检测、MAC寻址 | Ethernet、PPP、802.11(Wi-Fi) |
物理层 | 负责比特流的物理传输,管理电信号/光信号的发送与接收 | RJ45、光纤、无线电波(硬件标准) |
第5层:应用层(Application Layer)
第4层:传输层(Transport Layer)
第3层:网络层(Network Layer)
ping
ping 命令用的ICMP协议、IP、Ethernet、ARP
域名解析用到了 DNS解析,UDP + DNS 协议
ICMP
为“网络诊断”设计的协议:
- ping(检测连通性)
- traceroute(追踪路由路径)
- 报告 IP 层错误(如主机不可达)
ARP
将 IP 地址解析为 MAC 地址(以太网环境下)。实则是广播问,问到后存到ARP缓存表。
网络通信靠 IP 地址,但网卡收发数据靠的是 MAC 地址
当主机只知道对方的 IP,却不知道 MAC,就需要用 ARP 来“问一问”
NAT
在不同网络之间转换 IP 地址和端口,常用于“局域网访问外网”
IPv4 地址不够用,很多内网只能用私有地址(如 192.168.x.x)
外网不识别私有地址 → 需要 NAT 转换成公网 IP 才能访问外部网络
类型:
类型 | 说明 |
---|---|
SNAT(源地址转换) | 内网出网时,将源 IP 改为公网 IP |
DNAT(目的地址转换) | 外网访问内网服务时,目标 IP 改为内网 IP |
NAPT(端口地址转换) | 多个内网主机共享一个公网 IP(最常见) |
NAPT 例子:
内网 IP:端口 | 公网 IP:端口 |
---|---|
192.168.1.100:54321 | 8.8.8.8:40001 |
192.168.1.101:54321 | 8.8.8.8:40002 |
NAT 破坏【端到端通信】(P2P 协议/视频通话难打通)(NAT 会隐藏内网真实 IP,所有内网设备共享公网 IP,且端口会被重新映射。)
需要 NAT 穿透技术(如 STUN、TURN、ICE)
- STUN(Session Traversal Utilities for NAT)
帮助客户端检测自己的公网 IP 和 NAT 类型。
尝试利用 NAT 映射的端口建立直接 P2P 连接。 - TURN(Traversal Using Relays around NAT)
如果直接 P2P 失败,流量会通过中继服务器转发。
这样即使在严格 NAT 或防火墙后,也能保证通话连接。 - ICE(Interactive Connectivity Establishment)
综合利用多种网络路径(包括STUN、TURN),寻找最佳连接路径。
第2层:数据链路层(Data Link Layer)
第1层:物理层(Physical Layer)
直接和物理介质(如双绞线、光纤、无线)打交道,负责将比特(0 和 1)转换成电信号、光信号或无线电波,并进行实际的传输。
常见的物理层标准
名称 | 用途 | 特点 |
---|---|---|
RS-232 | 串口通信 | 老式串口 |
USB | 外设连接 | 通用传输标准 |
IEEE 802.3 | 以太网物理层 | 定义网线电气特性 |
IEEE 802.11 | Wi-Fi | 定义无线通信物理特性 |