ISO/OSI参考模型和TCP/IP模型:修订间差异

来自泡泡学习笔记
跳到导航 跳到搜索
 
第153行: 第153行:
== TCP/IP模型与OSI参考模型的比较 ==
== TCP/IP模型与OSI参考模型的比较 ==


TCP/IP 模型与OSI参考模型有许多相似之处。 1. 二者都采取分层的体系结构,将庞大且复杂的问题划分为若干较容易处理的、范围较小的问题,而且分层的功能也大体相似。 2. 二者都是基于独立的协议栈的概念。 3. 二者都可以解决异构网络的互连,实现世界上不同厂家生产的计算机之间的通信。
TCP/IP 模型与OSI参考模型有许多相似之处。  
 
1. 二者都采取分层的体系结构,将庞大且复杂的问题划分为若干较容易处理的、范围较小的问题,而且分层的功能也大体相似。  
 
2. 二者都是基于独立的协议栈的概念。  
 
3. 二者都可以解决异构网络的互连,实现世界上不同厂家生产的计算机之间的通信。


<br>
<br>


两个模型除具有这些基本的相似之处外,也有很多差别。 1. OSI参考模型的最大贡献就是精确地定义了三个主要概念:服务、协议和接口,这与现代的面向对象程序设计思想非常吻合。而TCP/IP模型在这三个概念上却没有明确区分,不符合软件工程的思想。 2. OSI参考模型产生在协议发明之前,没有偏向于任何特定的协议,通用性良好。但设计者在协议方面没有太多经验,不知道把哪些功能放到哪一层更好。TCP/IP模型正好相反,首先出现的是协议,模型实际上是对已有协议的描述,因此不会出现协议不能匹配模型的情况,但该模型不适合于任何其他非TCP/IP的协议栈。 3. TCP/IP模型在设计之初就考虑到了多种异构网的互连问题,并将网际协议(IP)作为一个单独的重要层次。OSI参考模型最初只考虑到用一种标准的公用数据网将各种不同的系统互连。OSI参考模型认识到IP的重要性后,只好在网络层中划分出一个子层来完成类似于TCP/IP模型中的IP的功能。 4. OSI参考模型在网络层支持无连接和面向连接的通信,但在传输层仅有面向连接的通信。而TCP/IP模型认为可靠性是端到端的问题,因此它在网际层仅有一种无连接的通信模式但传输层支持无连接和面向连接两种模式。
两个模型除具有这些基本的相似之处外,也有很多差别。  
 
1. OSI参考模型的最大贡献就是精确地定义了三个主要概念:服务、协议和接口,这与现代的面向对象程序设计思想非常吻合。而TCP/IP模型在这三个概念上却没有明确区分,不符合软件工程的思想。  
 
2. OSI参考模型产生在协议发明之前,没有偏向于任何特定的协议,通用性良好。但设计者在协议方面没有太多经验,不知道把哪些功能放到哪一层更好。TCP/IP模型正好相反,首先出现的是协议,模型实际上是对已有协议的描述,因此不会出现协议不能匹配模型的情况,但该模型不适合于任何其他非TCP/IP的协议栈。  
 
3. TCP/IP模型在设计之初就考虑到了多种异构网的互连问题,并将网际协议(IP)作为一个单独的重要层次。OSI参考模型最初只考虑到用一种标准的公用数据网将各种不同的系统互连。OSI参考模型认识到IP的重要性后,只好在网络层中划分出一个子层来完成类似于TCP/IP模型中的IP的功能。  
 
4. OSI参考模型在网络层支持无连接和面向连接的通信,但在传输层仅有面向连接的通信。而TCP/IP模型认为可靠性是端到端的问题,因此它在网际层仅有一种无连接的通信模式但传输层支持无连接和面向连接两种模式。


<br>
<br>

2023年12月28日 (四) 13:06的最新版本

OSI 参考模型

国际标准化组织(ISO)提出的网络体系结构模型,称为开放系统互连参考模型(OSI/RM),通常简称为OSI 参考模型。OSI 参考模型有 7 层,自下而上依次为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。低三层统称为通信子网,它是为了联网而附加的通信设备,完成数据的传输功能;高三层统称为资源子网,它相当于计算机系统,完成数据的处理等功能。传输层承上启下。


物理层(Physical Layer)

物理层的传输单位是比特,功能是在物理媒体上为数据端设备透明地传输原始比特流。 物理层主要定义数据终端设备(DTE)和数据通信设备(DCE)的物理与逻辑连接方法,所以物理层协议也称物理层接口标准。由于在通信技术的早期阶段,通信规则称为规程(Procedure),因此物理层协议也称物理层规程。 物理层接口标准很多,如EIA-232C、EIA/TIA RS-449、 CCITT的X.21等。


物理层主要研究以下内容:

