说到网络就不能不说说网络模型,它是网络技术的基础,也是分析、评判各种网络技术的依据。当前存在两种网络模型:IOS/OSI参考模型和TCP/IP协议。虽然OSI参考模型的实际应用意义不是很大,但其对于理解网络协议内部的运作很有帮助。
一、OSI的概念
OSI参考模型(OSI/RM)的全称是开放系统互联参考模型(Open System Interconnection Reference Model,OSI/RM),它是由国际标准化组织ISO提出的一个网络系统互联模型(这就是我们平常看到的ISO/OSI)。
下面我们来看看OSI七层模型:
二、OSI与TCP/IP协议的对应关系
ISO定制的OSI模型过于庞大、复杂,招致了许多的批评,于此对照的由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用。下面看看OSI和TCP/IP的对比示意图。
三、OSI的七层模型
对于理解网络,OSI的七层模型更为合适。
1、物理层(PhysicalLayer)
规定通信设备的机械的、电气的、功能的和过程的特性,用以建立、维护和拆除物理链路连接。具体地讲,机械特性规定了网络连接时所需接插件的规格尺寸、引脚数量和排列情况等;电气特性规定了在物理连接上传输bit流时线路上信号电平的大小、阻抗匹配、传输速率距离限制等;功能特性是指对各个信号先分配确切的信号含义,即定义了DTE和DCE之间各个线路的功能;过程特性定义了利用信号线进行bit流传输的一组操作规程,是指在物理连接的建立、维护、交换信息时,DTE和DCE双方在各电路上的动作系列。
物理层的主要设备:中继器、集线器。
在这一层,数据的单位称为比特(bit)。
属于物理层定义的典型规范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等。
2、数据链路层(DataLinkLayer)
在物理层提供比特流服务的基础上,建立相邻结点之间的数据链路,通过差错控制提供数据帧(Frame)在信道上无差错的传输,并进行各电路上的动作系列。数据链路层在不可靠的物理介质上提供可靠的传输。该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。
数据链路层主要设备:二层交换机、网桥
在这一层,数据的单位称为帧(frame)。
数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、帧中继等。
3、网络层(Network layer)
在计算机网络中进行通信的两个计算机之间可能会经过很多个数据链路,也可能还要经过很多通信子网。网络层的任务就是选择合适的网间路由和交换结点,确保数据及时传送。网络层将数据链路层提供的帧组成数据包,包中封装有网络层包头,其中含有逻辑地址信息- -源站点和目的站点地址的网络地址。
网络层主要设备:路由器、三层交换机
在这一层,数据的单位称为数据包(packet)。
网络层协议的代表包括:IP、IPX、RIP、OSPF等。
4、处理信息的传输层(Transport layer)
第4层的数据单元也称作数据包(packets)。但是,当你谈论TCP等具体的协议时又有特殊的叫法,TCP的数据单元称为段(segments)而UDP协议的数据单元称为“数据报(datagrams)”。这个层负责获取全部信息,因此,它必须跟踪数据单元碎片、乱序到达的数据包和其它在传输过程中可能发生的危险。第4层为上层提供端到端(最终用户到最终用户)的透明的、可靠的数据传输服务。所谓透明的传输是指在通信过程中传输层对上层屏蔽了通信传输系统的具体细节。
传输层协议的代表包括:TCP、UDP、SPX等。
5、会话层(Session layer)
这一层也可以称为会晤层或对话层,在会话层及以上的高层次中,数据传送的单位不再另外命名,统称为报文。会话层不参与具体的传输,它提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制。如服务器验证用户登录便是由会话层完成的。
会话层提供的服务可使应用建立和维持会话,并能使会话获得同步。会话层使用校验点可使通信会话在通信失效时从校验点继续恢复通信。这种能力对于传送大的文件极为重要。
6、表示层(Presentation layer)
这一层主要解决用户信息的语法表示问题。它将欲交换的数据从适合于某一用户的抽象语法,转换为适合于OSI系统内部使用的传送语法。即提供格式化的表示和转换数据服务。数据的压缩和解压缩,加密和解密等工作都由表示层负责。例如图像格式的显示,就是由位于表示层的协议来支持
7、应用层(Application layer)
应用层为操作系统或网络应用程序提供访问网络服务的接口。
应用层协议的代表包括:Telnet、FTP、HTTP、SNMP等。
四、总结
OSI 的七层运用各种各样的控制信息来和其他计算机系统的对应层进行通信。这些控制信息包含特殊的请求和说明,它们在对应的 OSI 层间进行交换。每一层数据的头和尾是两个携带控制信息的基本形式。
对于从上一层传送下来的数据,附加在前面的控制信息称为头,附加在后面的控制信息称为尾。当数据在各层间传送时,每一层都可以在数据上增加头和尾,而这些数据已经包含了上一层增加的头和尾。协议头包含了有关层与层间的通信信息。头、尾以及数据是相关联的概念,它们取决于分析信息单元的协议层。例如,传输层头包含了只有传输层可以看到的信息,传输层下面的其他层只将此头作为数据的一部分传递。对于网络层,一个信息单元由第三层的头和数据组成。对于数据链路层,经网络层向下传递的所有信息即第三层头和数据都被看作是数据。换句话说,在给定的某一 OSI 层,信息单元的数据部分包含来自于所有上层的头和尾以及数据,这称之为封装。而对于各层之间的通信则是通过定义的接口来通信。(打个比方吧,每层都好似一个箱子,里面装的要传递的物品,并且每层的箱子都不一样,在往下传递的过程中,下一层会把包括上一层的箱子也当做物品(里面可能都包含好多层箱子),然后在为其套上该层特有的箱子,继续向下传递。而到了目的电脑,就好似拆箱子,每层把属于该层的箱子核对后拆了(注意只能拆属于该层的箱子哟)然后把其他的东西(也许还有好多层箱子)当做物品传递给上层。整个过程就是发送方一直装箱子,接收方一直拆箱子,每层的箱子是不一样的,就好像航母上的彩虹服一样,一样的颜色其功能一样,一样的箱子我才能拆)。 OSI是一个定义良好的协议规范集,它定义了开放系统的层次结构、层次之间的相互关系以及各层所包括的可能的任务。 OSI参考模型并没有提供一个可以实现的方法,而是描述了一些概念,用来协调进程间通信标准的制定。即OSI参考模型并不是一个标准,而是一个在制定标准时所使用的概念性框架。
下期:我们就说说网络的那些事之IP。