一种报文处理方法、线卡及交换设备的制作方法

文档序号:7776358阅读:259来源:国知局
一种报文处理方法、线卡及交换设备的制作方法
【专利摘要】本发明实施例提供了一种报文处理方法、线卡和交换设备,该方法应用于包括至少两个交换设备的堆叠系统中,系统中主设备上具有堆叠口的线卡执行:接收堆叠系统中从设备上具有堆叠口的线卡发送的报文;根据接收到的报文中携带的虚拟目的地址,和本地存储的虚拟目的地址与主设备的线卡的对应关系,确定报文中携带的虚拟目的地址对应的线卡,将报文发送至确定出的线卡,并指示确定出的线卡对报文进行处理,根据处理结果确定是否发送至主设备的主处理单元进行处理。本发明可将原本送往堆叠系统中主设备上具有堆叠口的线卡的CPU进行处理的部分报文,分流到主设备上其他线卡的CPU进行处理,从而减轻了堆叠线卡的CPU负载,提高了报文处理效率。
【专利说明】一种报文处理方法、线卡及交换设备
【技术领域】
[0001]本发明涉及通信【技术领域】,尤其涉及一种报文处理方法、线卡及交换设备。
【背景技术】
[0002]堆叠系统(Stacking System)是指一台以上的交换设备通过各自的堆叠端口(即堆叠口)连接起来,形成一台“逻辑设备”,即作为一个逻辑交换实体运行,这样用户通过对这台“逻辑设备”进行管理,即可实现对“逻辑设备”中所有的交换设备进行管理。
[0003]如图1所示,为包括有交换设备U、交换设备12和交换设备13的堆叠系统,在该堆叠系统中,交换设备11可为主设备,其他交换设备可为从设备,该堆叠系统中的交换设备均可包括主管理板1、管理板2、线卡1、线卡2、线卡3、线卡4、线卡5和线卡6,那么,为了方便管理该堆叠系统,通常将系统中每台交换设备的堆叠口配置在同一个线卡上,例如,将每个交换设备的堆叠口配置在各自的线卡3上。
[0004]进一步地,对于图1所示的堆叠系统中各交换设备上的协议报文,目前通常采用下述流程进行处理:
[0005]对于交换设备11上任一线卡例如线卡I的协议报文,通常是由线卡I将其通过本地管理链路发送给交换设备11的主管理板I的CPU进行处理。
[0006]对于从设备例如交换设备12上线卡3的协议报文,通常是由本地线卡3先将其通过堆叠链路发送至交换设备11的线卡3的交换芯片上,然后经该交换芯片送往交换设备11的线卡3的CPU,再由交换设备11的线卡3的CPU通过本地管理链路发送给交换设备11的主管理板I的CPU进行处理。
[0007]对于交换设备12上除线卡3之外的其他线卡例如线卡I的协议报文,通常是由线卡I的交换芯片先将其通过本地数据链路,发送至本地线卡3的交换芯片上,后续流程与前述交换设备12上线卡3的协议报文的处理流程相同,在此不再详述。
[0008]需要说明的是,上述堆叠系统中所有的交换设备上的协议报文,均需要发送至主设备的主管理板的CPU进行处理,而由于该主管理板的CPU的处理能力有限,并且为了避免堆叠系统中的攻击报文泛洪到主管理板导致系统崩溃,上述交换设备11的线卡3的CPU通常会对收到的报文进行处理,例如执行限速、过滤、防攻击丢弃等处理流程,然后根据处理结果再确定是否发送至主设备的主管理板进行处理,例如经交换设备的线卡3的CPU进行限速处理后,仍需发送至主设备的主管理板进行处理,在这种情况下,再将此报文通过本地管理链路发送过去;反之,将此报文丢弃。
[0009]但是,随着堆叠系统的不断扩展,交换设备的数量不断增多,例如从2台扩展到4台、8台、16台等,并且交换设备中的线卡数量也越来越多,例如一台交换设备中的线卡数量已超过10个,在这种情况下,必然会导致主设备上具有堆叠口的线卡的CPU处理的协议报文大量拥塞,造成CPU的负载过大,进而导致协议报文的处理效率较低。

