Skip to content
Kurisu
Go back

TCP/IP 与 OSI 模型

计算机网络的核心思想是分层——将复杂的通信问题拆解为可执行的步骤,每一层在下层提供的服务基础上提供增值服务。


一、计算机网络的诞生与发展

计算机网络是指将计算机设备连接起来以实现信息传递的系统。其发展大体分为四个阶段:

1997 年,比尔·盖茨提出”网络才是计算机”的精辟论点,充分体现出计算机网络的重要基础地位。


二、OSI 七层参考模型

2.1 背景与核心思想

1979 年由 ISO(国际标准化组织)颁布了 OSI/RM(开放式系统互连参考模型)

核心思想是分层——将复杂的网络通信过程拆解为七个层次,每一层完成特定的功能。分层的目的是:

2.2 七层详解

层次名称主要功能数据单元
7应用层 (Application)提供网络服务接口(HTTP、FTP、DNS 等)数据报文
6表示层 (Presentation)数据格式转换、加密解密、压缩数据报文
5会话层 (Session)管理通信会话,建立/维持/断开连接数据报文
4传输层 (Transport)端到端可靠传输,流量控制,差错控制段 (Segment)
3网络层 (Network)逻辑寻址与路由选择包 (Packet)
2数据链路层 (Data Link)物理寻址(MAC)、成帧、差错检测帧 (Frame)
1物理层 (Physical)二进制信号与物理介质传输比特流 (Bits)

应用层(Application Layer)

应用层指的是一类能够实现网络通信的特定应用协议(即”服务”)。常见的应用层协议包括:

表示层(Presentation Layer)

负责数据格式转换,如编码转换、加密解密、压缩等。可以理解为将人类语言输入计算机并编码表达的过程。

会话层(Session Layer)

管理通信会话,负责建立与断开通信连接,管理下层通信。

应用层、表示层、会话层是面向程序的层次,而下面四层是面向数据传输的层次。

传输层(Transport Layer)

主要任务是管理两个节点之间的数据传输,提供应用进程间的逻辑通信。

传输层地址为端口号,取值范围 0-65535:

传输层的两大核心协议——TCPUDP,将在第四章详细介绍。

网络层(Network Layer)

负责数据从一台主机到另一台主机的传递,提供逻辑寻址(IP 地址)和路由选择功能。

核心协议:

MAC(介质访问控制层)LLC(逻辑链路控制层) 两个子层构成。

主要功能:

物理层(Physical Layer)

负责将二进制 01 转换为物理信号(电信号、光信号等),并通过介质进行传输。

常见传输介质:

介质类型特点传输距离
同轴电缆耐用,抗干扰强,造价高较长
双绞线(5类/超5类/6类)造价低,易弯折,最常用100米
光纤(单模/多模)抗干扰极强,传输远,质量高数千米至数百公里
无线移动性好,连接方便视环境而定

三、TCP/IP 四层模型

在 OSI 模型的影响下,各厂商纷纷完善自己的协议体系。其中 TCP/IP 体系由美国国防部提出,后被 IETF(互联网工程任务小组)维护和发扬光大,最终成为互联网的事实标准。

3.1 TCP/IP 协议簇

TCP/IP 模型将网络通信分为四个层次:

TCP/IP 层次对应 OSI 层次核心协议
应用层 (Application)应用层 + 表示层 + 会话层HTTP、FTP、DNS、SMTP、Telnet、DHCP
传输层 (Transport)传输层TCP、UDP
网际层 (Internet)网络层IP、ICMP、ARP、RARP
网络接入层 (Network Access)数据链路层 + 物理层Ethernet、PPP、HDLC、WiFi

3.2 OSI 与 TCP/IP 模型对比

对比维度OSI 七层模型TCP/IP 四层模型
制定者ISO(国际标准化组织)美国国防部 / IETF
层次数7 层4 层
上层处理应用层、表示层、会话层分离合并为应用层
下层处理数据链路层、物理层分离合并为网络接入层
协议依赖协议独立(先有模型后有协议)协议绑定(先有协议后有模型)
实际应用教学参考模型互联网实际标准

四、封装与解封装

4.1 什么是封装

封装是各层将本层实现数据添加到内容数据之前的过程。类似于寄信时需要信封、收件人、发件人、邮编和邮票——这些相当于各层的实现数据。

