首先,要理解这两个模型之间的关系。OSI是一个理论上的标准,而TCP/IP是实际应用中形成的、互联网所基于的协议族。在学习和讨论中,我们常常使用一个折中的五层模型,它结合了OSI的清晰结构和TCP/IP的实用性。下面我们将按照这个五层模型进行详细讲解。
OSI七层模型 (理论模型) TCP/IP四层模型 (实用模型) TCP/IP五层模型 (教学折中)
================================================================================
-
应用层 <---------------> 4. 应用层
-
表示层 <-----------------> (包含应用层、表示层、会话层功能)
-
会话层 <----------------->
- 传输层 <---------------> 3. 传输层 <------> 传输层
- 网络层 <---------------> 2. 网络互连层 <------> 网络层
-
数据链路层 <-------------> 1. 网络接口层 <------> 数据链路层
-
物理层 <-----------------> (包含数据链路层和物理层) 物理层
-
物理层
这是最底层,负责在物理媒介上传输原始的比特流。
功能:定义电气、机械、过程和功能的规范,以激活、维持和关闭物理链路。包括电压、线缆规格、接口类型、传输速率等。
数据单位:比特。
常见协议/标准:
IEEE 802.3: 以太网的有线物理层标准(如100BASE-TX, 1000BASE-T)。
IEEE 802.11: 无线局域网(Wi-Fi)的物理层标准。
RS-232: 传统的串行通信标准。
V.35: 用于路由器和调制解调器之间的连接。
- 数据链路层
负责在同一局域网内的两个设备之间进行可靠的数据帧传输。
功能:
帧同步:将比特流组装成帧。
物理地址寻址:使用MAC地址来唯一标识网络中的设备。
差错控制:检查帧在传输过程中是否出现错误(如CRC校验)。
流量控制:控制发送方的发送速率,防止接收方被淹没。
数据单位:帧。
常见协议:
以太网: 当今最主流的局域网技术。
PPP: 点对点协议,常用于拨号上网或路由器之间的串行链路。
交换机: 工作在数据链路层的网络设备,通过MAC地址转发帧。
- 网络层
负责将数据包从源主机跨网络传输到目标主机,实现不同网络之间的通信。
功能:
逻辑地址寻址:使用IP地址来标识网络和设备。
路由:为数据包选择最佳路径。
分组和重组:将数据包分割成适合传输的大小,并在目的地重组。
数据单位:包 或 数据报。
核心协议:
IP: 网际协议,是互联网的基石。负责寻址和路由。
IPv4: 目前主流的IP协议。
IPv6: 下一代IP协议,解决IPv4地址耗尽问题。
ICMP: 网际控制报文协议,用于传递控制信息(如ping命令就使用了ICMP)。
ARP: 地址解析协议,通过IP地址来查找对应的MAC地址。
路由协议: 如OSPF, BGP,路由器之间用来交换路由信息。
- 传输层
负责端到端的通信,即应用程序进程之间的通信。
功能:
进程寻址:使用端口号来区分同一台主机上的不同应用程序。
可靠与不可靠传输:提供可靠(面向连接)或不可靠(无连接)的数据传输服务。
流量控制:确保发送方不会让接收方过载。
差错控制:通过确认和重传机制,确保数据完整无误地到达。
数据单位:段。
常见协议:
TCP:
特点:面向连接、可靠、基于字节流。
适用场景:需要高可靠性的应用,如网页浏览(HTTP)、文件传输(FTP)、电子邮件(SMTP)。
UDP:
特点:无连接、不可靠、但传输延迟低、开销小。
适用场景:实时性要求高、可容忍少量丢失的应用,如视频会议、在线游戏、DNS查询。
- 应用层
最接近用户的一层,为应用程序提供网络服务接口。
功能:提供特定的应用服务,如文件传输、电子邮件、网页浏览等。
数据单位:报文。
常见协议:
HTTP/HTTPS: 超文本传输协议(安全),用于网页浏览。
DNS: 域名系统,将域名解析为IP地址。
FTP/SFTP: 文件传输协议(安全),用于在客户端和服务器之间传输文件。
SMTP: 简单邮件传输协议,用于发送邮件。
POP3/IMAP: 用于从邮件服务器接收邮件。
SSH: 安全外壳协议,用于加密远程登录和管理系统。
WebSocket: 提供全双工通信通道,用于实时Web应用。
总结
模型分层 核心功能 数据单位 关键协议/设备
应用层 为应用程序提供网络服务接口 报文 HTTP, DNS, FTP, SMTP, SSH
传输层 端到端通信,进程间通信,可靠性 段 TCP(可靠),UDP(快速)
网络层 逻辑寻址,路由选择,跨网络通信 包/数据报 IP, ICMP, ARP, 路由器
数据链路层 物理寻址,帧同步,差错控制 帧 以太网, PPP, 交换机
物理层 在物理媒介上传输比特流 比特 IEEE 802.3, IEEE 802.11, 网线,光纤
一个简单的比喻来理解数据流动:
假设你要寄一封信。
应用层:你写好信的内容(HTTP请求)。
传输层:把信装进信封,写上收件人和寄件人的门牌号(端口号),并选择快递服务(TCP挂号信或UDP平邮)。
网络层:在信封上写上收件人和寄件人的街道地址(IP地址),交给邮局。
数据链路层:邮局根据街道地址,决定通过哪个分拣中心(交换机)和邮递员(MAC地址)来传递这封信。
物理层:邮递员骑着车(电信号/光信号),把信(比特流)实际送到你的家门口。