1. 通信链路与通信结点的连接需要一些电路接口,物理层规定了这些接口的一些参数,如机械形状和尺寸、交换电路的数量和排列等,例如,笔记本电脑上的网线接口,就是物理层规定的内容之一。

2. 物理层也规定了通信链路上传输的信号的意义和电气特征。例如物理层规定信号A代表数字0,那么当结点要传输数字0时,就会发出信号A,当结点接收到信号A时,就知道自己接收到的实际上是数字0。

注意,传输信息所利用的一些物理媒体,如双绞线、光缆、无线信道等,并不在物理层协议之内而在物理层协议下面。因此,有人把物理媒体当作第0层。


数据链路层(Data Link Layer)

数据链路层的传输单位是帧,任务是将网络层传来的IP 数据报组装成帧。数据链路层的功能可以概括为成帧、差错控制、流量控制和传输管理等。


由于外界噪声的干扰,原始的物理连接在传输比特流时可能发生错误。两个结点之间如果规定了数据链路层协议,那么可以检测出这些差错,然后把收到的错误信息丢弃,这就是差错控制功能。


在两个相邻结点之间传送数据时,由于两个结点性能的不同,可能结点A发送数据的速率会比结点 B 接收数据的速率快,如果不加控制,那么结点B就会丢弃很多来不及接收的正确数据,造成传输线路效率的下降。流量控制可以协调两个结点的速率,使结点A发送数据的速率刚好是结点 B可以接收的速率。


广播式网络在数据链路层还要处理新的问题,即如何控制对共享信道的访问。数据链路层的一个特殊的子层——介质访问子层,就是专门处理这个问题的。


典型的数据链路层协议有 SDLC、HDLC、PPP、STP 和帧中继等。


网络层(Network Layer)

网络层的传输单位是数据报,它关心的是通信子网的运行控制,主要任务是把网络层的协议数据单元(分组)从源端传到目的端,为分组交换网上的不同主机提供通信服务。关键问题是对分组进行路由选择,并实现流量控制、拥塞控制、差错控制和网际互连等功能。


而网络层的作用就是根据网络的情况,利用相应的路由算法计算出一条合适的路径,使这个分组可以顺利到达目标。


流量控制与数据链路层的流量控制含义一样,都是协调A的发送速率和B的接收速率。


差错控制是通信两结点之间约定的特定检错规则,如奇偶校验码,接收方根据这个规则检查接收到的分组是否出现差错,如果出现了差错,那么能纠错就纠错,不能纠错就丢弃,确保向上层提交的数据都是无误的。


如果结点都处于来不及接收分组而要丢弃大量分组的情况,那么网络就处于拥塞状态,拥塞状态使得网络中的两个结点无法正常通信。网络层要采取一定的措施来缓解这种拥塞,这就是拥塞控制。


因特网是一个很大的互联网,它由大量异构网络通过路由器(Router)相互连接起来。因特网的主要网络层协议是无连接的网际协议(Internet Protocol, IP)和许多路由选择协议,因此因特网的网络层也称网际层或IP 层。


网络层的协议有IP、IPX、ICMP、IGMP、ARP、RARP和OSPF等。


传输层(Transport Layer)

传输层也称运输层,传输单位是报文段(TCP)或用户数据报(UDP),传输层负责主机中两个进程之间的通信,功能是为端到端连接提供可靠的传输服务,为端到端连接提供流量控制、差错控制、服务质量、数据传输管理等服务。


数据链路层提供的是点到点的通信,传输层提供的是端到端的通信,两者不同。通俗地说,点到点可以理解为主机到主机之间的通信,一个点是指一个硬件地址或IP地址,网络中参与通信的主机是通过硬件地址或IP地址标识的;端到端的通信是指运行在不同主机内的两个进程之间的通信,一个进程由一个端口来标识,所以称为端到端通信。


使用传输层的服务,高层用户可以直接进行端到端的数据传输,从而忽略通信子网的存在。通过传输层的屏蔽,高层用户看不到子网的交替和变化。由于一台主机可同时运行多个进程,因此传输层具有复用和分用的功能。复用是指多个应用层进程可同时使用下面传输层的服务,分用是指传输层把收到的信息分别交付给上面应用层中相应的进程。


传输层的协议有 TCP、UDP。


会话层(Session Layer)

会话层允许不同主机上的各个进程之间进行会话。会话层利用传输层提供的端到端的服务,向表示层提供它的增值服务。这种服务主要为表示层实体或用户进程建立连接并在连接上有序地传输数据,这就是会话,也称建立同步(SYN)。


会话层负责管理主机间的会话进程,包括建立、管理及终止进程间的会话。会话层可以使用校验点使通信会话在通信失效时从校验点继续恢复通信,实现数据同步。


表示层(Presentation Layer)

