声明:原创文章,转载请注明或保留出处【https://www.jianshu.com/p/4f07f28db7fe】by【飞奔的野指针】
一. ISO/OSI参考模型简介
国际标准化组织(ISO)提出的网络体系结构模型,称为开放系统互联参考模型(OSI/RM),简称OSI参考模型。
一群大牛,攒了个局,喝着小酒吃着火锅,喝到意气风发处,一起吹着牛就定下了怎么构建网络的规范。(ISO/OSI不就像喝大了分不清顺序起的名字吗?)
二. ISO/OSI层次理解
OSI有7层,自下而上是:
1.物理层 2.数据链路层 3.网络层 4.运输层 5.会话层 6.表示层 7.应用层
可以记作“五叔王云会飚音”(五叔王云就是刚才攒局的那个人,喝大了还能唱歌,人才啊。)
1. 怎么理解层的概念
可以想象成每一层就是流水线上的一个人,有不同的任务。
数据其实是从上层到下层的,上层大多提供一些和通信无关的功能,不同主机的下层是可以通信的。
三. ISO/OSI层次
1. 物理层
定义数据终端设备和数据通讯设备的逻辑连接方法。
传输单位:比特。
任务:透明地传输比特流。
定义逻辑连接方法,可以理解是规定设备的形状,如规定网络接口必须有六对铜线,定义信号代表的意义,如传来的某种信号代表了二进制的0。
2. 数据链路层
传输单位:帧。
任务:将网络层传下来的IP数据报组装成帧。(记得刚才说数据是从上到下的。)
功能:成帧、差错控制、流量控制和传输管理。
协议:SDLC、HDLC、PPP、STP和帧中继等。
提供点到点的通信(主机之间的通信,一个点是指一个硬件地址或者IP地址)
成帧就是把数据报组装成帧。
差错控制就是当信号收到干扰时出现错误时,该层可以检测出检测出错误,丢弃错误的那部分。
流量控制:发送数据和接受数据的速度得同步,不然就会拥塞,该层就能控制速度。
3. 网络层(IP层、网际层)
传输单位:数据报。
任务:把网络层的协议数据单元(分组)从源端传到目的端,为分组交换网上的不同主机提供通信服务。
功能:路由选择、流量控制、拥塞控制、差错控制和网际互连。
协议:IP、IPX、ICMP、IGMP、ARP、RARP和OSPF等。
路由选择就是有几条路同同时都能到达,可以选择不同的路由从而选择不同的路径。
拥塞控制,流量控制不给力,数据过多,已经阻塞了,这时候就要拥塞控制出马了。
4. 传输层(运输层)
传输单位:报文段或用户数据报。
任务:负责不同主机两个进程之间的通信。
功能:为端到端连接提供可靠的传输服务和流量控制、差错控制和服务质量和数据传输管理等。
协议:TCP和UDP等。
端到端的通信就是运行在不同主机的两个进程之间的通信。
5. 会话层
任务:利用传输层提供的端到端服务,向表示层提供它的增值服务。
功能:管理主机间的会话进程(建立、管理和终止会话)和通信失效时使用校验点恢复通信。
会话(Session)就是不同主机各进程之间的通信,与端对端通信不同在于这里的进程是可以是不同的。
会话可以理解为发起传输的命令,而不需要具体地实施怎么去创建传输的条件,等传输建立,这时候会话建立。
比如会话层发起会话,只是一条语句,传输层收到,传输层实现了创建传输的整个过程。
6. 表示层
任务:处理在两个通信系统中交换信息的表示方式。
功能:提供数据压缩、加密、解密等数据变换服务。
不同机器采用的编码和表示方法不同,使用的数据结构也不同。
表示层采用抽象的标准方法定义数据结构,并采用标准的编码形式。
通俗理解为,可能使用的编程语言不同等,这里可以逻辑定义数据结构,而不去关注具体的实现。
7. 应用层
用户与网络的界面。
任务:采用不同的应用协议来解决不同类型的应用要求。