【发明内容】
[0010]本发明实施例提供了一种报文处理方法、线卡和交换设备,用以解决现有堆叠系统中主设备上具有堆叠口的线卡处理报文时导致的CPU负载较大且处理效率较低的问题。
[0011]基于上述问题,本发明实施例提供的一种报文处理方法,该方法应用于包括至少两个交换设备的堆叠系统中,所述堆叠系统中主设备上具有堆叠口的线卡执行下述步骤:
[0012]接收所述堆叠系统中从设备上具有堆叠口的线卡发送的报文,所述报文中携带有虚拟目的地址;
[0013]根据接收到的报文中携带的虚拟目的地址,和本地存储的虚拟目的地址与所述主设备的线卡的对应关系,确定所述报文中携带的虚拟目的地址对应的线卡;
[0014]将所述报文发送至确定出的线卡,指示所述确定出的线卡对所述报文进行处理,并根据处理结果确定是否发送至所述主设备的主处理单元进行处理。
[0015]本发明实施例提供的一种线卡,所述线卡应用于包括至少两个交换设备的堆叠系统中,所述线卡具有堆叠口,且设置于所述堆叠系统中的主设备上,具体包括:
[0016]接收模块,用于接收所述堆叠系统中从设备上具有堆叠口的线卡发送的报文,所述报文中携带有虚拟目的地址;
[0017]确定模块,用于根据所述接收模块接收到的报文中携带的虚拟目的地址,和所述线卡存储的虚拟目的地址与所述主设备的线卡的对应关系,确定所述报文中携带的虚拟目的地址对应的线卡;
[0018]指示发送模块,用于将所述报文发送至所述确定模块确定出的线卡,指示所述确定出的线卡对所述报文进行处理,并根据处理结果确定是否发送至所述主设备的主处理单元进行处理。
[0019]本发明实施例提供的一种交换设备,应用于堆叠系统中,且为主设备,包括具有堆叠口的线卡和至少一个不具有堆叠口的线卡,其中,
[0020]所述具有堆叠口的线卡,用于接收所述堆叠系统中从设备上具有堆叠口的线卡发送的报文,并根据接收到的报文中携带的虚拟目的地址,和本地存储的虚拟目的地址与所述交换设备的线卡的对应关系,确定所述报文中携带的虚拟目的地址对应的线卡,并将所述报文发送至确定出的线卡,以指示确定出的线卡对报文进行处理,并根据处理结果确定是否发送至所述交换设备的主处理单元进行处理,所述报文中携带有虚拟目的地址;
[0021]所述每个不具有堆叠口的线卡,用于在确定自身为确定出的线卡时,接收所述具有堆叠口的线卡发送的报文,并对其进行处理,根据处理结果确定是否发送至所述交换设备的主处理单元进行处理。
[0022]本发明实施例的有益效果包括:
[0023]本发明实施例提供的一种报文处理方法、线卡和交换设备,该方法应用于包括至少两个交换设备的堆叠系统中,且该堆叠系统中主设备上具有堆叠口的线卡执行下述步骤:接收堆叠系统中从设备上具有堆叠口的线卡发送的报文,该报文携带有虚拟目的地址;然后,根据接收到的报文中携带的虚拟目的地址,和本地存储的虚拟目的地址与主设备上线卡的对应关系,确定报文中携带的虚拟目的地址对应的线卡,最后,将报文发送至确定出的线卡,指示确定出的线卡对报文进行处理,并根据处理结果确定是否发送至主设备的主处理单元进行处理。
[0024]前述这种处理方式,可将原本均送往堆叠系统中主设备上具有堆叠口的线卡的CPU进行处理的报文,部分分流到主设备的其他线卡的CPU进行处理,从而大大减轻了堆叠线卡的CPU负载,提高了报文处理效率。另外,本发明还提供了相应的线卡和交换设备,仍可解决上述问题。
【专利附图】

