堆叠设备中报文重定向的方法

文档序号:7619421阅读:150来源:国知局
专利名称:堆叠设备中报文重定向的方法
技术领域
本发明涉及网络领域,尤其涉及一种堆叠设备中报文重定向的方法。
背景技术
在网络中,交换机的堆叠技术是一项非常重要的技术,具有堆叠功能的交换机可以单独使用,也可以堆叠使用。将若干台具有堆叠功能的交换机堆叠成一堆叠设备,每一交换机即为堆叠设备中的一单元。对外界网络来说,堆叠设备就好像是一台设备,无论在管理还是使用上均成为一个整体。它既可以随时通过增加单元来扩展堆叠设备的端口数量和交换能力,大大提高了整个堆叠设备的可扩展性;并且堆叠之后的交换机作为一台设备来管理,没有增加用户的管理负担,从而达到了保护投资、方便管理的目的。
交换机堆叠之后,会面临许多新的问题,其中之一就是因特网(IP)协议报文如何送达至目的地的问题。因特网(IP)协议是因特网中使用的最广泛的报文。每个因特网协议报文中都包含这个报文的源地址和目的地址,源地址是发出这个报文的节点的地址,目的地址是最后一个收到这个报文的节点的地址。当一个节点收到一份因特网协议报文后,会将报文的目的地址同本节点的地址比较,如果相同,则表明此报文是发送给本节点的,报文就会被送到本节点的服务程序中去处理,执行服务程序的是这台交换机的中央处理器(CPU)。在单机的情况下,报文会直接送到中央处理器中去处理。但在交换机堆叠起来之后,情况发生了变化在一个节点中有多台交换机(也就是说,这些交换机具有同样的因特网地址),因此一个堆叠设备中有多个中央处理器,每一中央处理器都可以处理报文,发送至堆叠设备的报文送至哪台交换机的中央处理器进行处理呢?
请参阅图1,其为包括堆叠设备的一网络示例图。该网络包括节点1和节点2,节点2为一堆叠设备。该堆叠设备包含四个单元单元1、单元2、单元3和单元4。每一单元通常是交换机。单元1和单元3分别连接节点1。假设来自于节点1的报文需要发送至单元1处理后转换。现有技术中,从节点1发出的报文有可能到达节点2中的单元2,也可能到达单元3,由于单元2和单元3分别由两台设备的中央处理器控制,因此现有技术中容易出现不能将报文重定向到单元1的现象,进而导致不能正确处理报文的事件发生,由此造成不能实现堆叠设备对外表现为一个节点的功能。
也就是说,现有技术中由于堆叠设备中每个单元是由本单元的中央处理器控制其工作,并且堆叠设备中的每个中央处理器缺少统一的控制,因此出现不能将报文重定向至同一单元,由此造成该堆叠设备不可用。

