在20世纪80年代早期,ISO即开始致力于制定一套普遍适用的规范集合,以使得全球范围的计算机平台可进行开放式通信。ISO创建了一个有助于开发和理解计算机的通信模型,即开放系统互联模型(OSI,Open System Interconnection)。OSI模型将网络结构划分为7层:即物理层、数据链路层、网络层、传输层、会话层、表示层和应用层等。每一层均有自己的一套功能集,并与紧邻的上层和下层交互作用。在顶层,应用层与用户使用的软件(如字处理程序或电子表格程序)进行交互。在OSI模型的底端是携带信号的网络电缆和连接器。总的说来,在顶端与底端之间的每一层均能确保数据以一种可读、无错、排序正确的格式被发送。
OSI模型是对发生在网络中两节点之间过程的理论化描述。它并不规定支持每一层的硬件或软件的模型,图1-9描绘了OSI模型和它的层结构。
图1-9 OSI模型层次结构
1.6.2.1 物理层
物理层是OSI模型的最低层或第一层,该层包括物理联网媒介,如电缆连线连接器。物理层的协议产生并检测电压以便发送和接收携带数据的信号。在个人电脑上插入网络接口卡,就相当于建立了计算机联网的基础。即提供了一个物理层。尽管物理层不提供纠错服务,但它能够设定数据传输速率并监测数据出错率。
1.6.2.2 数据链路层
数据链路层是OSI模型的第二层,它控制网络层与物理层之间的通信。它的主要功能是将从网络层接收到的数据分割成特定的可被物理层传输的帧。帧是用来移动数据的结构包,它不仅包括原始(未加工)数据,或称“有效荷载”,还包括发送方和接收方的网络地址以及纠错和控制信息。其中的地址确定了帧将发送到何处,而纠错和控制信息则确保帧无差错到达。
图1-10是一个简化的数据帧图。这个帧的每个部分对所有类型的帧都是必需的,且是通用的。
图1-10 简化的数据帧图
通常,发送方的数据链路层将等待来自接收方对数据已正确接收的应答信号。假如发送方不能获得这一应答信号,则它的数据链路层将给出指令以重发该信息。数据链路层并不能试图找出在发送时出现了什么错误。
数据链路层的功能独立于网络和它的节点和所采用的物理层类型,有一些连接设备,如网桥或交换机,由于它们要对帧解码并使用帧信息将数据发送到正确的接收方,所以它们工作在数据链路层。
1.6.2.3 网络层
网络层,即OSI模型的第三层,其主要功能是将网络地址翻译成对应的物理地址,并决定如何将数据从发送方路由到接收方。
网络层通过综合考虑发送优先权、网络拥塞程度、服务质量以及可选路由的花费来决定从一个网络中节点A到另一个网络中节点B的最佳路径。由于网络层处理路由,所以路由器属于网络层,它在连接网络各段的同时智能指导数据传送。在网络中,“路由”是基于编址方案、使用模式以及可达性来指引数据的发送。
网络层协议还能补偿数据发送、传输以及接收设备能力的不平衡性。为完成这一任务,网络层对数据包进行分段和重组。分段即是指当数据从一个能处理较大数据单元的网络段传送到仅能处理较小数据单元的网络段时,网络层减小数据单元的大小的过程。重组过程即是重构被分段的数据单元。(www.xing528.com)
1.6.2.4 传输层
传输层主要负责确保数据可靠、顺序、无错地从A点到传输到B点(A、B点可能在也可能不在相同的网络段上)。因为如果没有传输层,数据将不能被接受方验证或解释,所以,传输层常被认为是OSI模型中最重要的一层。传输协议同时进行流量控制或是基于接收方可接收数据的快慢程度规定适当的发送速率。
除此之外,传输层按照网络能处理的最大尺寸将较长的数据包进行强制分割。例如,以太网无法接收大于1500字节的数据包。发送方节点的传输层将数据分割成较小的数据片,同时对每一数据片安排一序列号,以便数据到达接收方节点的传输层时,能以正确的顺序重组。该过程即被称为排序。
在网络中,传输层发送一个ACK(应答)信号以通知发送方数据已被正确接收。如果数据有错,传输层将请求发送方重新发送数据。同样,假如数据在给定时间段未被应答,发送方的传输层也将认为发生了数据丢失从而重新发送它们。
1.6.2.5 会话层
会话层负责在网络中的两节点之间建立和维持通信。术语“会话”指在两个实体之间建立数据交换的连接;常用于表示终端与主机之间的通信。所谓终端是指几乎不具有(如果有的话)自己的处理能力或硬盘容量,而只依靠主机提供应用程序和数据处理服务的一种设备。
会话层的功能包括:建立通信链接,保持会话过程通信链接的畅通,同步两个节点之间的对话,决定通信是否被中断以及通信中断时决定从何处重新发送。
会话层通过决定节点通信的优先级和通信时间的长短来设置通信期限。再者,会话层监测会话参与者的身份以确保只有授权节点才可加入会话。
1.6.2.6 表示层
表示层如同应用程序和网络之间的翻译官,在表示层,数据将按照网络能理解的方案进行格式化;这种格式化也因所使用网络的类型不同而不同。表示层管理数据的解密与加密,如系统口令的处理如果在Internet上查询你银行账户,使用的即是一种安全连接。你的账户数据在发送前被加密,在网络的另一端,表示层将对接收到的数据解密。除此之外,表示层协议还对图片和文件格式信息进行解码和编码。
1.6.2.7 应用层
OSI模型的顶端即第七层是应用层。应用层负责对软件提供接口以使程序能使用网络服务。术语“应用层”并不是指运行在网络上的某个特别应用程序,如Microsoft Word,应用层提供的服务包括文件传输、文件管理以及电子邮件的信息处理。例如,如果在网络上运行Microsoft Word。并选择打开一个文件,该请求将由应用层传输到网络。
应用层的一个是API(应用程序接口),API是使一个程序与操作系统相互作用的例行程序(即一组指令)。API属于OSI模型的应用层,网络环境中一个API的例子是MSMQ(Microsoft消息队列)。MSMQ顺序存储节点之间发送的信息,并在到达接收方的链接畅通时将数据转发到它们的目的地。程序可以独立运行,而不管发送数据时目标节点是否被连接到网络上。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。