【附图说明】
[0025]图1为现有堆叠系统中主设备处理报文的示意图;
[0026]图2为本发明实施例提供的报文处理方法的流程图;
[0027]图3为本发明实施例提供的堆叠系统中主设备处理报文的示意图;
[0028]图4为本发明实施例提供的线卡的结构示意图;
[0029]图5本发明实施例提供的交换设备的结构示意图。
【具体实施方式】
[0030]下面结合说明书附图,对本发明实施例提供的一种报文处理方法、线卡及交换设备的【具体实施方式】进行说明。
[0031]本发明实施例提供的一种报文处理方法,该方法应用于包括至少两个交换设备的堆叠系统中,如图2所示,该堆叠系统中主设备上具有堆叠口的线卡执行下述步骤:
[0032]S21:接收堆叠系统中从设备上具有堆叠口的线卡发送的报文;
[0033]在这里,上述报文中携带有虚拟目的地址,此虚拟目的地址主要是用于指示主设备上具有堆叠口的线卡依据此地址确定后续处理此报文的线卡;
[0034]S22:根据接收到的报文中携带的虚拟目的地址,和本地存储的虚拟目的地址与主设备上线卡的对应关系,确定报文中携带的虚拟目的地址对应的线卡;
[0035]S23:将报文发送至确定出的线卡,指示确定出的线卡对报文进行处理,并根据处理结果确定是否发送至主设备的主处理单元进行处理。
[0036]具体地,在上述步骤S21中,从设备上具有堆叠口的线卡发送的报文,可能是从设备上具有堆叠口的线卡自身产生的报文,也可能是从设备上具有堆叠口的线卡从其他不具有堆叠口的线卡处获得的报文,例如,其他不具有堆叠口的线卡可通过内部数据链路传送报文。
[0037]换言之,对于上述报文而言,它的来源线卡并不仅仅指从设备上具有堆叠口的线卡,还有可能是从设备上不具有堆叠口的线卡,不管此报文来源于哪种线卡,此报文中携带的虚拟目的地址,实际上都是报文来源线卡接收的由主设备的主处理单元通过从设备的主处理单元转发的预先配置的虚拟目的地址之一。
[0038]需要说明的是,在本发明实施例中,主设备的主处理单元可为主管理板,预先配置有多个虚拟目的地址,例如虚拟目的地址可为虚拟交换芯片编号(CIHPID),并且,在主设备的主处理单元侧还配置有这些虚拟目的地址与主设备上线卡的对应关系,这些虚拟CHIPID对应的线卡可以全部是主设备上不具有堆叠口的线卡,也可以部分是主设备上不具有堆叠口的线卡,主设备的主处理单元会将预先配置的对应关系,下发给主设备上具有堆叠口的线卡,也就是说,上述步骤S22中主设备上具有堆叠口的线卡本地存储的对应关系是主设备的主处理单元下发过来的,以便于主设备上具有堆叠口的线卡根据此收到的对应关系对接收到的报文进行分流处理。[0039]除此之外,在主设备的主处理单元侧还可预先配置好后续将哪个虚拟CHIPID通告给哪个从设备,具体为通告给从设备的主处理单元,从设备的主处理单元也可为主管理板,主要负责将主设备的主处理单元通告的为该从设备分配的虚拟目的地址,转发给从设备的各个线卡,以便于从设备上的各个线卡根据接收到的虚拟CHIPID进行报文的相关配置。在这里,主设备的主处理单元通告给各个从设备的虚拟CHIPID,可以完全相同,也可以部分相同,还可以完全不同,并且可通告给某个从设备一个或多个CHIPID。
[0040]这样一来,上述报文中携带的虚拟目的地址,即是主设备的主处理单元预先配置的虚拟目的地址之一。例如,假设在主设备的主管理板侧预先配置了 4个虚拟目的地址,分别为100、101、102和103,并将100和101通告给从设备的主处理单元,从设备的主处理单元会将100和101转发给从设备上所有的线卡,这些线卡会从收到的100和101中选择一个,携带在后续传送的报文中,由此可知,在这种情况下,上述报文中携带的虚拟目的地址可能是100,也可能是101。
[0041]进一步地,在本发明实施例中,为了保证堆叠系统中报文的正常处理,主设备的主管理板预先配置的虚拟CHIPID的数量可以不少于主设备上线卡的总数,也可以不大于主设备上线卡的总数,在本发明实施例中,不管在哪种配置情况下,可以将部分虚拟CHIPID配置为与一个主设备的线卡相对应,也可以将一个虚拟CHIPID配置为与唯一的线卡相对应。
[0042]具体地,在执行上述步骤S23时,在主设备上具有堆叠口的线卡确定出的虚拟目的地址对应的线卡是自身的情况下,此线卡的交换芯片将报文送往此线卡的CPU进行处理,例如执行限速、过滤、防攻击丢弃等处理流程,然后根据处理结果再确定是否通过本地管理链路发送至主设备的主管理板进行处理,以减轻主设备的主处理单元的CPU的负载。
[0043]假设某堆叠系统中的主设备上共有10张线卡,且在主设备的主处理单元侧预先配置了 10个虚拟目的地址,分别与这10张线卡一一对应,那么,在这种情况下,主设备上具有堆叠口的线卡会将收到的报文分流到自身与其他9张线卡上处理,这样一来,堆叠口线卡的CPU处理压力降低了 1/10。
[0044]下面结合下述实施例对上述报文处理方法的实现流程进行详细说明:
[0045]假设上述方法应用于如图3所示的堆叠系统中,该堆叠系统包括交换设备31、交换设备32、交换设备33和交换设备34。其中,交换设备32为主设备,其他交换设备为从设备,该堆叠系统中的交换设备均可包括主管理板1、管理板2、线卡1、线卡2、线卡3、线卡4、线卡5和线卡6,并且每个交换设备的堆叠口均配置在各自的线卡3上。
[0046]假设交换设备32的主管理板I预先配置的虚拟CHIPID分别为100、101和102,Chipid=IOO与线卡6对应,chipid=ioi与线卡4对应,chipid=io2与线卡5对应;且主管理板将虚拟Chipid=IOO通告给交换设备31;将虚拟chipid=ioi通告给交换设备33;将虚拟CHIPID=102通告给交换设备34 ;假设交换设备32的线卡3仅负责处理交换设备32上各线卡的报文。
[0047]那么,对于交换设备32的线卡3来说,它的交换芯片在接收到交换设备31的线卡3自身发送的携带有虚拟CHIPID为100的报文时,根据Chipid=IOO与线卡6的对应关系,确定出目的线卡就是线卡6,这时,将此报文通过内部数据链路发送至线卡6的交换芯片上,由线卡6的交换芯片送往线卡6的CPU,由线卡6的CPU进行处理,然后根据处理结果再决定是否将处理后的报文发送至交换设备32的主管理板的CPU进行处理。通过前述这种处理方式,将部分从设备上的报文转移到除主设备上具有堆叠口的线卡的其他线卡上进行处理,减轻了堆叠线卡的CPU负载,提高了报文处理效率。
[0048]需要说明的是,对于交换设备32的线卡3处理交换设备34的线卡3自身发送的携带有CHIPID为102的报文的流程,与处理交换设备31发来的报文的流程类似,在此不再
--详述。
[0049]对于交换设备32的线卡3处理交换设备33的线卡3转发线卡I的携带有CHIPID为101的报文的流程,与处理交换设备31发来的报文的流程不同的是,交换设备33的线卡3发送给交换设备32的线卡3的报文,是由交换设备33的线卡I先通过内部数据链路发送给本地的线卡3的,其他流程相同,在此不再一一详述。
[0050]基于同一发明构思,本发明实施例还提供了一种线卡和交换设备,由于这些装置所解决问题的原理与前述报文处理方法相似,因此这些装置的实施可以参见前述方法的实施,重复之处不再赘述。
[0051]本发明实施例提供的一种线卡,应用于包括至少两个交换设备的堆叠系统中,该线卡具有堆叠口,且设置于堆叠系统中的主设备上,如图4所示,该线卡具体包括:
[0052]接收模块41,用于接收堆叠系统中从设备上具有堆叠口的线卡发送的报文;
[0053]在这里,上述报文中携带有虚拟目的地址;
[0054]确定模块42,用于根据接收模块41接收到的报文中携带的虚拟目的地址,和线卡存储的虚拟目的地址与主设备的线卡的对应关系,确定报文中携带的虚拟目的地址对应的线卡;
[0055]指示发送模块43,用于将报文发送至确定模块43确定出的线卡,指示确定出的线卡对报文进行处理,根据处理结果确定是否发送至主设备的主处理单元进行处理。
[0056]优选地,上述接收模块41接收到的报文,为从设备上具有堆叠口的线卡自身产生的报文,或者为从设备上具有堆叠口的线卡从其他不具有堆叠口的线卡处获得的报文。
[0057]优选地,上述接收模块41接收到的报文中携带的虚拟目的地址,为报文来源线卡接收的由主设备的主处理单元通过从设备的主处理单元转发的预先配置的虚拟目的地址之一 O
[0058]优选地,上述确定模块42确定虚拟目的地址对应的线卡时依据的对应关系,为主设备的主处理单元预先配置后下发的。
[0059]本发明实施例还提供一种交换设备,应用于堆叠系统中,且该交换设备为主设备,如图5所示,具体包括具有堆叠口的线卡51和至少一个不具有堆叠口的线卡52,其中,
[0060]具有堆叠口的线卡51,用于接收堆叠系统中从设备上具有堆叠口的线卡发送的报文,并根据接收到的报文中携带的虚拟目的地址,和本地存储的虚拟目的地址与交换设备上线卡的对应关系,确定报文中携带的虚拟目的地址对应的线卡,并将报文发送至确定出的线卡,以指示确定出的线卡对报文进行处理,根据处理结果确定是否发送至交换设备的主处理单元53进行处理;
[0061]在这里,上述报文中携带有虚拟目的地址;
[0062]每个不具有堆叠口的线卡52,用于在确定自身为确定出的线卡时,接收具有堆叠口的线卡51发送的报文,并将其发送至交换设备的主处理单元53进行处理。[0063]优选地,上述具有堆叠口的线卡51接收到的报文为从设备上具有堆叠口的线卡自身产生的报文,或者为从设备上具有堆叠口的线卡从其他不具有堆叠口的线卡处获得的报文。
[0064]优选地,上述具有堆叠口的线卡51接收到的报文中携带的虚拟目的地址,为报文来源线卡接收的交换设备的主处理单元通过自身所属设备的主处理单元转发的预先配置的虚拟目的地址之一。
[0065]优选地,上述具有堆叠口的线卡51存储的虚拟目的地址与主设备的线卡的对应关系,为交换设备的主处理单元53预先配置后下发的。
[0066]本发明实施例提供的报文处理方法、线卡及交换设备,可实现将原本均送往堆叠系统中主设备的具有堆叠口的线卡的CPU进行处理的报文,部分分流到主设备的其他线卡的CPU进行处理,从而大大减轻了堆叠线卡的CPU负载,提高了报文处理效率。
[0067]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种报文处理方法,其特征在于,该方法应用于包括至少两个交换设备的堆叠系统中,所述堆叠系统中主设备上具有堆叠口的线卡执行下述步骤: 接收所述堆叠系统中从设备上具有堆叠口的线卡发送的报文,所述报文中携带有虚拟目的地址; 根据接收到的报文中携带的虚拟目的地址,和本地存储的虚拟目的地址与所述主设备上线卡的对应关系,确定所述报文中携带的虚拟目的地址对应的线卡; 将所述报文发送至确定出的线卡,指示所述确定出的线卡对所述报文进行处理,并根据处理结果确定是否发送至所述主设备的主处理单元进行处理。
2.如权利要求1所述的方法,其特征在于,所述报文为所述从设备上具有堆叠口的线卡自身产生的报文,或者为所述从设备上具有堆叠口的线卡从其他不具有堆叠口的线卡处获得的报文。
3.如权利要求1所述的方法,其特征在于,所述报文中携带的虚拟目的地址,为所述报文来源线卡接收的由所述主设备的主处 理单元通过所述从设备的主处理单元转发的预先配置的虚拟目的地址之一,且所述本地存储的虚拟目的地址与所述主设备的线卡的对应关系,为所述主设备的主处理单元预先配置后下发的。
4.一种线卡,其特征在于,所述线卡应用于包括至少两个交换设备的堆叠系统中,所述线卡具有堆叠口,且设置于所述堆叠系统中的主设备上,具体包括: 接收模块,用于接收所述堆叠系统中从设备上具有堆叠口的线卡发送的报文,所述报文中携带有虚拟目的地址; 确定模块,用于根据所述接收模块接收到的报文中携带的虚拟目的地址,和所述线卡存储的虚拟目的地址与所述主设备上线卡的对应关系,确定所述报文中携带的虚拟目的地址对应的线卡; 指示发送模块,用于将所述报文发送至所述确定模块确定出的线卡,指示所述确定出的线卡对所述报文进行处理,并根据处理结果确定是否发送给所述主设备的主处理单元进行处理。
5.如权利要求4所述的线卡,其特征在于,所述接收模块接收到的报文为所述从设备上具有堆叠口的线自身产生的报文,或者为所述从设备上具有堆叠口的线卡从其他不具有堆叠口的线卡处获得的报文。
6.如权利要求4所述的线卡,其特征在于,所述接收模块接收到的报文中携带的虚拟目的地址,为所述报文来源线卡接收的由所述主设备的主处理单元通过所述从设备的主处理单元转发的预先配置的虚拟目的地址之一; 所述确定模块确定所述虚拟目的地址对应的线卡时依据的对应关系,为所述主设备的主处理单元预先配置后下发的。
7.一种交换设备,其特征在于,所述交换设备应用于堆叠系统中,且为主设备,包括具有堆叠口的线卡和至少一个不具有堆叠口的线卡,其中, 所述具有堆叠口的线卡,用于接收所述堆叠系统中从设备上具有堆叠口的线卡发送的报文,并根据接收到的报文中携带的虚拟目的地址,和本地存储的虚拟目的地址与所述交换设备上线卡的对应关系,确定所述报文中携带的虚拟目的地址对应的线卡,并将所述报文发送至确定出的线卡,以指示确定出的线卡对所述报文进行处理,并根据处理结果确定是否发送至所述交换设备的主处理单元进行处理,所述报文中携带有虚拟目的地址;所述每个不具有堆叠口的线卡,用于在确定自身为确定出的线卡时,接收所述具有堆叠口的线卡发送的报文,并对其进行处理,根据处理结果确定是否发送至所述交换设备的主处理单元进行处理。
8.如权利要求7所述的交换设备,其特征在于,所述具有堆叠口的线卡接收到的报文为所述从设备上具有堆叠口的线卡自身产生的报文,或者为所述从设备上具有堆叠口的线卡从其他不具有堆叠口的线卡处获得的报文。
9.如权利要求7所述的交换设备,其特征在于,所述具有堆叠口的线卡接收到的报文中携带的虚拟目的地址,为所述报文来源线卡接收的由所述交换设备的主处理单元通过所述从设备的主处理单元转发的预先配置的虚拟目的地址之一; 所述具有堆叠口的线卡存储的虚拟目的地址与所述主设备的线卡的对应关系,为所述交换设备的主处理单元预先配置后下发的。
【文档编号】H04L12/947GK103607360SQ201310565937
【公开日】2014年2月26日 申请日期:2013年11月14日 优先权日:2013年11月14日
【发明者】文权 申请人:福建星网锐捷网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1