数据在各层的封装过程:

应用层:原始数据

传输层:TCP/UDP 头部 + 原始数据 → 段(Segment)

网络层:IP 头部 + 段 → 包(Packet)

数据链路层:MAC 头部 + 包 + FCS 尾部 → 帧(Frame)

物理层:帧 → 比特流(Bits)

4.2 PDU(协议数据单元)

每一层的数据单元有特定的名称:

层次PDU 名称
应用层数据报文 (Data)
传输层段 (Segment)
网络层包 (Packet)
数据链路层帧 (Frame)
物理层比特流 (Bits)

4.3 解封装

解封装是封装的逆过程。接收方从物理层收到比特流后,逐层剥离各层的头部信息,最终还原出原始数据。


五、MAC 地址与 IP 地址

5.1 MAC 地址(物理地址)

5.2 IP 地址(逻辑地址)

5.3 IP 地址分类

类别第一组 8 位二进制十进制范围网络位长度用途
A 类0XXXXXXX1 - 126前 8 位大型网络
B 类10XXXXXX128 - 191前 16 位中型网络
C 类110XXXXX192 - 223前 24 位小型网络
D 类1110XXXX224 - 239不分组播地址
E 类1111XXXX255 - 255不分保留(军用)

5.4 特殊 IP 地址

地址说明
127.0.0.1 - 127.255.255.255环回地址(本机测试)
255.255.255.255受限广播地址
主机位全 1直接广播地址(如 192.168.2.255
主机位全 0网络号(如 192.168.2.0
0.0.0.0代表没有 IP 或任意 IP
169.254.0.0/16自动私有地址(APIPA)

5.5 ARP 协议

ARP(地址解析协议)用于将 IP 地址映射为 MAC 地址。分类:

ARP 缓存表的老化时间为 180 秒


六、传输层协议详解:TCP 与 UDP

6.1 TCP 与 UDP 对比

对比维度TCPUDP
连接方式面向连接无连接
可靠性可靠传输(确认、重传)尽力而为
流量控制有(滑动窗口、拥塞控制)
速度较慢较快
资源消耗
应用场景文件传输、网页浏览、邮件视频直播、在线游戏、VoIP

6.2 TCP 三次握手

客户端                          服务器
   | -------- SYN -------->       |
   | <---- SYN + ACK ------       |
   | -------- ACK -------->       |

6.3 TCP 四次挥手

客户端                          服务器
   | -------- FIN -------->       |
   | <------- ACK ---------       |
   | <------- FIN ---------       |
   | -------- ACK -------->       |

6.4 TCP 分段与 IP 分片


七、其他重要协议

7.1 ICMP 协议

ICMP(Internet 控制报文协议)用于在网络设备间传递差错和控制信息。

报文类型说明
Echo Request / Echo Replyping 命令使用的查询报文
目的不可达网络/主机/协议/端口不可达
源站点抑制通知源端放慢发送速度
时间超时TTL 值为 0,数据包被丢弃
重定向指示更优路径

Tracert 基于 TTL 值逐跳跟踪转发路径。

7.2 DNS 协议

DNS(域名系统)将域名转换为 IP 地址,采用 C/S 架构。

查询方式:

7.3 HTTP 协议

HTTP(超文本传输协议)是 WWW 的核心协议之一。WWW 由三部分组成:


八、设备与层次对应

设备工作层次功能
集线器 (Hub)物理层信号放大与转发,共享介质
网桥 (Bridge)数据链路层隔离冲突域,过滤帧
交换机 (Switch)数据链路层基于 MAC 地址表转发,自学习
路由器 (Router)网络层隔离广播域,基于路由表选路转发

九、总结

  1. 分层思想是计算机网络的精髓——每层完成特定功能,层间松耦合
  2. OSI 七层模型是理论标准,用于学习和参考
  3. TCP/IP 四层模型是工业标准,是互联网的基础
  4. 封装与解封装贯穿数据通信的全过程
  5. MAC 地址用于局域网内寻址,IP 地址用于跨网络寻址
  6. TCP 面向连接、可靠传输;UDP 无连接、快速高效


Share this post:

Previous Post
NFS 文件共享
Next Post
园区网基础