协议栈中向上的第3层为网络层。这一层沿网络控制包的通路。所有的网络都由物理路由 (电缆路径)和逻辑路由(软件路径)组成。网络层读取包协议地址信息并将每一个包沿最优路径 (包括物理的和逻辑的)转发以进行有效传输。这一层允许包通过路由器从一个网络发送到另一个网络。网络层控制包的通路,有些象交通控制器,沿几条不同路径中最有效的那一条来路由包。为确定最优路径,网络层需要持续地收集有关各个网络和结点地址的信息,这一过程称为发现。并非所有的协议都在网络层包含信息,这些协议是不可路由的。两种典型的不能被路由的网络协议是DEC公司的LAT和Microsoft 公司的NetBEUI。这两种协议通常不在需要路由的中型和大型网络中实施。可以将多个目标地址指定为一个组。带有组目标地址的包将被传递到多个计算机或网络设备。
网络层可以通过创建虚拟(逻辑)电路在不同的路径上路由数据。虚拟电路是用来发送和接收数据的逻辑通信路径。虚拟电路只针对于网络层。既然网络层沿着多个虚拟电路管理数据, 那么数据到达时就有可能出现错误的顺序。网络层在将包传输给下一层前检查数据的顺序, 如有必要就对其进行改正。网络层还要对帧编址并调整它们的大小使之符合接收网络协议的需要,并保证帧传输的速度不高于接收层接收的速度。
4、传输层
与数据链路层和网络层一样,传输层的功能是保证数据可靠地从发送结点发送到目标结点。例如,传输层确保数据以相同的顺序发送和接收,并且传输后接收结点会给出响应。当在网络中采用虚拟电路时,传输层还要负责跟踪指定给每一电路的唯一标识值。这一I D称为端口、连接标识或套接字,是由会话层指定的。传输层还要确定包错误校验的级别,最高的级别可以确保包在可以接受的时间内无差错地从结点发送到结点。
用于在传输层间通信的协议采用了多种可靠性措施。0类是最简单的协议,不执行错误校验或流控制,依靠网络层来执行这些功能。1类协议监控包传输错误,如果检查到了错误,就通报发送结点的传输层让它重新发送包。2类协议监控传输层和会话层间的传输错误并提供流控制。流控制确保设备不会以高于网络或接收设备接收信息的速度来发送信息。3类协议除提供1类和2类协议的功能外,还可以在某些环境下恢复丢失的包。最后, 4类协议除执行3类协议的功能外,还具有扩展的错误监控和恢复能力。
传输层的另一种功能就是当网络使用不同的要求包大小各异的协议时,将消息分段为较小的单元。发送网络上由传输层分割的数据单元被接收端的传输层重新以正确的顺序组合, 以便网络层解释。
5、会话层
会话层负责建立并维护两个结点间的通信链接,也为结点间通信确定正确的顺序。例如, 它可以确定首先传输哪个结点。会话层还可以确定结点可以传输多远的距离以及如何从传输错误中恢复。如果传输在低层中无意地中断了,会话层将努力重新建立通信。在某些工作站操作系统中,可以将工作站从网络上断开,然后重新连接,之后无须登录便可继续工作。这是因为物理层断开又重新连接后,会话层也重新进行了连接。
这个层使每一个给定的结点与唯一的地址一一对应起来,就像邮政编码只与特定的邮政区域相关联。一旦通信会话结束,这一层就与结点断开了。
说明这一层上的通信的示例发生在工作站访问Internet上的服务器时。工作站和服务器都有唯一的用点号分开的二进制Internet 协议(IP)地址,如122.72.15.122和145.19.20.22。会话层使用这一地址信息来帮助建立结点间的联系。一旦建立了联系,工作站可以登录了,通信会话就通过会话层建立起来了。
6、表示层
这一层处理数据格式化问题,由于不同的软件应用程序经常使用不同的数据格式化方案, 所以数据格式化是必需的。在某种意义上,表示层有些像语法检查器。它可以确保数字和文本以接收结点的表示层可以阅读的格式发送。例如,从IBM大型机上发送的数据可能使用的是EBC DIC字符格式化,要使运行Windows 95或Windows 98的工作站可以读取信息,就必须将其解释为ASCII字符格式。
表示层还负责数据的加密。加密是将数据编码,让未授权的用户不能截取或阅读的过程。例如,计算机的帐户密码可以在LAN上加密,或者信用卡号可以通过加密套接字协议层 (Secure Sockets Layer,SSL )在WAN上加密。
表示层的另一功能是数据压缩。当数据格式化后,在文本和数字中间可能会有空格也格式化了。数据压缩将这些空格删除并压紧数据,减小其大小以便发送。数据传输后,由接收结点的表示层来解压缩。
7、应用层
应用层是OSI模型的最高层,控制着计算机用户绝大多数对应用程序和网络服务的直接访问。这里的网络服务包括文件传输、文件管理、远程访问文件和打印机、电子邮件的消息处理和终端仿真。计算机程序员便是使用该层来将工作站连接到网络服务上,例如,可将应用程序链接到电子邮件中,或在网络上提供数据库访问。
Microsoft Windows 转向器贯穿应用层工作。转向器是使一台计算机对另一台可见,从而使得另一台计算机可以通过网络来访问它的一种网络服务。当用户共享Microsoft 网络上的文件夹时,其他计算机可以发现这台计算机并可以使用转向器访问该文件夹。
OSI 模型七个层的功能如表所示。

关注此文的读者还看过: