1.1.2 OSI七层模型

1.1.2 OSI七层模型

设备之间要想进行通信,必须遵循一套相同的通信标准,而这个标准就是协议。只有遵循协议制定的标准,网络中所有的设备才可以相互通信,否则会出现网络不兼容,不能正常通信的尴尬局面。

20世纪70年代已经实现了基本的网络互联,只是当时网络结构都是各个厂家私有的,如IBM 的SNA 标准、美国国防部的TCP/IP等。

如果将两个不同厂家的产品放在一起使用,由于各厂家产品使用的标准不一致,可能会涉及不兼容的问题。例如:A 公司使用的是IBM 的网络标准,B公司使用的是Novell公司的IPX/SPX 标准,两家公司是单独的网络,运行起来没有任何问题。假如有一天,A 公司将B公司收购了,因此网络需要整合到一起,这时,由于两家公司在初建网络时使用了不同厂家的标准,网络就不能兼容了。

这样的兼容性状况在当时常有发生,于是国际标准化组织(ISO)于1984年提出了OSI RM(Open System Interconnection Reference Model,开放系统互连参考模型)。OSI参考模型很快成为计算机网络通信的基础模型。

OSI参考模型从低到高各个层次的基本功能如下。

物理层:在设备之间传输比特流,规定了电平、速度和电缆针脚。物理层定义了一台设备与物理传输介质(如双绞线或光纤)之间应该如何沟通。在物理层中传输的协议数据单元的名称是比特。

数据链路层:将比特组合成字节,再将字节组合成帧,使用链路层地址(以太网使用MAC地址)来访问介质,并进行差错检测。数据链路层接受物理层提供的服务,同时为网络层提供服务。数据链路层的功能是在广域网中实现相邻网络设备之间的连通性,以及在局域网中实现网络设备之间的连通性。除了建立和终结二层链路的功能之外,数据链路层协议也可以负责检查收到的数据帧是否完整,它可以重传未经确认的帧并处理重复的帧请求,以此检测和恢复物理层中的错误。此外,数据链路层的功能还包括帧流量的控制和管理。数据链路层的协议数据单元的名称是数据帧。典型的数据链路层协议有802.2、802.3、CMSC/CD、PPP、FR、HDLC。

网络层:提供逻辑地址,供路由器确定路径。网络层能够实现一个或多个网络中的两个设备之间的通信。网络层的协议数据单元的名称是数据包。典型的网络层协议有IPv4、IPv6、ICMP、IGMP、ARP等。

传输层:提供面向连接或非面向连接的数据传递以及进行重传前的差错检测。网络层并不负责确保数据传输的过程和结果是可靠的,而传输层可以确保信息无错、有序、无损或无重复地传输。传输层的协议数据单元的名称是数据段。典型的传输层协议有TCP、UDP。

会话层:负责建立、管理和终止表示层实体之间的通信会话。会话层的通信由不同设备中的应用程序之间的服务请求和响应组成。

表示层:提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。

应用层:OSI参考模型中最靠近用户的一层,为应用程序提供网络服务。应用层包含的功能有资源共享、远程文件访问、网络管理、网络虚拟终端等。例如,大家浏览网页时所依赖的HTTP和DNS就是应用层协议。应用层的协议数据单元的名称是数据。典型的应用层协议有HTTP、FTP、Telnet等。

OSI参考模型具有以下优点:简化了相关的网络操作;提供了不同厂商之间的兼容性;促进了标准化工作;结构上进行了分层;易于学习和操作。