OSI开放式互联参考模型--2019年1月5日01:30:56

OSI开放式互联参考模型

现在市面上的协议模型分为四层、五层和七层协议,而国际标准化组织ISO制定的OSI七层协议模型,是业界提出来的概念型模型

第一层 物理层

 (机械、电子、定时接口通信信道上的原始比特流传输)

        机器A往机器B上传输比特流,机器B可以收到比特流 物理层主要定义了物理设备的标准,如网线的类型、光纤的接口类型、各种传输介质的传输速率 把01010101的机器码转化成电流的强弱,到达目标机器后再转化成010101的机器码 这就是传说中的数模转换和模数转换,网卡就是工作在这一层上的

第二层 数据链路层

(物理寻址,同时将原始比特流转变为逻辑传输线路)

        在传输比特流的过程中会产生错传 或者数据传输不完整的可能因此呢,数据链路层应运而生,数据链路层定义了如何格式化数据已进行传输,以及如何让控制对物理介质的访问。这一层通常还提供错误检测和纠正,以确保数据传输的可靠性。本层将比特数据组成了帧,其中交换机工作在这一层里面,对帧解码并根据帧中包含的信息把数据发送到正确的接收方。那随着网络节点的不断增加,点对点通信的时候是需要经过多个节点的,那么如何找到目标节点,如何选择最佳路径便成为了首要需求,此时便有了网络层

第三层 网络层 

(控制子网的运行,如逻辑编址、分组传输、路由选择)

        其主要功能是将网络地址翻译成对应的物理地址,并决定如何将数据从发送方路由到接收方。网络层通过综合考虑发送优先权、网络拥塞程度、服务质量以及可选路由的花费来决定从一个网络中节点A到另一个网络中节点B的最佳路径。由于网络层处理并智能指导数据传送、路由器连接网络隔断,所以路由器属于网络层。此层的数据,我们称之为数据包。本层我们需要关注的协议,主要是Tcp/IP协议中的IP协议,随着网络通信需求的进一步扩大,通信过程中需要发送大量的数据,如海量文件传输的可能需要很长时间,而网络在通信的过程中会中断好多次,此时为了保证传输大量文件时的准确性,需要对发出去数据进行切分,切分为一个一个的段落,即segament 进行发送。那么其中一个段落丢失了该怎么办?要不要重传?每个段落要按照顺序到达吗?这个便是传输层需要考虑的问题了。

第四层 传输层

(接受上一层的数据,在必要的时候把数据进行分割,并将这些数据交给网络层,且保证这些数据段有效到达对端)

        传输层解决了主机间的数据传输,数据间的传输,可以是不同网络的,并且传输层解决了传输质量的问题,该层称之为OSI模型中最重要的一层。传输协议同时进行流量控制或是基于接收方可接收数据的快慢程度规定适当的发送速率。除此之外,传输层按照网络能处理的最大尺寸将较强的数据包进行强制分割。例如以太坊无法接收大于1500字节的数据包。发送方节点的传输层将数据分割成较小的数据片,同时对每一数据片安排一序列号,以便数据到达接收方节点的传输层时能以正确的顺序重组。该过程即称为排序。传输单中需要我们关注的协议有,TCP/IP协议中的TCP协议和UDP协议。现在我们已经保证给正确的计算机发送正确的封装过后的信息啦,但是用户级别的体验好不好?难道我每次都要去调用TCP去打包?然后调用IP协议去找路由,自己去发?当然不行,所以我们要建立一个自动收发包自动寻址的功能。于是发明了会话层

第五层 会话层

(不同机器间上的用户之间建立及管理会话)

        会话层的作用就是建立和管理应用程序之间的通信。现在我能保证应用程序自动收发包和寻址了,但我要Linux给windows发包。两个系统语法不一致,就像安装包一样,exe是不能在Linux上面去执行的,shell在windows下也是不能直接运行的,于是需要表示层。

第六层 表示层

(信息的语法语义以及他们的关联,如加密解密、转换翻译、压缩解压缩)

        即Presentation Layer。帮我们解决不同系统之间的通信语法的问题,在表示层,数据将按照网络能理解的方案进行格式化。这种格式化也因所使用的网络类型类型不同而不同。此时虽然发送方知道自己发送的是什么东西,转换成字节数组之后有多长,但接收方肯定不知道。所以应用层的网络协议诞生了。

第七层 应用层 

        它规定发送方和接收方必须使用一个固定长度的消息头,消息头必须使用某种固定的组成。而且消息头里必须记录消息体的长度等一系列信息,以方便接收方能够正确地解析发送方发送的数据。应用层旨在让你更方便的应用同网络中接收到的数据,至于数据的传递,没有该层,你也可以直接在两台电脑间开干,只不过传来传去就是1对1和0组成的字节数组。该成需要我们重点去关注的是TCP/IP协议中的http协议。

总结

以上就是关于OSI各层次的划分,从应用开始,都会对要传输的数据头部进行处理,加上本层的一些信息 最终由物理层通过以太网电缆等介质将数据解析成比特流在网络中传输。数据传递到目标地址。并自底而上的讲先前对应成的头部给解析分离出来,这就是网络数据处理的整个流程。


OSI开放式互联参考模型

你可能感兴趣的:(OSI开放式互联参考模型--2019年1月5日01:30:56)