什么是OSI参考模型?
OSI参考模型(Open System Interconnection Reference Model OSI/RM)
即开放式系统互联模型,是我们早期的计算机网络通信的模型
由国际化标准组织ISO在1984提出的(对你没看错这两个就是反着来的)
为什么要提出OSI参考模型
在早期互联网刚出现的时候,国际上的各大厂商为了在通信网络领域占据主导地位,于是研发的自己私有的网络架构体系和标准,比如IBM公司的SNA
、苹果的AppleTalk
等协议
同时各大厂商也根据自己的协议和设备绑定。
因此各厂商之间的设备就无法兼容,在后来随着网络技术的不断发展各自的工程师发现由于多种厂商设备的协议并存会导致网络复杂化且不利于网络技术的发展,于是在1984年国际化标准组织为了统一所有厂商的协议标准,制定了ISO参考模型,从根本上确定了我们网络中设备所遵循的层次结构。
(PS:这东西就和秦始皇当初统一全国汉字一样)
OSI参考模型具有的优点
- 开放的标准化接口(各种设备的接口统一)
- 多厂商兼容(协议不再封闭,ps:其实现在也有私有协议)
- 易于理解和学习更新协议标准(各层级的模块相对独立,学习起来容易)
- 实现模块化工程,降低开发复杂度(每个层次有每个层次所需要负责的模块)
- 便于故障排查(针对于层次来故障排查)
OSI参考模型层次架构
层级 | 名称 | 简述作用 |
---|---|---|
7 | 应用层 | 提供应用程序之间的通信 |
6 | 表示层 | 数据的格式、加密解密 |
5 | 会话层 | 建立维护管理会话之间的通信 |
4 | 传输层 | 建立管理维护端到端的连接 |
3 | 网络层 | IP寻址路由选择 |
2 | 数据链路层 | 提供介质访问、链路管理 |
1 | 物理层 | 比特流传输 |
1. 物理层
定义了我们通信底层的参数,我们的传输线缆、数据传输速率、接口等物理参数的定义
2. 数据链路层
数据链路层的作用主要是提供对物理层的控制,对数据帧的识别,差错的校验、数据链路的建立、以及最重要的MAC寻址。
3. 网络层
网络层决定了我们数据包传输端到端之间的最佳路由路径,和寻址功能,以及如何选择不同的路由协议来计算路由。
4. 传输层
数据分段就是在我们的传输层进行的,传输层将我们的数据段重新整合确保各段信息正确无误,维护我们的虚电路,进行差错校验和流量控制。
5. 会话层
主要就是建立、维护、关闭应用程序之间的会话
更多的用在区分一个应用程序之间不同访问者
同时协调不同应用程序之间通信时候设计的会话,让应用程序知道其他应用程序的状态。
6. 表示层
表示层主要负责所传输的信息的语法和定义,把应用层的数据格式化处理成语及计算机无相关的格式,以确保对端设备能准确的理解并接收数据,同时他还负责数据的加密解密等。
7. 应用层
为我们的应用程序提供网络服务 比如我们的文件传输、文件管理等服务
OSI参考模型对等通信
每一层都使用自己的协议标准
每一层都利用下层提供的服务对等层服务进行通信
这里就可以看到我们后面要学的数据分段
浅谈一下OSI参考模型的问题
OSI参考模型并不是完美的
由于他的层次划分过多,会话层和表示层的存在意义不大
所以就繁衍出了我们的TCP/IP模型,该模型简化了OSI参考模型
后续我会在TCP/IP四层模型中详细阐述每层作用