OSI七层模型与TCP/IP四层模型的对比详解
一、图示解析:分层封装结构
你提供的图清晰展示了网络通信中从应用层到物理层的封装过程 ,每一层都会对上层的数据加上自己的头部信息(Header):
应用层: 应用数据
传输层: TCP头 + 应用数据
网络层: IP头 + TCP头 + 应用数据
链路层: 帧头 + IP头 + TCP头 + 应用数据 + 帧尾
这一过程也叫做封装(Encapsulation) ,反过来在接收端进行解封装(Decapsulation) 。
二、OSI与TCP/IP模型结构
1. OSI七层模型
层级
名称
功能简述
示例协议
7
应用层
提供用户接口和网络服务
HTTP、FTP、DNS
6
表示层
数据编码、加密、解密、压缩
JPEG、ASCII
5
会话层
建立、管理、终止会话
RPC、NFS
4
传输层
提供端到端可靠或不可靠的传输
TCP、UDP
3
网络层
路由、逻辑寻址
IP、ARP、ICMP
2
数据链路层
在物理层提供可靠传输,组帧、差错检测
PPP、MAC、VLAN
1
物理层
比特传输、电压、接头类型等物理特性
RJ45、光纤、CLOCK
2. TCP/IP四层模型
层级
名称
功能简述
示例协议
4
应用层
综合会话层、表示层、应用层,提供各种网络服务
HTTP、FTP、DNS、SMTP
3
传输层
提供端到端连接
TCP、UDP
2
网络层
选择路由、逻辑寻址
IP、ICMP、ARP
1
网络接口层
物理设备驱动、帧传输
以太网、帧中继、PPP协议
3. 对应关系图表
OSI模型
TCP/IP模型
应用层 + 表示层 + 会话层
应用层
传输层
传输层
网络层
网络层
数据链路层 + 物理层
网络接口层
三、典型网络模型总结
OSI七层模型 :理论清晰,教学中常用。
TCP/IP四层模型 :实现主流,更贴近实际互联网通信协议栈。
四、每层代表协议汇总
OSI七层模型协议示例:
物理层 :CLOCK、RJ45、IEEE 802.3
数据链路层 :MAC、VLAN、PPP
网络层 :IP、ARP、ICMP
传输层 :TCP、UDP
会话层 :RPC、NFS
表示层 :JPEG、ASCII
应用层 :FTP、HTTP、DNS
TCP/IP四层模型协议示例:
应用层 :HTTP、FTP、SMTP、DNS
传输层 :TCP、UDP
网络层 :IP、ICMP、ARP
网络接口层 :以太网协议、PPP、帧中继
五、从百度搜索看网络各层的作用
使用百度搜索,涉及的网络层级如下:
网络层级
涉及协议
功能
应用层
HTTP、HTTPS、DNS
提供服务(如网页浏览、域名解析)
传输层
TCP、UDP
提供可靠或快速传输
网络层
IP、ARP、ICMP
路由与地址解析
数据链路层
MAC、以太网协议
物理地址传输,组帧
物理层
RJ45、光纤等
比特级传输,电信号
示例流程:输入baidu.com
并访问网页
DNS域名解析(应用层) → 浏览器要将URL解析为IP地址,DNS服务器使用UDP解析域名,DNS服 务器是基于UDP的,因此会用到UDP协议
HTTP发起连接(应用层) → 使用TCP建立连接并发送请求,http协议报文格式上面已经提到。http生成一个get请求报文,将该报文传给TCP层处理,所以还会用到TCP协议。如果采用https还会使用https协议先对http数据进行加密。
IP寻址(网络层) → 查找目标服务器的IP地址
ARP解析MAC地址(网络层 & 数据链路层) → 获取本地网关MAC地址
以太网封装(数据链路层) → 封装帧数据,发送到物理层
比特传输(物理层) → 比特流通过电缆/光纤传输
六,TCP/IP数据链路层的交互过程是怎么样的?
网络层等在数据链路层用MAC地址作为通信目标,数据包到达网络层等往数据链路层发送的时候,首先回去ARP缓存表去查找ip对应的MAC地址,如果查到了,就将此ip对应的MAC地址封装到链路层数据包的包头。如果缓存中没有找到,则会发起一个广播,who is ip xxx tell ip xxxx,所有收到广播的机器看到这个ip是不是自己的,如果是自己的,则以单播的形式将自己的mac地址回复给请求机器。