ISO/OSI网络参考模型总结
ISO/OSI参考模型它将网络结构化为七层:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,如图:
1~3层是依赖于网络的,涉及将两台计算机连接在一起使用的数据通信网的相关协议,实现通信子网功能。5~7层是面向应用的,涉及允许两个终端用户应用进程交互作用的协议,通常是由本地操作系统提供一套服务,实现资源子网功能。中间的传输层为面向应用的上3层遮蔽了跟网络有关的下3层详细操作。从实质上讲,传输层建立在由下3层提供服务的基础上,为面向应用的高层提供网络无关的信息交换服务。
首先来说说为什么要分层(分层的好处)
分层的目的是为了降低复杂性,提高灵活性
- 各层之间是独立的。
- 灵活性好。
- 结构上可分割开。
- 易于实现和维护。
- 能促进标准化工作。
OSI中的数据传输
数据流从源的上层逐层流向下层,在目的端则由下层逐层流向上层
源 – 数据封装: APDU -> PPDU -> SPDU -> Segments -> Packet -> Frame -> Bits
目的 – 数据的拆封: Bits -> frame -> Packet -> Segment -> SPDU -> PPDU -> APDU
物理层的功能:
- 负责实际或原始的数据“位(BIT)” 传送,通过传输介质将比特流由一个节点传向另一个节点。
- 节点通常分为DTE与DCE两大类。DTE为用户端接设备,DCE为数据控制设备。
- 该层协议的功能是定义网络物理设备DTE/DCE的接口。
数据链路层的功能
- 实现两个相邻的机器间的无差错的传输。通过对物理层提供的原始比特流传输服务的加强,向网络层提供服务
- 成帧:规定数据链路层最小的数据传送逻辑单位——帧的类型和格式。将从网络层接收的信息分组组成帧后传送给物理层,由物理层传送到对方的数据链路层。
- 物理寻址和对网络拓朴的存取
- 差错控制:在信息帧中带有校验字段,当接收方收到帧时,按照选定的差错控制方法进行校验,在发现差错时进行差错处理。
- 流量控制:协调发送方与接收方的数据流量,使发送速率不要超过接收方速率。
- 共享介质环境中的介质访问控制
-
链路管理:建立、维持与释放数据链路。
网络层的功能 - 涉及将源端发出的数据(分组)经各种途径送到目的端,从源端到目的端可能要经过许多的中间节点---互连和路径选择 (源网络-目标网络)
- 通信子网的最高层,但是处理端到端(主机—主机)数据传输的最低层。
- 信息分组的类型和格式
- 逻辑寻址
- 路由和转发
-
拥塞控制
传输层的功能 - 为高层数据传输建立、维护与拆除传输连接,实现透明的端到端的传输(主机-主机)
- 真正意义上的从源到目标的“端到端”层,源端的某程序与源端的“类似”程序进行对等通信
- 屏蔽了上三层 (面向应用) 和下三层(面向数据传输)之间的界限,弥补网络所提供的服务质量的不足,提供可靠的网络服务
- 信息的分段(源端)和合并(目标端)
- 流量控制和差错恢复
-
多路复用
会话层的功能 - 建立、管理和终结不同机器上的应用程序或进程间的会话
- 为表示层提供服务 会话(Dialogue)的管理: 令牌(Token) 会话的同步
-
检查点(Checkpoint)
表示层的功能 - 表示层以下各层只关心可靠的数据传输,而表示层关心的是所传送数据的语法和语义。
- 完成语法格式的转换
- 与接收方协商所采用的公共语法类型
-
表示层对等实体间连接的建立、数据传送与连接释放
应用层的功能 - OSI的最高层,也是离用户最近的层,是计算机网络与用户之间的界面
- 由若干的应用进程或程序组成。网络通过应用层为用户提供多种网络服务。
- 常见应用层服务:①目录服务 ②电子邮件 ③文件传输 ④虚拟终端
OSI的层间通信
如图,数据是由主机A中的一些应用程序生成 的。假设用户输入一条消息。每层生成一个头部及所传数据一并传到下一层(箭头①)。将数据传到下一层意味着下一层需要为上一次提供某种服务。要完成这些服务,下一层需要在包头或包尾加入一些信息。比如传输层发送其数据和包头,网络层在其包头中加入正确的网络层的目的地址,以使包能够被传输到其他计算机
在程序生成数据后,物理层能实现媒体发送信号(箭头②),当接收数据时(箭头③),主机B启动其上的相邻层协议进行通信(箭头④),指明了接收数据在协议栈中逐层向上递交处理的过程
发送方的数据的封装过程
接收方的数据的解封装过程