一.OSI七层网络模型的来源
当时在计算机通讯的时代,不同的厂家生产不同的计算机,CPU,操作系统等大都不相同,各家厂商的各种网络体系结构、各种协议之间并不相互兼容。即使是从物理层面上连接了两台异构的计算机,由于它们之间采用的网络体系结构不同,支持的协议不同,仍然无法实现正常的通信。
为了解决上述问题,ISO" 制定了一个国际标准OSI",对通信系统进行了标准化。现在,OSI 所定义的协议虽然并没有得到普及,但是在OSI协议设计之初作为其指导方针的OSI参考樓型却常被用于网络协议的制定当中
正是由于OSI网络模型的出现,使得计算机的网络体系结构有了大概标准的统一,使得不同的生产厂商的计算机能够实现通讯.
二.协议
说起OSI模型,就得再谈一下协议了,
因为OSI网络模型的分层是基于协议的.将通讯的协议标准化起来,使得进行通讯.
在这OSI模型中,每个分层都接收由它下一层所提供的特定服务,并且负责为自己的上一层提供特定的服务。上下层之间进行交互时所遵循的约定叫做“接口”。同一层之间的交互所遵循的约定叫做“协议”。
那么协议到底是什么呢?
他是一种规范,也是一种约定,就好比俩个人之间对话一样,你只会说英语,另一个只会说汉语,那么怎么进行通讯呢,协议就是来统一这个的,使得俩个都会中文或都会英文的人来通讯.
在这就可以理解到其实OSI模型就是协议的分层实现.
协议分层就如同计算机软件中的模块化开发。OSI 参考模型的建议是比较理想化的。它希望实现从第一层到第七层的所有模块,并将它们组合起来实现网络通信。分层可以将每个分层独立使用,即使系统中某些分层发生变化,也不会波及整个系统。因此,可以构造一个扩展性和灵活性都较强的系统。此外,通过分层能够细分通信功能,更易于单独实现每个分层的协议,并界定各个分层的具体责任和义务。这些都属于分层的优点。
三.OSI七层网络模型
(1)具体每层是什么.
- 应用层
为应用程序提供服务并规定应用程序中通信相关的细节。包括文件传输、电子邮件、远程登录(虚拟终端)等协议。
- 表示层
将应用处理的信息转换为适合网络传输的格式,或将来自下一层的数据转换为上层能够处理的格式。因此它主要负贵数据格式的转换。
具体来说,就是将设备固有的数据格式转换为网络标准传输格式。不同设备对同一比特流解释的结果可能会不同。因此,使它们保持一- 致是这一-层的主要作用。
- 会话层
负责建立和断开通信连接(数据流动的逻辑通路),以及数据的分割等数据传输相关的管理。
- 传输层
起着可靠传输的作用。只在通信双方节点上进行处理,而无需在路由器上处理。
- 网络层
将数据传输到目标地址。目标地址可以是多个网络通过路由器连接而成的某-个地址。因此这一层主要负贵寻址和路由选择。
- 数据链路层
负责物理层面上互连的、节点之间的通信传输。例如与1个以太网相连的2个节点之间的通信。
将0、1序列划分为具有意义的数据帧传送给对端( 数据帧的生成与接收)。
- 物理层
负责0、1比特流(0、1序列)与电压的高低、光的闪灭之间的互换。
(2)来个例子吧
在OSI网络7层模型中是怎么进行通讯的,每层分工如何.
他的传输是发送方从第七层逐渐封装到第一层,在应用程序中处理好要发送的数据和形式,在数据上附上首部信息(一些特定的目的地址和协议)到下一层进行处理,这一层重复这样的操作到物理层通过物理设备发送到目的机中,目的机接受到数据包后,拆解这个包的首部信息,读出来送到哪,将数据送到该层,重复操作后对方应用层接收到你发送的信息并处理.
说的赋头部信息可以理解为下面这个图
大概是这样形式到那层解那层的包,后面全是数据。
后面看个例子
用户A在主机A.上新建-封电子邮件,指定收件人为B,并输人邮件内容为“早上好"。。
应用层
从用户输人完所要发送的内容并点击“发送”按钮的那一刻开始,就进人了应用层协议的处理。该协议会在所要传送数据的前端附加一个首部(标签)信息。该首部标明了邮件内容为“早上好”和收件人为“B"。这一附有首部信息的数据传送给主机B以后由该主机上的收发邮件软件通过“收信”功能获取内容。主机B上的应用收到由主机A发送过来的数据后,分析其数据首部与数据正文,并将邮件保存到硬盘或是其他非易失性存储器~以备进行相应的处理。如果主机B上收件人的邮箱空间已满无法接收新的邮件,则会返回一个错误给发送方。对这类异常的处理也正属于应用层需要解决的问题。
说白了应用层就是应用的过程,实现功能的过程.
表示层
主要就是识别不用种类的邮件信息,设置编码格式,是本机数据格式转变为网络中统一的数据格式,另一端接受后转变为他自已本机所支持的数据格式,主要就是做这个工作.
会话层
主要就是选用建立连接的方式(例如短连接和长连接截然不同)
传输层
进行建立连接或断开连接的处理",在两个主机之间创建逻辑上的通信连接即是传输层的主要作用。此外,传输层为确保所传输的数据到达目标地址,会在通信两端的计算机之间进行确认,如果数据没有到达,它会负责进行重发。
传输层是端与端的传输.
网络层
网络层的作用是在网络与网络相互连接的环境中,将数据从发送端主机发送到接收端主机。但能够将数据从主机A送到主机B也都是网络层的功劳。
在实际发送数据时,目的地址"至关重要。这个地址是进行通信的网络中唯一指定的序号。也可以把它想象为我们日常生活中使用的电话号码。只要这个目.标地址确定了,就可以在众多计算机中选出该目标地址所对应的计算机发送数据。基于这个地址,就可以在网络层进行数据包的发送处理。而有了地址和网络层的包发送处理,就可以将数据发送到世界上任何一台互连设备。网络层中也会将其从上层收到的数据和地址信息等一起发送给下面的数据链路层,进行后面的处理。
数据链路层
通信传输实际上是通过物理的传输介质实现的。数据链路层的作用就是在这些通过传输介质互连的设备之间进行数据处理。
物理层
将数据的0、1转换为电压和脉冲光传输给物理的传输介质。通过光缆等物理设备连接俩台设备.
网络层与数据链路层都是基于目标地址将数据发送给接收端的,但是网络层负责将整个数据发送给最终目标地址(发送IP, 目的IP),而数据链路层则只负责发送-个分段内的数据。(发送MAC, 目的MAC)
主机B端的处理
接收端主机B上的处理流程正好与主机A相反,它从物理层开始将接收到的数据逐层发给上一分层进行处理,从而使用户B最终在主机B上使用邮件客户端软件接收用户A发送过来的邮件,并可以读取相应内容为“早上好”。
网络通讯的基础建造于物理连接的基础之上的。