发明内容
本发明的目的在于提供一种堆叠设备中报文重定向的方法,以解决现有堆叠设备中的每个中央处理器缺少统一的控制,因此出现不能将报文重定向至同一单元,进而造成该堆叠设备不可用的技术问题。
为解决上述问题,本发明公开了第一种堆叠设备中报文重定向的方法,所述堆叠设备包含若干单元,包括(1)堆叠设备的每一单元在启动一服务进程时,查找本单元的访问控制列表,若在所述访问控制列表中未找到对应进程,则进行步骤(2);(2)启动进程的单元将本单元的唯一单元标识和进程的端口号发送至堆叠设备的其他单元;(3)堆叠设备的其他单元在本单元的访问控制列表中增设进程设定报文发送至对应的单元中,所述对应为本报文所携带的端口号与所述单元启动的一进程的端口号相同;(4)堆叠设备的每个单元接收外部报文,根据本单元的访问控制列表将所述报文发送至对应的单元中。
步骤(4)之后还包括当进程要关闭时,启动所述进程的单元通知堆叠设备的其他单元,所述其他单元在本单元的访问控制列表中删除所述进程设定。
步骤(3)中每一其他单元是通过本单元的中央处理器将所述进程的设定下发至本单元的每一集成电路芯片中,进而修改本集成电路芯片中的访问控制列表。
步骤(3)还包括在访问控制列表中设置需要重定向报文满足的条件;步骤(4)还包括每个单元将接收到的报文与进程设定中设置的需要重定向报文的条件进行匹配,若匹配成功,则将所述报文发送至对应的启动进程的单元中。
本发明公开了第二种堆叠设备中报文重定向的方法,包括(1)在堆叠设备中选举其中一单元为主单元,其他单元为从单元;(2)堆叠设备的每一单元在启动一服务进程时,查找本单元的访问控制列表,若在所述访问控制列表中未找到对应进程,则进行步骤(3);(3)堆叠设备的主单元在本单元的访问控制列表增设所述进程的设置报文发送至对应的单元中,所述对应为本报文所携带的端口号与所述单元启动的一进程的端口号相同;(4)堆叠设备的单元接收外部报文,利用主单元的访问控制列表将报文发送至对应进程启动的单元。
步骤(3)是通过以下步骤实现的(31)若启动服务进程的单元为主单元,则将所述进程的设置保存在本单元的访问控制列表,否则进行步骤(32);(32)启动服务进程的从单元将本单元的唯一单元标识和进程的端口号发送至堆叠设备的主单元,主单元将所述进程设定保存在本单元的访问控制列表中,所述的进程设定为将报文发送至对应的单元中,所述对应为本报文所携带的端口号与所述单元启动的一进程的端口号相同。
步骤(4)是通过以下步骤实现的(41)若接收外部报文的单元是主单元,根据主单元的访问控制列表将报文发送至对应单元,否则进行步骤(42);(42)接收外部报文的从单元将不是本单元处理的报文发送至主单元;(43)主单元根据主单元的访问控制列表将报文发送至对应单元。
步骤(4)之后还包括当进程要关闭时,启动所述进程的单元通知堆叠设备的主单元,所述主单元在本单元的访问控制列表中删除所述进程设定。步骤(3)中主单元是通过本单元的中央处理器将所述进程的设定发送至本单元的每一集成电路芯片中,进而修改本集成电路芯片的访问控制列表。
本发明公开的第三种堆叠设备中报文重定向的方法,包括以下步骤(1)堆叠设备中某一单元在准备运行某一进程之前,将这一信息通知其他单元;(2)其他单元收到上述信息后设定自身的访问控制列表,以使得自身在收到对应上述进程的报文后自动将这些报文向上述运行该进程的某一单元转发;(3)上述某一单元在其他单元访问控制列表设定完成以后启动上述进程。其中所述某一单元在准备结束进程之前通知其他单元取消相应的访问控制列表,然后结束上述进程。
本发明公开的第四种堆叠设备中报文重定向的方法,包括(1)每个从单元设置本单元的访问控制列表将所有报文重定向于主单元;(2)当从单元接收外部报文时,根据访问控制列表将所有报文发送至主单元。
与现有技术相比,本发明具有以下优点堆叠设备的各个单元在启动一服务进程时,预先通知其他单元,其他单元据此修改本单元的访问控制列表,每一单元接收到新的报文时根据访问控制列表进行处理,包括将符合重定向条件的报文发送至对应单元处理,由此实现了一个堆叠设备表现为一个节点的效果。


