OSI七层模型与TCP/IP协议
1、为什么要分层
1.1 层次划分的必要性
- 很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,硬件没有统一标准,软件也没有统一标准。单独一台计算机只是一台普通的计算机,全球互联网,网络之间需要通信。
- 计算机网络是由许多硬件、软件和协议交织起来的复杂系统。由于网络设计十分复杂,如何设计、组织和实现计算机网络是一个挑战,必须要采用科学有效的方法。
1.2 层次划分的方法
-
-
梳理功能之间的关系,使上一个功能可以实现为另一个功能提供必要的服务,从而形成系统的层次结构, 环环相扣(紧密联系)
-
为提高系统的工作效率,相同或相近的功能仅在一个层次中实现,而且尽可能在较高的层次中实现
-
1.3 层次划分的优点
-
-
灵活性好,各层内部的操作不会影响其他层
-
结构上可分割开,各层之间都可以采用最合适的技术来实现
-
易于实现和维护,因为整个系统已被分解成相对独立的子系统
-
2、OSI七层参考模型
- 国际标准化组织(ISO)1984年颁布了开放系统互连(OSI)参考模型,这是一个开放式体系结构,将网络分为七层。
- 实际上这个七层是不存在的,没有这七层的概念,只是人为的划分而已。区分出来的目的只是让我们明白哪一层是干什么用的。
2.1 每层对应的功能
- 应用层 网络服务与最终用户的接口
- 表示层 数据的表示、安全、压缩
- 会话层 建立 管理 中止会话
- 传输层 定义传输数据的协议端口号,以及流控和差错校验
- 网络层 进行逻辑地址寻址,实现不同网络之间的路径选择
- 数据链路层 建立逻辑连接、进行硬件地址寻址、差错校验等功能
- 物理层 建立、维护、断开物理连接,数据形式是电流
2.2 每层对应的协议
2.3 端口号的作用
2.4 数据封装的过程
-
物理层的 PDU是数据位 bit
-
数据链路层的 PDU是数据帧 frame
-
网络层的PDU是数据包 packet
-
传输层的 PDU是数据段 segment
-
- 应用层、表示层、会话层为高三层,是面向用户的
- 网络层、数据链路层、物理层为低三层,是面向硬件的
- 网络层及以下的通信为点到点通信(主机与主机)
- 传输层的通信为端到端(端口到端口)