网络知识有一定了解的朋友都听说过“七层模型吧”,也就是OSI七层模型,在CCNA基础课程里面呈详细的讲解过,今天我就给大家简单讲讲OSI基层模型的含义。
   最初,各个厂商的设备,系统,各有各的一套,彼此之间很难互相通信,要建立一个网络,就只能选一家厂商的设备,比如说全IBM的,或全DECnet的,用一种系统,那时UNIX大行其道。后来用Windows的网络也慢慢多了起来,基于将不同网络互连的迫切要求,国际标准化组织ISO于上世纪70年代发布了OSI七层网路模型,以规范化网络设计。那为什么要分层呢?是因为出于将数据处理分步的考虑。总结来说,OSI网七层络模型的用处如下:
   1.使不同厂商在开发设备的时候有个公共的标准,让不同厂商开发出来的设备能够互相通信。
   2.使不同系统之间能够互相通信,如UNIX、Winsows和Mac。
   3.分层使数据处理分步,互相之间不造成影响。
   OSI七层网络模型由下至上为1至7层,分别为物理层(Physical layer),数据链路层(Data link layer),网络层(Network layer),传输层(Transport layer),会话层(Session layer),表示层(Presentation layer),应用层(Application layer)。其中上三层称之为高层,定义应用程序之间的通信和人机界面。什么意思呢,就是上三层负责把电脑能看懂的东西转化为你能看懂的东西,或把你能看懂的东西转化为电脑能看懂的东西。下四层称之为底层,定义的是数据如何端到端的传输(end-to-end),物理规范以及数据与光电信号间的转换。先面一层一层的来说明。从上层说起。
   应用层,很简单,就是应用程序。这一层负责确定通信对象,并确保由足够的资源用于通信,这些当然都是想要通信的应用程序干的事情。
   表示层,负责数据的编码、转化,确保应用层的正常工作。这一层,是将我们看到的界面与二进制间互相转化的地方,就是我们的语言与机器语言间的转化。数据的压缩、解压,加密、解密都发生在这一层。这一层根据不同的应用目的将数据处理为不同的格式,表现出来就是我们看到的各种各样的文件扩展名。
   会话层,负责建立、维护、控制会话,区分不同的会话,以及提供单工(Simplex)、半双工(Half duplex)、全双工(Full duplex)三种通信模式的服务。我们平时所知的NFS,RPC,X Windows等都工作在这一层。
   传输层,负责分割、组合数据,实现端到端的逻辑连接。数据在上三层是整体的,到了这一层开始被分割,这一层分割后的数据被称为段(Segment)。三次握手(Three-way handshake),面向连接(Connection-Oriented)或非面向连接(Connectionless-Oriented)的服务,流控(Flow control)等都发生在这一层。
   网络层,负责管理网络地址,定位设备,决定路由。我们所熟知的IP地址和路由器就是工作在这一层。上层的数据段在这一层被分割,封装后叫做包(Packet),包有两种,一种叫做用户数据包(Data packets),是上层传下来的用户数据;另一种叫路由更新包(Route update packets),是直接由路由器发出来的,用来和其他路由器进行路由信息的交换。
   数据链路层,负责准备物理传输,CRC校验,错误通知,网络拓扑,流控等。我们所熟知的MAC地址和交换机都工作在这一层。上层传下来的包在这一层被分割封装后叫做帧(Frame)。
   物理层,就是实实在在的物理链路,负责将数据以比特流的方式发送、接收,就不多说了。