专利名称:元件标识分发方法及基于该元件标识的应用层路由方法
技术领域:
本发明涉及多层分布式系统的应用层通讯管理,具体涉及一种应用层元 件标识分发方法及基于元件标识的^各由方法。
背景技术:
分布式系统是近年提出的 一种新的应用模式,它是一个对用户看起来象 普通系统,然而运行在一系列自治处理单元上的系统,每个自治处理单元有 各自的物理存储器空间,这些自治处理单元也可以称之为元件。在这些元件 之间有紧密的合作,当系统资源足够丰富时,整个系统能够支持任意数量的 进程和元件的动态扩展。
参照图l所示,为多层分布式应用系统的结构示意图。本发明中所提及 的多层分布式应用系统指一个系统由多个层次的多个系统元件按树形的网 络结构连接而成,所述元件具体指可以独立部署在不同计算机上有独立功能 的,可以通讯和管理的子系统。系统通过位于树才艮部的元件对整个系统中的 各个元件进行集中的管理,系统的业务数据通过连接树上节点(元件)的通
讯通道可以双向流动。如图1中元件A、元件B、元件C1、元件C2、元件 Dl、元件D2、元件D3、元件D4、元件E1、元件E2均为系统中的节点元 件,可部署于不同的计算机上、通过TCP/IP (传输控制协议/网际协议)网 络连接为 一个多层分布式系统。
分布式系统中应用层的通讯管理,是分布式系统的基本问题之一 。
本发明中涉及的应用层路由(如未特别说明,文中路由均指该应用层路 由)指系统中的与整个系统有一个或一个以上的网络通讯通道接口的元件, 从该元件发出的或者转发的数据需要根据数据的目的,通过查询通讯通道接 口的路由表来确定从哪个接口发出。在多层分布式集中管理的系统中,如分布式入侵检测系统,分布式网络 安全审计系统,安全运行管理系统等,若要实现分布式系统中应用层的通讯
管理,则要对各个元件加以标识,就需要解决以下的系统元件的标识问题
(1) 标识元件在多层分布式系统中的逻辑意义。比如放置在网络出口 处的防火墙和放置内网不同子网之间的防火墙需要不同的标识来区分其在 不同的逻辑区域。
元件产生的数据,在分布式系统中集中存储时,需要该元件的唯一 索引, 这个唯一的索引不能因为元件的物理地址,TCP/IP地址等的变化而变化; 因为如果使用TCP/IP地址来索引,当元件的地址发生变化时,历史数据和 新数据将具有不同的索引,这对数据检索和理解带来巨大困难;使用设备的 以太网络地址也是同样的道理,网卡的替换和维修将导致以前的数据难以检 索。
因而,设置具有一定稳定性的元件标识,并根据该元件标识对元件加以 区分就十分必要。
(2) 同一计算机和IP地址上可能部署有几个不同的系统元件,同样导 致不能够使用网络IP地址等来标识系统元件。
同时,在多层的分布式系统通讯时,从多层次分布式系统管理的角度, 集中管理方式不希望有越层的管理行为,因此存在以下的一些需要解决的问 题
(1)应用层根部节点元件到叶节点元件的命令或者数据的传输,往往 需要中间层次的节点知晓、理解命令和数据的内容。如广播重新启动命令; 如叶节点元件产生的数据,其上层节点要做不同的处理。
(2 )如果不同层次的元件对叶节点元件的数据通讯都使用单独的通道 连接,则将急剧增加叶节点元件处理通讯和数据的复杂性。
(3) 中间层次节点元件如果能够理解和转发上下行的命令和数据,并 根据自己的策略进行相应的处理和决策,将极大地增加系统的灵活性。
(4) 由于多层分布式的系统部署可能跨越Internet (因特网)和Intranet (内联网),因此,根节点元件和叶节点元件可能无法实现直接的网络连接,例如外网的主机,无法主动直接给位于内网一个主机直4妻发送信息。
这些问题和需求都需要多层分布式系统中有1个以上通讯通道接口的 元件具备应用层的路由能力和应用层的转发能力。
发明内容
本发明所要解决的技术问题是提供一种多层分布式系统的应用层路由 方法和元件标识分发方法,满足多层分布式集中管理系统的通讯需要。
为了解决以上技术问题,本发明提供了 一种分布式系统中元件标识的分 发方法,所述分布式系统包括多个节点元件,系统通过根节点元件对整个系
统中的各个元件进行集中的管理,所述方法包括
(1) 根节点元件首先建立自己的元件标识;
(2) 在向根节点元件逐级添加它的第N级节点元件时,根节点元件生 成所述第N级节点元件的标识;之后,根节点元件将所述第N级节点元件 的标识发送给第N-l级节点元件,第N-l级节点元件建立和第N级节点元 件的连接,然后把所述第N级节点元件的标识分发给所述第N级节点元件;
其中N为分布式应用系统所分的层数,N大于等于2,根节点元件为 第一级节点元件。
进一 步来说,所述元件标识根据节点元件的类别和/或该节点在该类别 中的实例序号建立。
进一步来说,步骤(2)中在添加该第N级节点元件时,提供该第N级 节点元件的网络参数,第N-l级节点元件根据所述第N级节点元件的网络 参数,使用应用层协议建立和第N级节点元件的连接,所述网络参数为传 输控制协议地址及通讯端口 ,或者所述网络参数为网际协议地址及通讯端 c 。
进一步来说,通过在应用层协议中开始标识的分发会话,在标识分发报 文中将标识发送给所述第N级节点元件。
进一步来说,所述方法还包括第N级节点元件在接受到该标识分发 报文之后,向根节点元件发送响应报文,确认接受该标识或者回应原来的标识。
为了解决上述技术问题,本发明还提供了 一种分布式系统的应用层路由 方法,所述分布式系统包括多个节点元件,系统通过根节点元件对整个系统 中的各个元件进行集中的管理,所述方法包括
(1) 建立及分发分布式系统中的各级节点元件的元件标识,在根节点 元件向某一节点元件发送标识分发报文,所述某一节点元件发送响应报文的 过程中,在所述响应报文经过的各级节点元件上生成基于所述响应才艮文经过
的各级节点元件的元件标识,并与通讯通道接口相对应的^各由表项;
(2) 分布式系统中的任意一个节点元件接收到传输4艮文,所述传输报 文中携带目的节点元件的元件标识;
(3) 所述任意一个节点元件在自己的路由表项中查找所述目的节点元 件的元件标识,如包括所述目的节点元件的元件标识,则通过所述任意一个 节点元件的相应通讯通道接口对所述传输报文进行转发,直到目的节点元件 收到所述传输报文。
进一步来说,步骤(1 )进一步包括
(la)逐层建立分布式应用系统中的各级节点元件及元件标识,并逐层 用标识分发才艮文将所述元件标识分发给相应的第N级节点元件,所述标识 分发报文包括第N级节点元件的标识、第N-l级节点元件的标识,及根节 点元件的标识;
(lb )第N级节点元件向根节点元件发送响应报文,在第N级节点元 件向根节点元件发送响应报文的过程中,使用根节点元件的标识查询路由选 路,同时所有经过的节点元件向第N级节点元件方向的通讯通道的接口添 加基于第N级节点元件标识的指向第N级节点元件的路由表项;并在第N 级节点元件的通向第N-1级节点元件通讯通道的接口上添加基于第N-1级节 点元件的元件标识的指向第N-l级节点元件的路由表项,以及基于根节点元 件标识的指向根节点元件的路由表项。
其中N为分布式应用系统所分的层数,N大于等于2,根节点元件为第 一级节点元件。
8进一步来说,步骤(lb)中所述在第N级节点元件向根节点元件发送
响应报文的过程中,使用根节点元件的标识查询路由选路,包括对于第N 级节点元件,其只有一个通讯通道,所述响应报文通过该通讯通道发给第 N-l级节点元件后,所述第N-l级节点元件通过根节点元件的标识查询路由 选路,直至根节点元件收到所述响应报文。
进一步来说,步骤(la)进一步包括 (lal)根节点元件首先建立自己的元件标识;
(la2)在向根节点元件逐级添加它的第N级节点元件时,根节点元件 首先生成所述第N级节点元件的标识;之后,根节点元件将所述第N级节 点元件的标识发送给第N-l级节点元件,第N-l级节点元件建立和第N级 节点元件的连接,然后把所述第N级节点元件的标识分发给所述第N级节 点元件。
进一步来说,步骤(lb)进一步包括当节点元件中的上层节点元件给 不相邻的下层节点元件发送业务请求报文时,所述业务请求报文中包括所述 上层节点元件的元件标识,在所述业务请求报文所经过的与所述上层节点元 件不相邻的所有节点元件的通讯通道的接口上添加基于所述上层节点元件 的元件标识的指向所述上层节点元件的路由表项。
进一 步来说,所述元件标识根据节点元件的类别和/或该节点元件在该 类别中的实例序号建立。
进一步来说,步骤(la2)中在添加第N级节点元件时,提供该第N级 节点元件的网络参数,第N-l级节点元件根据所述第N级节点元件的网络 参数,使用应用层协议建立和第N级节点元件的连接,所述网络参数为传 输控制协议地址及通讯端口 ,或者所述网络参数为网际协议地址及通讯端 口 。
进一步来说,通过在所述应用层协议中开始标识的分发会话,在标识分 发报文中将所述第N级节点元件的标识分发给所述第N级节点元件。
进一步来说,步骤(la)中所述响应报文,包括确认接受该标识报文 或者回应原来的标识的纟艮文。进一步来说,步骤(2)与步骤(3)之间还包括以下步骤
(2a)当任何一个节点元件只有一个通讯通道时,这时默认所有的传输 才艮文通过该通道发出;和/或
当一个节点元件接收到的传输报文为目的元件标识为全零的广播类报 文,则将所述广播类报文从该节点元件的除所述广播类报文进入的通讯通道 接口外的所有通讯通道的接口发出,所述方法的流程结束;
否则执行步骤(3)。
进一步来说,步骤(3)中还包括
如果所述某一节点元件在自己的路由表项中没有查找到所述目的节点 元件的元件标识,则该某一节点元件将所述传输报文按根节点元件的元件标 识进行路由选路,直到一个层次的节点元件的路由表项中有目的节点元件的
元件标识o
进一步来说,所述方法还包括以下步骤当根节点元件发出删除某一节 点元件的命令时,所有删除命令报文经由的节点元件的相应的通讯通道接口 删除通向所述被删除节点元件的路由表项。
应用本发明的方法,树形多层分布式系统从根节点元件开始逐层添加各 级节点元件,按此顺序生成和分发系统元件的唯一标识,该标识与TCP/IP 网络位置无关。基于系统元件标识的应用层路由表项的创建和维护不使用单 独的路由协议或者手工配置生成,而是通过系统元件的标识的创建、分发自 举生成并在系统删除元件等操作时进行路由表项的维护。具体来说,在根节 点元件给下层的相邻或者不相邻的节点元件发送标识分配报文和下层元件 发送响应报文的过程中,生成相应的路由表项。路由表项的维护是通过多层 分布式系统中的系统元件的添加、删除等,进行可路由元件的路由表项维护 的。本发明中涉及的应用层路由,有别于TCP/IP协议中的静态和动态^各由 概念,该路由方法用以选择通讯接口的是元件标识,而不是TCP/IP地址, 因而具有路由的实现方法更加简单的特点,并且根据元件标识实现的路由方 法,使不同层次的元件对叶节点元件的数据通讯可以共用通道连接,节约了 系统资源。并且本发明还根据具体应用中的特殊情况,设置了默i人路由,更好的满 足应用需求。
本发明中涉及的元件标识是用以标识系统中元件的唯一性的一 串数字, 该标识与元件部署的计算机的IP地址,开放的端口,元件的运行进程的进 程号等不具有永久的相关性,即不随着其他参数的改变而改变。从而采用本
发明的标识分发方法可以更好地实现对元件加以区分,并具有元件标识稳定 可靠的特点。
图1为多层分布式应用系统的结构示意图。
图2为本发明一实施例的标识分发方法流程图。 图3为本发明一实施例的^^由方法流程图。
具体实施例方式
本发明的主要思想是在建立及分发多层分布式管理系统各个节点元件 的元件标识的过程中,根据分发报文及响应报文的选路,针对响应净艮文所经 过的每个节点元件的各个通讯通道接口 ,生成基于所述响应报文经过的各级
节点元件的元件标识的路由表项,然后,当在各个节点元件间转发传输报文 时,利用所述传输报文所携带的目的元件标识在各个节点元件的路由表项中 进行查找,实现路由选路。
并且本发明还提供了 一种对节点元件建立及分发标识的方法,具有实现 简单的特点,并且经过对所述节点元件采用具有唯一性及稳定性特征的一组 数据进行标识后,可以方便的实现路由,并可以对所述节点元件更好的加以 区分。
下面结合附图对本发明优选实施例进行详细说明。
参照图2所示,为本发明一实施例的标识分发方法流程图。本实施例的 分布式系统包括多个节点元件,系统通过根节点元件对整个系统中的各个元 件进行集中的管理,所述方法包括以下步骤步骤201:根节点元件首先建立自己的元件标识;
步骤202:在向根节点元件逐级添加它的第N级节点元件时,才艮节点元 件生成所述第N级节点元件的标识;之后,根节点元件将所述第N级节点 元件的标识发送给第N-l级节点元件,第N-l级节点元件建立和第N级节 点的连接,然后通过标识分发报文把所述第N级节点元件的标识分发给所 述第N级节点元件;
其中N为分布式应用系统所分的层数,N大于等于2,根节点元件为 第一级节点元件。
步骤203:第N级节点元件在接受到该标识分发报文之后,向根节点元 件发送响应纟艮文,确认接受该标识或者回应原来的标识。
参照图3所示,为本发明一实施例的路由方法流程图。所述方法包括以 下步骤
步骤301:建立及分发分布式系统中的各级节点元件的元件标识,在根 节点元件向某一节点元件发送分发元件标识的报文,所述某一节点元件发送 响应>^艮文的过程中,在所述响应"t艮文经过的各级节点元件上生成基于所述响 应才艮文经过的各级节点元件的元件标识,并与通讯通道4妻口相对应的^各由表 项;
步骤302:某一节点元件接收到传输报文,所述传输报文中携带目的节 点元件的元件标识;
步骤303:所述某一节点元件在自己的路由表项中查找所述目的节点元 件的元件标识,如包括所述目的节点元件的元件标识,则通过所述某一节点 元件的相应通讯通道接口对所述传输^Jl进行转发,直到目的节点元件收到 所述传输报文。
展开来说,在步骤301中,首先逐层建立分布式应用系统中的各级节点 元件及元件标识,并逐层用标识分发报文将所述元件标识分发给相应的第N 级节点元件,所述标识分发报文包括第N级节点元件的标识、第N-l级节 点元件的标识,及根节点元件的标识;
具体来说,根节点元件首先建立自己的元件标识;在向根节点元件逐级添加它的第N级节点元件时,根节点元件首先生成所述第N级节点元件的
标识;之后,根节点元件将所述第N级节点元件的标识发送给第N-l级节 点元件,第N-l级节点元件建立和第N级节点元件的连接,然后把所述第N 级节点元件的标识分发给所述第N级节点元件;
然后,在第N级节点元件向根节点元件发送响应报文的过程中,使用 根节点元件的标识查询路由选路,同时所有经过的节点元件向第N级节点 元件方向的通讯通道的接口添加基于第N级元件标识的指向第N级节点元 件的路由表项;并在第N级节点元件的通向第N-l级节点元件通讯通道的 接口上添加基于第N-1级节点元件的元件标识的指向第N-1级节点元件的路 由表项,以及基于根节点元件标识的指向根节点元件的路由表项。
同样的,其中N为分布式应用系统所分的层数,N大于等于2, ^f艮节点 元件为第一级节点元件。
所述在第N级节点元件向根节点元件发送响应报文的过程中,使用根 节点元件的标识查询路由选路,包括对于第N级节点元件,其只有一个 通讯通道,所述响应^^文通过该通讯通道发给第N-1级节点元件后,所述第 N-l级节点元件通过根节点元件的标识查询路由选路,直至根节点元件收到 所述响应纟艮文。
重复以上的标识分发的步骤,可以生成相邻2层元件间和根节点元件到 所有以下各层的节点元件的路由表项,以及所有根节点元件以下的各层节点 元件到根节点元件的路由表项。
这样,在具体应用中还有一个问题,即不相邻层的节点间的上行路由如 何生成的问题。例如图1所示的节点El和节点Cl即为不相邻的节点,El 到C1的路由如何生成呢?本实施例采用的方法为位于不相邻的层的节点 元件间的上行路由,通过上层的节点元件给下层的不相邻的节点元件发送业 务请求生成相应的^各由表项。
具体为当节点元件中的上层节点元件给不相邻的下层节点元件发送业 务请求报文时,所述业务请求报文中包括所述上层节点元件的元件标识,在 所述业务请求报文所经过的与所述上层节点元件不相邻的所有节点元件的 通讯通道的接口上添加基于所述上层节点元件的元件标识的指向所述上层节点元件的路由表项。
当然,实际应用中也会有一些特殊的情况,本发明也设置了相应的处理
方法
(1) 当任何一个元件只有一个通讯通道时,这时默i人所有的应用层净艮 文通过该通道发出,即默i人(缺省)路由。
(2) 另一个默认的路由规则是当一个元件接收到的传输报文为目标 元件标识为全零的广播类报文,则将所述广播类报文从该元件的除所述广播 类报文进入的通讯通道接口外的所有通讯通道的接口发出。
通过以上两个默认路由规则,在进行路由选3各时可以不用查询^各由表 项,增加了节点的处理速度。
在实际应用时,在具备上述两种条件时,首先使用默认路由规则,实现 本发明的路由选路的目的。否则,在不具有上述两种情况时,即不具备使用 默认路由规则的条件时,则通过本发明在步骤303中提出的查询路由表项的 方法进行路由选路,而在查询路由表项进行路由选路时,还有一种比4交特殊 的情形是
(3) 当一个元件接收到传输报文后,如果该元件没有一个通讯通道端 口具有所述传输报文中的目标元件的路由表项,则该元件将所述传输报文按 根节点元件的元件标识进行路由选路,直到一个层次的节点元件有目标元件 的路由表项为止。
比如由图1所示的一个叶节点元件El,在接收到一个传输4艮文后,该 传输报文的目标元件为叶节点元件E2,这样,元件E1先按根节点元件的标 识进行路由选路,将报文传输发送到节点元件Dl,同样节点元件Dl将报 文发送给节点元件Cl,由于节点元件C1已经具备到节点元件E2的路由, 然后再由节点元件Cl、 D2以节点元件E2的元件标识查询路由表项进行选 路,将数据转发到节点元件E2。
下面通过具体应用中的实例对本发明技术方案进行示例性说明。 在本实例中,仍然以图1所示的多层分布式应用系统的结构为例,具体
14是以其中的节点元件A、 B、 Cl的标识建立及分发过程为例,详细i兌明本发 明实现的标识分发方法及路由方法
本实例的树形多层分布式系统元件的标识方法和基于该标识的^各由方 法,包括了标识生成、分发阶段和路由生成、路由维护等步骤,其中
A) 多层分布式系统元件的标识生成,并请同时参照附图1;
a、 位于根节点的元件A首先根据自己的类别、该节点在该类别中的实 例序号等生成自己的元件标识,如0010001,表示该节点是第一个某管理 类节点元件。当然,在实际应用中也可以用其他的标识方法对各个元件进行 标识,只要所述标识具有唯一、和网络配置无关性的特征,均能实现本发明 的目的,本发明对此不加以限定。
b、 向^f艮节点元件A添加它的下一级节点元件B,此时,系统才艮才居B的 分类和B在该类中的实例序号生成节点B元件的标识,如0020001,表示该 节点是一个某服务类节点元件。在添加该节点元件时,提供该节点的TCP/IP 地址和通讯端口等参数。
B) 标识的分发
a、在元件B的标识生成之后,进入分发步骤,即元件A使用添加元件 B时的B的网络参数使用应用层协议建立和B的连接,并在应用层协议中 开始标识的分发会话
首先,元件A发出如下内容报文
类型 标识分发
来源 元件A的标识0010001
命令 分发标识
命令参数元件B的标识0020001
父节点元件标识 0010001
元件B TCP/IP参数地址、端口b、元件B在接受到该标识分发报文之后,可以有2种回应方式 第l种,向元件A发送确认接受该标识的报文,报文内容为 {
类型 标识分发确认
来源 元件B的标识0020001
命令响应 确认接受
目的 元件A的标识0010001
若发送上述报文,则表示元件B接受元件A分发给的元件标识;但如 果元件B已经存在以前分发的持久存储的标识,元件B则发送报文,回应 原来的标识,比如报文内容可以为
类型 标识分发拒绝
来源 元件B的标识0020001
命令响应 拒绝接受
参数 元件B的原标识0020004
目的元件A的标识0010001
}
C)路由的生成
a、根节点元件A的缺省路由生成。当位于根节点的元件使用添加的第 一个下一层节点元件B的TCP/IP参数建立第一个应用层的通讯通道接口 CH0时,和该通讯通道CHO并没有相关的应用层^各由表项,这时由元件A 发出的应用层的通讯^艮文默认通过该通道接口 CH0发出。
b、根节点元件A的应用层路由表项生成在步骤B)b中,当元件A 接收到元件B的标识接受确认回复后,就可以在通讯通道CHO下添加第一条基于元件标识的路由表项,如下 元件A
通讯通道CH0 元件B的标识0020001
该路由表项表示到达元件B的通讯^R文应该通过通道CH0发出。
c、元件B的应用层路由表项的生成在步骤B)b中,当元件B向元件 A回应元件B的标识确i人或者回应原有标识的纟良文时,在元件B的通向元 件A的通讯通道接口 CHO上添加一项通向元件A的路由表项,如下
元件B
通讯通道CH0 元件A的标识0010001
该路由表项表示由元件B到达元件A的通讯报文应该通过通道CH0发出。
d、其它具有一个以上的应用层通讯接口的路由表项的生成
以在附图1中节点元件B指向Cl元件的路由表项的生成过程为例,首 先,在系统中对元件B添加下一层节点元件Cl,由元件A为C1建立及分 发标识,在元件A构造和步骤B)a相似的报文
类型 标识分发
来源 元件A的标识0010001
命令 分发标识
命令参数元件ci的标识0030001 父节点元件B标识 0020001 元件Cl TCP/IP参数地址、端口
其中我们将元件B称为父节点元件,即指元件C的上一层节点元件。
对于标识分发这类应用层的报文,因为目的元件尚未具备标识,因此不 能使用元件Cl的标识进行路由选路,而要使用Cl的上层节点元件B的标识进行路由,节点元件B在接收到对Cl的标识分发报文后,使用Cl的 TCP/IP地址、端口等参数建立和C1的应用层通讯通道,然后把标识分发4艮 文转发给元件Cl,后续的步骤参照B)b,即元件C1向元件A发送响应报 文,给元件A回应接受所分发的标识的过程中,使用元件A的标识查询路 由选路,同时所有经过的元件的向连接C1方向的通讯通道的接口添加指向 Cl的路由表项。如元件B的和C1连接的通讯接口 CH1添加如下路由表项
元件B
通讯通道CH1元件Cl的标识0030001
元件A的和B连4妄的通讯冲矣口 CHO添加如下的路由表项 元件A
通讯通道CHO 元件Cl的标识0030001
元件Cl的和元件B连接的通讯接口 CHI添加如下^各由表项 元件Cl
通讯通道CHI 元件A的标识0010001 通讯通道CHI元件B的标识0020001
即元件C1向连接元件B方向的通讯通道的接口添加指向根节点元件A 及上一层元件B的路由表项。
类似的,重复以上的标识分发的步骤,可以生成相邻2层元件间和才艮部 元件到所有以下各层的节点元件的路由表项,以及所有根节点元件以下的各 层节点元件到根节点元件A的路由表项。
比如对于图1中的节点元件Cl及节点元件El来说,经过标识分发的 步骤,节点元件Cl具备到节点元件El的路由表项,但可以发现的是节点 元件E1不具备到节点元件C1的路由表项。这样,对于位于不相邻层的节 点之间的上行路由表项的生成,例如节点元件El到节点元件Cl的路由, 通过上层的节点元件Cl给下层的不相邻的节点元件El发送业务请求报文
18生成相应的路由表项。
例如,节点元件C1给节点元件E1发送一业务请求报文,报文格式如
下
类型 命令
来源 元件Cl的标识0030001 目的 元件El的标识0050001 命令 业务请求 命令参数 (略)
由于在标识分发过程中,节点元件C1, Dl已经具备到节点元件E1的 路由,所以节点元件C1发送到节点元件E1的报文可以在节点元件Cl, Dl 进行路由的选路。
当该报文被节点元件Dl发送给节点元件El,节点元件El接收到上述 报文时,若节点元件E1和节点元件D1连接的通讯通道为CH2,则在节点 元件El的通讯通道CH2的接口上生成节点元件El到节点元件Cl的^各由 表项i口下
元件El
通讯通道CH2 元件Cl的标识0030001
这样通过节点元件Cl给节点元件El的业务请求报文的下行的传输, 生成了节点元件E1到节点元件C1的路由表项。
类似的,对于图1中的节点元件B及节点元件El,当节点元件B向节 点元件El发送业务请求报文,则在业务请求报文所经过的与节点元件B不 相邻的两个节点元件节点元件Dl和节点元件El上分别生成指向节点元 件B的路由表项。
D)路由的维护在删除节点时,例如当根节点元件A给节点元件Dl发出删除下级节 点元件E1的报文时,所有命令报文经由的元件的相应的通讯通道接口删除
通向El的^各由表项。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限 制,本领域的普通技术人员对本发明的技术方案进行的修改或者等同替换, 均涵盖在本发明的权利要求范围当中。
权利要求
1、一种分布式系统中元件标识的分发方法,所述分布式系统包括多个节点元件,系统通过根节点元件对整个系统中的各个元件进行集中的管理,其特征在于,所述方法包括(1)根节点元件首先建立自己的元件标识;(2)在向根节点元件逐级添加它的第N级节点元件时,根节点元件生成所述第N级节点元件的标识;之后,根节点元件将所述第N级节点元件的标识发送给第N-1级节点元件,第N-1级节点元件建立和第N级节点元件的连接,然后把所述第N级节点元件的标识分发给所述第N级节点元件;其中N为分布式应用系统所分的层数,N大于等于2,根节点元件为第一级节点元件。
2、 如权利要求l所述的方法,其特征在于,步骤(2)中在添加该第 N级节点元件时,提供该第N级节点元件的网络参数,第N-1级节点元件 根据所述第N级节点元件的网络参数,使用应用层协议建立和第N级节点 元件的连接,所述网络参数为传输控制协议地址及通讯端口,或者所述网 络参数为网际协议地址及通讯端口 。
3、 如权利要求2所述的方法,其特征在于,通过在应用层协议中开始 标识的分发会话,在标识分发报文中将标识发送给所述第N级节点元件; 第N级节点元件在接受到该标识分发报文之后,向根节点元件发送响应报 文,确认接受该标识或者回应原来的标识。
4 、 一种分布式系统的应用层路由方法,所述分布式系统包括多个节点 元件,系统通过根节点元件对整个系统中的各个元件进行集中的管理,其 特征在于,所述方法包括(1)建立及分发分布式系统中的各级节点元件的元件标识,在根节点 元件向某一节点元件发送标识分发报文,所述某一节点元件发送响应报文的 过程中,在所述响应报文经过的各级节点元件上生成基于所述响应报文经过 的各级节点元件的元件标识,并与通讯通道4妄口相对应的^各由表项;(2) 分布式系统中的任意一个节点元件接收到传输报文,所述传输报文中携带目的节点元件的元件标识;(3) 所述任意一个节点元件在自己的路由表项中查找所述目的节点元件的元件标识,如包括所述目的节点元件的元件标识,则通过所述任意一个 节点元件的相应通讯通道接口对所述传输报文进行转发,直到目的节点元件 收到所述传输报文。
5、 如权利要求4所述的方法,其特征在于,步骤(l)进一步包括(la)逐层建立分布式应用系统中的各级节点元件及元件标识,并逐层 用标识分发^t艮文将所述元件标识分发给相应的第N级节点元件,所述标识 分发报文包括第N级节点元件的标识、第N-l级节点元件的标识,及根节 点元件的标识;(lb)第N级节点元件向根节点元件发送响应报文,在第N级节点元 件向根节点元件发送响应才艮文的过程中,使用根节点元件的标识查询路由选 路,同时所有经过的节点元件向第N级节点元件方向的通讯通道的接口添 加基于第N级节点元件标识的指向第N级节点元件的路由表项;并在第N 级节点元件的通向第N-l级节点元件通讯通道的接口上添加基于第N-l级节 点元件的元件标识的指向第N-l级节点元件的路由表项,以及基于根节点元 件标识的指向根节点元件的路由表项。其中N为分布式应用系统所分的层数,N大于等于2,根节点元件为第 一级节点元件。
6、 如权利要求5所述的方法,其特征在于,步骤(la)进一步包括 (lal )根节点元件首先建立自己的元件标识;(la2)在向根节点元件逐级添加它的第N级节点元件时,根节点元件 首先生成所述第N级节点元件的标识;之后,根节点元件将所述第N级节 点元件的标识发送给第N-l级节点元件,第N-l级节点元件建立和第N级 节点元件的连接,然后把所述第N级节点元件的标识分发给所述第N级节 点元件。
7、 如权利要求5所述的方法,其特征在于,步骤(lb)进一步包括 当节点元件中的上层节点元件给不相邻的下层节点元件发送业务请求报文 时,所述业务请求报文中包括所述上层节点元件的元件标识,在所述业务 请求报文所经过的与所述上层节点元件不相邻的所有节点元件的通讯通道 的接口上添加基于所述上层节点元件的元件标识的指向所述上层节点元件 的路由表项。
8、 如权利要求4至7任意一项所述的方法,其特征在于,步骤(2) 与步骤(3)之间还包括以下步骤(2a)当任何一个节点元件只有一个通讯通道时,这时默认所有的传输 才艮文通过该通道发出;和/或当一个节点元件接收到的传输报文为目的元件标识为全零的广播类报 文,则将所述广播类报文从该节点元件的除所述广播类报文进入的通讯通道 接口外的所有通讯通道的接口发出,所述方法的流程结束;否则执行步骤(3)。
9、 如权利要求4至7任意一项所述的方法,其特征在于,步骤(3) 中还包括如果所述某一节点元件在自己的路由表项中没有查找到所述目的节点 元件的元件标识,则该某一节点元件将所述传输报文按根节点元件的元件标 识进行路由选路,直到一个层次的节点元件的路由表项中有目的节点元件的 元件标识。
10、 如权利要求4至7任意一项所述的方法,其特征在于,所述方法 还包括以下步骤当根节点元件发出删除某一节点元件的命令时,所有删 除命令报文经由的节点元件的相应的通讯通道接口删除通向所述被删除节 点元件的路由表项。
全文摘要
本发明公开了一种元件标识分发方法及基于该元件标识的应用层路由方法,应用于集中管理的多层分布式系统中,在该方法中,逐层建立分布式系统的各级节点元件及元件标识,并在元件标识的生成、分发过程中,生成基于所述元件标识的路由表项,在通讯过程中通过元件标识寻址,实现了集中管理的分布式系统通讯所需要的基于元件标识的应用层路由,本发明并给出了该路由方法的几种默认路由规则。本发明所生成的基于元件标识的应用层路由方法与TCP/IP(传输控制协议/网间协议)的路由方法无关,具有简单,实用,稳定可靠,节约资源的特点,能够满足分布式入侵检测系统、分布式网络审计系统等各种集中管理的多层分布式系统的特殊需求。
文档编号H04L12/56GK101577707SQ20081010623
公开日2009年11月11日 申请日期2008年5月9日 优先权日2008年5月9日
发明者赵海峰 申请人:北京启明星辰信息技术股份有限公司