表示层主要处理在两个通信系统中交换信息的表示方式。不同机器采用的编码和表示方法不同,使用的数据结构也不同。为了使不同表示方法的数据和信息之间能互相交换,表示层采用抽象的标准方法定义数据结构,并采用标准的编码形式。数据压缩、加密和解密也是表示层可提供的数据表示变换功能。


应用层(Application Layer)

应用层是OSI参考模型的最高层,是用户与网络的界面。应用层为特定类型的网络应用提供访问OSI参考模型环境的手段。因为用户的实际应用多种多样,这就要求应用层采用不同的应用协议来解决不同类型的应用要求,因此应用层是最复杂的一层,使用的协议也最多。典型的协议有用于文件传送的FTP、用于电子邮件的SMTP、用于万维网的HTTP等。


TCP/IP 模型

ARPA在研究ARPAnet时提出了TCP/IP模型,模型从低到高依次为网络接口层(对应OSI参考模型中的物理层和数据链路层)、网际层、传输层和应用层(对应OSI参考模型中的会话层、表示层和应用层)。TCP/IP由于得到广泛应用而成为事实上的国际标准。


网络接口层的功能类似于OSI参考模型的物理层和数据链路层。它表示与物理网络的接口,但实际上TCP/IP本身并未真正描述这一部分,只是指出主机必须使用某种协议与网络连接,以便在其上传递IP分组。具体的物理网络既可以是各种类型的局域网,如以太网、令牌环网、令牌总线网等,也可以是诸如电话网、SDH、X.25、帧中继和ATM等公共数据网络。网络接口层的作用是从主机或结点接收IP 分组,并把它们发送到指定的物理网络上。


网际层(主机-主机)是TCP/IP体系结构的关键部分。它和OSI参考模型的网络层在功能上非常相似。网际层将分组发往任何网络,并为之独立地选择合适的路由,但它不保证各个分组有序地到达,各个分组的有序交付由高层负责。网际层定义了标准的分组格式和协议,即IP。当前采用的IP 协议是第 4 版,即 IPv4,它的下一版本是IPv6。


传输层(应用-应用或进程-进程)的功能同样和OSI参考模型中的传输层类似,即使得发送端和目的端主机上的对等实体进行会话。传输层主要使用以下两种协议:

1. 传输控制协议(Transmission Control Protocol, TCP)。它是面向连接的,数据传输的单位是报文段,能够提供可靠的交付。

2. 用户数据报协议(User Datagram Protocol, UDP)。它是无连接的,数据传输的单位是用户数据报,不保证提供可靠的交付,只能提供“尽最大努力交付”。


应用层(用户-用户)包含所有的高层协议,如虚拟终端协议(Telnet)、文件传输协议(FTP)、域名解析服务(DNS)、电子邮件协议(SMTP)和超文本传输协议(HTTP)。 IP协议是因特网中的核心协议; TCP/IP可以为各式各样的应用提供服务(所谓的everything over IP),同时TCP/IP也允许IP协议在由各种网络构成的互联网上运行(所谓的IP over everything)。


TCP/IP模型与OSI参考模型的比较

TCP/IP 模型与OSI参考模型有许多相似之处。

1. 二者都采取分层的体系结构,将庞大且复杂的问题划分为若干较容易处理的、范围较小的问题,而且分层的功能也大体相似。

2. 二者都是基于独立的协议栈的概念。

3. 二者都可以解决异构网络的互连,实现世界上不同厂家生产的计算机之间的通信。


两个模型除具有这些基本的相似之处外,也有很多差别。

1. OSI参考模型的最大贡献就是精确地定义了三个主要概念:服务、协议和接口,这与现代的面向对象程序设计思想非常吻合。而TCP/IP模型在这三个概念上却没有明确区分,不符合软件工程的思想。

2. OSI参考模型产生在协议发明之前,没有偏向于任何特定的协议,通用性良好。但设计者在协议方面没有太多经验,不知道把哪些功能放到哪一层更好。TCP/IP模型正好相反,首先出现的是协议,模型实际上是对已有协议的描述,因此不会出现协议不能匹配模型的情况,但该模型不适合于任何其他非TCP/IP的协议栈。

3. TCP/IP模型在设计之初就考虑到了多种异构网的互连问题,并将网际协议(IP)作为一个单独的重要层次。OSI参考模型最初只考虑到用一种标准的公用数据网将各种不同的系统互连。OSI参考模型认识到IP的重要性后,只好在网络层中划分出一个子层来完成类似于TCP/IP模型中的IP的功能。

4. OSI参考模型在网络层支持无连接和面向连接的通信,但在传输层仅有面向连接的通信。而TCP/IP模型认为可靠性是端到端的问题,因此它在网际层仅有一种无连接的通信模式但传输层支持无连接和面向连接两种模式。