首页 理论教育 协议分层中的虚拟通信过程

协议分层中的虚拟通信过程

时间:2023-06-17 理论教育 版权反馈
【摘要】:甲乙两方同层之间的通信称为虚拟通信,它建立在同层进程的基础上,沿水平方向进行。从通信过程可以引出虚拟通信的概念,两机的同层进程认为它们之间的通信是按“水平”方向进行的,每一方好像有“发送到对方”和“从对方接收”的过程,由于这个过程不是直接而是利用较低层通过3/4接口向对方进行通信,所以称为虚拟通信。

协议分层中的虚拟通信过程

现代计算机网络软件都采用高度结构式程序方法。这种方法,一般都设计成一组功能定义明确的层次,并且规定了同层次进程之间进行通信的规则和约定,称为协议。所谓网络体系结构(Net Architecture)就是指划分层次、每层的功能、层间接口以及相同层次通信的协议。

网络的主机间按报文进行通信,报文通信的协议一般按功能层组成多级结构形式。每个功能层都有明确定义的功能以及与相邻层的接口。各功能层之间的关系是:低层为高层服务,高层使用低层的特性。采用这种结构方式的优点是,把整体网络功能分割成若干个部分,对每个部分来说,设计就变得具体且易于实现。某一功能层相对独立,只要与相邻层的接口不变,其内部的变化修改不影响整体软件的变化。这种结构的特点是,功能层次愈高,愈接近应用,下层的协议对上层来说是透明的,网络用户只看到和网络应用相关的操作命令和各种网络服务程序的特性。

一般说来,大多数网络软件都按分层结构进行组织,但层次和每层的名称随网络不同而有所变化。通信的两个机器的相同层的实体叫做同层进程,它们之间的通信所使用的各种约定统称协议,相邻层之间的约定称为接口。实际的通信在对话双方的每一层次上进行,而对话都建立在相同层次上。每次通信信息都发源于最高层(网络服务),且向下流经某些通信基元(各层)进入到实际的物理互连设施,然后又通过一系列的通信基元(各层)到达对方的最高层。对方的最高层将响应信息沿相反的路径返回来。

从上述甲乙两方通信过程看出:

(1)对话建立在同层次上,但实际上甲方和乙方的同层次软件并没有直接进行通信,而是沿着实线所示的路线进行,如图4-2所示。甲乙两方同层之间的通信称为虚拟通信,它建立在同层进程的基础上,沿水平方向进行。由于低层进程对高层进程是透明的,每一层都好像有一个“直接发送至对方”和“从对方直接接收”的过程似的。

978-7-111-34393-6-Chapter04-2.jpg(www.xing528.com)

图4-2 协议层次

(2)实际通信是在相邻层之间进行的,相邻层之间要有明确的规定,这些规定或约定称为接口。划分层次要明确各层的功能,使各相邻层之间传输的信息尽量减少。

举一个抽象的例子进一步说明网络层次结构的通信方法和细节。第7层(最高层)是网络和用户的界面,用户或应用程序使用网络,在第7层产生了一个报文M,第7层就把这个报文经适当处理后通过6/7接口传给第6层,第6层通过判别、分类、登记等必要的处理后,再通过5/6接口传到第5层,同理,第5层经4/5接口传到第4层。

现在假定第4层必须将进入的报文分割成信息包,并给每个小的单位前面加上一个引头H4,这个引头一般包括序号、目标地址等控制信息。允许目标计算机的第4层能以正确的顺序重新将信息包拼装成报文。因为在多节点多路径情况下,一个目标计算机接收信息包的次序并不一定和发送信息包的顺序完全相同,所以信息包序号可以用来按序拼装报文。第3层决定信息包传送路径,在收到的信息包上加上本次的引头H3后将其传送到第2层。第2层和通信链路有关,不仅在信息包上加上自己的引头H2,而且在信息包数据后面还要附上信息包的结尾T2,然后将最后合成的单位H2H3H4M1T2或H2H3H4M2T2递交给物理层即第1层。在接收信息包的计算机上,从第1层开始,一层一层地把该报文向上传输,并在和发送计算机相同的层次上,剥去该层次的引头,这就不会把第n次以下的引头传送到第n层。这种按层次传送,发送信息包的计算机为了和同层通信逐次加上引头,而在接收信息包的计算机又把对方同层的引头剥去的方式,称为“洋葱皮”方式。

从通信过程可以引出虚拟通信的概念,两机的同层(例如第4层)进程认为它们之间的通信是按“水平”方向进行的,每一方好像有“发送到对方”和“从对方接收”的过程,由于这个过程不是直接而是利用较低层通过3/4接口向对方进行通信,所以称为虚拟通信。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