图1为包括堆叠设备的一网络示例图;图2为本发明堆叠设备中报文重定向的第一种方法的流程图;图3为本发明堆叠设备中报文重定向的第二种方法的流程图;图4为本发明堆叠设备中报文重定向的第三种方法的流程图;
图5是本发明堆叠设备中报文重定向的第四种方法的流程图。
具体实施例方式
以下结合附图,具体说明本发明。
在交换机上运行的进程有很多,为了同进程通信,就要对每一个进程进行标识,因特网使用的传输控制协议(TCP)和用户数据报协议(UDP)可以对进程进行标识。这两个协议为每一个进程分配了一个标号。这样,通信的目的地址就不仅仅是目的地址了,还包括描述进程的标识号,这个标识号叫做协议端口号,简称端口号。端口号可以标识所启动的进程,有些进程的端口号是通用的,比如文件传输协议(FTP)的端口号是23。
端口号包含在报文头中写入因特网协议报文中。如果一个节点发现接收到的因特网协议报文的目的地址是本节点,就可以进一步判断端口号,根据端口号将报文送给本机的相应进程上处理。
现有的一台交换机通常包括中央处理器,连接中央处理器的集成电路芯片和转发端口。集成电路芯片在交换机内部组成交换网络,对报文进行转发。一般来说,它们还具有过滤报文的功能。根据需要,可以用事先设定的规则对因特网协议报文进行转发。事实上,现有的大量的转发主要是通过转发表(FIB)完成,访问控制列表主要用于过滤。现有的访问控制列表主要用于路由器上过滤不安全报文,以提高整个网络的安全性。本申请人经过长时间的研究,利用访问控制列表实现堆叠设备中的报文重定向。以下具体介绍本申请人如何利用访问控制列表来进行堆叠设备中的报文重定向工作。
请参阅图2,其为本发明堆叠设备中报文重定向的第一种方法的流程图。堆叠设备中的各个单元(所述单元通常是指交换机),各个单元通过指定的物理端口进行连接。通过这个连接,各个单元上的进程可以相互通信。同时,每一台单元在该堆叠设备中有唯一单元标识,这个唯一单元标识在做为堆叠设备中单元与单元之间进行通信的标识。这个唯一单元标识可以称之为设备编号。该方法具体包括以下步骤S110堆叠设备的每一单元在启动一服务进程时,查找本单元的访问控制列表,若在所述访问控制列表中未找到对应进程,则进行步骤S120。
单元可以在接收到用户输入的命令后启动一服务进程,也可以事件触发启动某一服务进程。当单元的CPU启动一服务进程后,就查找本单元的访问控制列表,根据唯一进程标识(唯一进程标识是前述的端口号)在访问控制列表中查找是否有对应进程,若有,说明该进程已启动,若没有,说明该进行需要启动,并在本单元的访问控制列表中增设关于此进程的报文处理设定对所携带的端口号与该进程的端口号相同的报文,设定其处理流程。比如将该报文转发至某一节点。
访问控制列表可以预先设定,比如,在访问控制列表中预先设置报文处理条件,当接收到的报文满足报文处理条件,才会进行后续的处理,否则不进行处理或丢弃。预先设定的报文处理条件可以为本单元能够处理的报文的源地址、源端口号以及目的地址、目的端口号信息,单元每接收到一报文,就依照访问控制列表和本单元能够处理的报文的源地址、源端口号以及目的地址、目的端口号信息一一匹配,匹配成功的报文,为本单元能够处理的报文。
访问控制列表可以设定的单元的中央处理器中,但是,随着交换机的发展,交换机具有的端口数的增多以及交换数据量的增大,交换机的转发通常由硬件(如集成电路芯片)来完成,因此本发明的访问控制列表通常设定在本单元的集成电路芯片。每一集成电路芯片负责交换机中若干端口的数据转发,每一台交换机包含多块集成电路芯片,该些芯片分别和中央处理器连接,接受中央处理器的控制。
S120启动进程的单元将本单元的唯一单元标识和进程的端口号发送至堆叠设备的其他单元。
S130堆叠设备的其他单元在本单元的访问控制列表中增设进程设定报文发送至对应的单元中。所述对应为本报文所携带的端口号与所述单元启动的一进程的端口号相同。
当访问控制列表保存在集成电路芯片时,每一其他单元通过本单元的中央处理器将所述进程设定规则发送至本单元的各个集成电路芯片中,进而修改每一集成电路芯片内的访问控制列表。集成电路芯片就能根据进程设定对接收到的报文进行对应处理。每一单元可以根据接收到的报文的端口号与进程的端口号是否对应,来决定是否需要将报文发送至启动所述进程的单元。每一单元还可以先在访问控制列表中设置需要重定向报文满足的条件,然后将接收到报文根据其条件判断是否需要将报文发送至启动所述进程的单元。
S140堆叠设备的每个单元接收外部报文,根据本单元的访问控制列表将所述报文发送至对应的启动进程的单元中。每个单元将接收到的报文与进程设定中设置的需要重定向报文的条件进行匹配,若匹配成功,则将所述报文发送至对应的启动进程的单元中。访问控制列表除了设定进程设定外,还可以设定对报文进行其他处理。事实上,每个单元对接收到的外部报文都是根据本单元的访问控制列表进行处理。
另外,当进程要关闭时,启动所述进程的单元通知堆叠设备的其他单元,所述其他单元在本单元的访问控制列表中删除所述进程设定。
还是请参阅图1,当单元1启动FTP进程时,将端口号23通知于堆叠设备中的其他单元,单元2和单元3据此修改本单元的访问控制列表,增设进程设定接收到的端口号为23的报文发送至单元1。当本单元的集成电路芯片接收到报文,根据访问控制列表进行处理,如接收到端口号为23的报文就发送至单元1,由此实现堆叠设备中的报文重定向。
通过上述的方案,可以解决堆叠设备上的进程同外界进行通信的难题。并且,本发明能够使得不同的进程在不同的单元上执行。而且,还可以将一个节点所要启动的进程分布在各个单元设备上运行,非常方便,最重要的是,避免了由于堆叠设备中单点故障而造成整个网络不稳定的情况发生。
本发明还公开了第二种堆叠设备中报文重定向的方法。请参阅图3,其为本发明第二种堆叠设备中报文重定向的流程图。它包括S210在堆叠设备中选举其中一单元为主单元,其他单元为从单元。每一单元可以根据相同的选择原则进行选举,比如选举堆叠设备中设备编号最大的单元为主单元。
S220堆叠设备的每一单元在启动一服务进程时,查找本单元的访问控制列表,若在所述访问控制列表中未找到对应进程,则进行步骤S230;单元可以在接收到用户输入的命令后启动一服务进程,也可以事件触发启动某一服务进程。当单元的CPU启动一服务进程后,就查找本单元的访问控制列表,根据唯一进程标识(唯一进程标识是前述的端口号)在访问控制列表中查找是否有对应进程,若有,说明该进程已启动,若没有,说明该进行需要启动,并在本单元的访问控制列表中增设关于此进程的报文处理设定对所携带的端口号与该进程的端口号相同的报文,设定其处理流程。
S230堆叠设备的主单元在本单元的访问控制列表增设所述进程的设定报文发送至对应的单元中,所述对应为本报文所携带的端口号与所述单元启动的一进程的端口号相同。主单元是通过本单元的中央处理器将所述进程设定规则发送至本单元的集成电路芯片,进而控制每一集成电路芯片修改本芯片的访问控制列表增设进程设定。
步骤S230是通过以下步骤实现的a1若启动服务进程的单元为主单元,则将所述进程的设置保存在本单元的访问控制列表,否则进行步骤a2;
a2启动服务进程的从单元将本单元的唯一单元标识和进程的唯一进程标识发送至堆叠设备的主单元,主单元将所述进程的设置保存在本单元的访问控制列表中。
S240堆叠设备的单元接收外部报文,利用主单元的访问控制列表将报文发送至对应进程启动的单元。
步骤S240是通过以下步骤实现的b1若接收外部报文的单元是主单元,根据主单元的访问控制列表将报文发送至对应进程启动的单元,否则进行步骤b2;b2接收外部报文的从单元将不是本单元处理的报文发送至主单元;b3主单元根据主单元的访问控制列表将报文发送至对应进程启动的单元。
当进程要关闭时,启动所述进程的单元通知堆叠设备的主单元,所述主单元在本单元的访问控制列表中删除所述进程相关的设定。
还是以图1为例,说明上述公开的报文重定向是如何实现的。当单元1启动FTP进程时,将端口号23通知于堆叠设备中的主单元(假设按照选举原则选举出来的主单元为单元4),单元4的CPU将所述规则下发至各个芯片,进而修改各个芯片的访问控制列表,将所述规则添加至各个访问控制列表。以上方案也同样解决了堆叠设备上进程同外界进程通信的难题。
本发明还公开了第三种堆叠设备中报文重定向的方法,请参阅图4,它包括S310在从单元上下发访问控制列表,所述访问控制列表为将所有报文重定向于主单元;S320当从单元接收外部报文时,根据访问控制列表将所有报文发送至主单元。
通常情况下,堆叠设备会根据预设的选举原则选举出主设备。由主设备处理所有的进程。这种方法的好处是可以对所有进程进行统一管理。
本发明公开了第四种种堆叠设备中报文重定向的方法,包括以下步骤S410堆叠设备中某一单元在准备运行某一进程之前,将这一信息通知其他单元。这一信息包括进程的端口号,所述单元的设备标识。
S420其他单元收到上述信息后设定自身的访问控制列表,以使得自身在收到对应上述进程的报文后自动将这些报文向上述运行该进程的某一单元转发。所述设定是指每一其他单元将该信息下发至本单元的转发芯片,进而修改芯片内的访问控制列表。
S430上述某一单元在其他单元访问控制列表设定完成以后启动上述进程。并且,所述某一单元在准备结束进程之前通知其他单元取消相应的访问控制列表,然后结束上述进程。
堆叠设备的各个单元在启动一服务进程时,预先通知其他单元,其他单元据此修改本单元的访问控制列表,每一单元接收到新的报文时根据访问控制列表进行处理,包括将符合重定向条件的报文发送至对应单元处理,由此实现了一个堆叠设备表现为一个节点的效果。
以上公开的仅为本发明的几个具体实施例,但本发明并非局限于此,任何本领域的技术人员能思之的变化都应落在本发明的保护范围内。
权利要求
1.一种堆叠设备中报文重定向的方法,所述堆叠设备包含若干单元,其特征在于,包括(1)堆叠设备的每一单元在启动一服务进程时,查找本单元的访问控制列表,若在所述访问控制列表中未找到对应进程,则进行步骤(2);(2)启动进程的单元将本单元的唯一单元标识和进程的端口号发送至堆叠设备的其他单元;(3)堆叠设备的其他单元在本单元的访问控制列表中增设进程设定报文发送至对应的单元中,所述对应为本报文所携带的端口号与所述单元启动的一进程的端口号相同;(4)堆叠设备的每个单元接收外部报文,根据本单元的访问控制列表将所述报文发送至对应的单元中。
2.如权利要求1所述的堆叠设备中报文重定向的方法,其特征在于,步骤(4)之后还包括当进程要关闭时,启动所述进程的单元通知堆叠设备的其他单元,所述其他单元在本单元的访问控制列表中删除所述进程设定。
3.如权利要求1或2所述的堆叠设备中报文重定向的方法,其特征在于,步骤(3)中每一其他单元是通过本单元的中央处理器将所述进程设定规则下发至本单元的每一集成电路芯片中,进而修改本集成电路芯片中的访问控制列表。
4.如权利要求1所述的堆叠设备中报文重定向的方法,其特征在于,步骤(3)还包括在访问控制列表中设置需要重定向报文满足的条件;步骤(4)还包括每个单元将接收到的报文与进程设定中设置的需要重定向报文的条件进行匹配,若匹配成功,则将所述报文发送至对应的启动进程的单元中。
5.一种堆叠设备中报文重定向的方法,其特征在于,包括(1)在堆叠设备中选举其中一单元为主单元,其他单元为从单元;(2)堆叠设备的每一单元在启动一服务进程时,查找本单元的访问控制列表,若在所述访问控制列表中未找到对应进程,则进行步骤(3);(3)堆叠设备的主单元在本单元的访问控制列表增设所述进程的设置报文发送至对应的单元中,所述对应为本报文所携带的端口号与所述单元启动的一进程的端口号相同;(4)堆叠设备的单元接收外部报文,利用主单元的访问控制列表将报文发送至对应进程启动的单元。
6.如权利要求5所述的堆叠设备中报文重定向的方法,其特征在于,步骤(3)是通过以下步骤实现的(31)若启动服务进程的单元为主单元,则将所述进程的设置保存在本单元的访问控制列表,否则进行步骤(32);(32)启动服务进程的从单元将本单元的唯一单元标识和进程的端口号发送至堆叠设备的主单元,主单元将所述进程设定保存在本单元的访问控制列表中,所述的进程设定为将报文发送至对应的单元中,所述对应为本报文所携带的端口号与所述单元启动的一进程的端口号相同。
7.如权利要求6所述的堆叠设备中报文重定向的方法,其特征在于,步骤(4)是通过以下步骤实现的(41)若接收外部报文的单元是主单元,根据主单元的访问控制列表将报文发送至对应单元,否则进行步骤(42);(42)接收外部报文的从单元将不是本单元处理的报文发送至主单元;(43)主单元根据主单元的访问控制列表将报文发送至对应单元。
8.如权利要求5所述的堆叠设备中报文重定向的方法,其特征在于,步骤(4)之后还包括当进程要关闭时,启动所述进程的单元通知堆叠设备的主单元,所述主单元在本单元的访问控制列表中删除所述进程设定。
9.如权利要求5或6所述的堆叠设备中报文重定向的方法,其特征在于,步骤(3)中主单元是通过本单元的中央处理器将所述进程设定规则发送至本单元的每一集成电路芯片中,进而修改本集成电路芯片的访问控制列表。
10.一种堆叠设备中报文重定向的方法,其特征在于,包括以下步骤(1)堆叠设备中某一单元在准备运行某一进程之前,将这一信息通知其他单元;(2)其他单元收到上述信息后设定自身的访问控制列表,以使得自身在收到对应上述进程的报文后自动将这些报文向上述运行该进程的某一单元转发;(3)上述某一单元在其他单元访问控制列表设定完成以后启动上述进程。
11.如权利要求10所述的堆叠设备中报文重定向的方法,其特征在于,其中所述某一单元在准备结束进程之前通知其他单元取消相应的访问控制列表,然后结束上述进程。
12.一种堆叠设备中报文重定向的方法,其特征在于,包括(1)每个从单元设置本单元的访问控制列表将所有报文重定向于主单元;(2)当从单元接收外部报文时,根据访问控制列表将所有报文发送至主单元。
全文摘要
本发明公开了一种堆叠设备中报文重定向的方法,它包括堆叠设备的各个单元在启动一服务进程时,预先通知其他单元,其他单元据此修改本单元的访问控制列表,每一单元接收到新的报文时根据访问控制列表进行处理,包括将符合重定向条件的报文发送至对应单元处理,由此实现了一个堆叠设备表现为一个节点的效果。
文档编号H04L12/56GK1725734SQ200510077130
公开日2006年1月25日 申请日期2005年6月14日 优先权日2005年6月14日
发明者郭宁, 韩琦 申请人:杭州华为三康技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1