计算机网络(第2版)
上QQ阅读APP看书,第一时间看更新

1.7.3 开放系统互连参考模型

为了促进计算机网络的发展,国际标准化组织(ISO)于1977年成立了一个委员会,在已有网络的基础上,提出了不基于具体机型、操作系统或公司的网络体系结构,称为开放系统互连(Open System Interconnection,OSI)模型。

OSI模型的设计目的是成为一个所有销售商都能实现的开放网络模型,来克服使用众多私有网络模型所带来的困难和低效性。这个模型把网络通信的工作分为七层。

在参考模型中,对等层协议之间交换的信息单元统称为协议数据单元(Protocol Data Unit,PDU)。而传输层及以下各层的PDU另外还有各自特定的名称。

● 传输层——数据段(Segment)。

● 网络层——分组数据报(Packet)。

● 数据链路层——数据帧(Frame)。

● 物理层——比特(bit)。

OSI的七层结构如图1-21所示。

图1-21 OSI的七层结构

(1)物理层(Physical Layer)

物理层用于规定通信设备机械的、电气的、功能的和规程的特性,用以建立、维护和拆除物理链路连接。具体地讲,机械特性规定了网络连接时所需插件的规格尺寸、引脚数量和排列情况等;电气特性规定了在物理连接上传输比特流时线路上信号电平的大小、阻抗匹配、传输速率距离限制等;功能特性是指对各个信号先分配确切的信号含义,即定义了DTE和DCE之间各个线路的功能;规程特性定义了利用信号线进行比特流传输的一组操作规程,是指在物理连接的建立、维护、交换信息过程中,DTE和DCE双方在各电路上的动作系列。在这一层,数据的单位称为比特(bit)。

属于物理层定义的典型规范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等。

物理层的主要功能:

1)为数据端设备提供传送数据的通路,数据通路可以是一个物理媒体,也可以是多个物理媒体连接而成。一次完整的数据传输,包括激活物理连接,传送数据,终止物理连接。所谓激活,就是不管有多少物理媒体参与,都要在通信的两个数据终端设备间连接起来,形成一条通路。

2)物理层要形成适合数据传输需要的实体,为数据传送服务。一是要保证数据能在其上正确通过,二是要提供足够的带宽(带宽是指每秒钟内能通过的比特数),以减少信道上的拥塞。传输数据的方式能满足点到点、一点到多点、串行或并行、半双工或全双工、同步或异步传输的需要。

物理层的主要设备:中继器、集线器。

(2)数据链路层(Data Link Layer)

在物理层提供比特流服务的基础上,建立相邻结点之间的数据链路,通过差错控制提供数据帧在信道上无差错的传输,并进行各电路上的动作系列。

数据链路层在不可靠的物理介质上提供可靠的传输。该层的作用包括物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。在这一层,数据的单位称为帧(frame)。

数据链路层协议的代表包括SDLC、HDLC、PPP、STP、帧中继等。

链路层的主要功能是为网络层提供数据传送服务,这种服务要依靠本层所具备的功能来实现。

数据链路层实际上由两个独立的部分组成:介质存取控制(Media Access Control,MAC)层和逻辑链路控制(Logical Link Control,LLC)层。MAC描述在共享介质环境中如何进行调度、发送和接收数据。MAC确保信息跨链路的可靠传输,对数据传输进行同步,识别错误和控制数据的流向。

MAC地址是烧录在网卡(Network Interface Card,NIC)里的地址,也叫硬件地址,由48bit(6B)长的十六进制数字组成。形象地说,MAC地址就如同人们的身份证号码,具有全球唯一性。

数据链路层主要设备有交换机、网桥。

(3)网络层(Network layer)

在计算机网络中进行通信的两个计算机之间可能会经过很多个数据链路,也可能还要经过很多通信子网。网络层的任务就是选择合适的网间路由和交换结点,确保数据及时传送。网络层将数据链路层提供的帧组成数据报,报中封装有网络层包头,其中含有逻辑地址信息——源站点和目的站点地址的网络地址。

如果你在谈论一个IP地址,那么你是在处理第三层的问题,这是“数据报”问题,而不是第二层的“帧”。IP是第三层的一部分,此外还有一些路由协议和地址解析协议(ARP)。有关路由的一切事情都在第三层处理。地址解析和路由是第三层的重要目的。网络层还可以实现拥塞控制、网际互连等功能。

在这一层,数据的单位称为数据报(packet)。网络层协议的代表包括IP、IPX、RIP、OSPF等。

网络层主要设备为路由器。

(4)传输层(Transport layer)

第4层的数据单元也称作数据报(packet)。但是,当人们谈论TCP等具体的协议时又有特殊的叫法,TCP的数据单元称为段(segments),而UDP的数据单元称为数据报(datagrams)。这一层负责获取全部信息,因此,它必须跟踪数据单元碎片、乱序到达的数据报和其他在传输过程中可能发生的危险。第四层为上层提供端到端(最终用户到最终用户)的透明的、可靠的数据传输服务。所谓透明的传输是指在通信过程中传输层对上层屏蔽了通信传输系统的具体细节。

传输层协议的代表包括TCP、UDP、SPX等。

(5)会话层(Session layer)

这一层也可以称为会晤层或对话层,在会话层及以上的高层次中,数据传送的单位不再另外命名,统称为报文。会话层不参与具体的传输,它提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制。如服务器验证用户登录便是由会话层完成的。会话层的主要标准有“DIS8236:会话服务定义”和“DIS8237:会话协议规范”。

(6)表示层(Presentation layer)

这一层主要解决用户信息的语法表示问题。它将欲交换的数据从适合某一用户的抽象语法,转换为适合OSI系统内部使用的传送语法。即提供格式化的表示和转换数据服务。数据的压缩/解压缩、加密/解密等工作都由表示层负责。例如图像格式的显示,就是由位于表示层的协议来支持。表示层协议一般不与特殊的协议栈关联,如QuickTime是Apple计算机的视频和音频的标准,MPEG是ISO的视频压缩与编码标准。常见的图形图像格式如PCX、GIF、JPEG,是不同的静态图像压缩和编码标准。

(7)应用层(Application layer)

应用层为操作系统或网络应用程序提供访问网络服务的接口。应用层协议的代表包括Telnet、FTP、HTTP、SNMP等。