CN101599900A - 堆叠系统及其报文转发方法 - Google Patents

堆叠系统及其报文转发方法 Download PDF

Info

Publication number
CN101599900A
CN101599900A CNA2009100889359A CN200910088935A CN101599900A CN 101599900 A CN101599900 A CN 101599900A CN A2009100889359 A CNA2009100889359 A CN A2009100889359A CN 200910088935 A CN200910088935 A CN 200910088935A CN 101599900 A CN101599900 A CN 101599900A
Authority
CN
China
Prior art keywords
equipment
hop
stacking opening
master control
control borad
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2009100889359A
Other languages
English (en)
Other versions
CN101599900B (zh
Inventor
王明辉
杜澎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN2009100889359A priority Critical patent/CN101599900B/zh
Publication of CN101599900A publication Critical patent/CN101599900A/zh
Application granted granted Critical
Publication of CN101599900B publication Critical patent/CN101599900B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种堆叠系统及其报文转发方法。本发明在每台堆叠设备中,针对所有堆叠设备每一堆叠口分别设置对应接口板组播表项,对应接口板组播表项中具有表示该堆叠口、并可于堆叠协议报文中携带的索引,其中,对应本设备每侧堆叠口的接口板组播表项用于将堆叠协议报文通过本设备该堆叠口发出;对应其他设备各堆叠口的接口板组播表项均用于将接收的堆叠报文上报CPU、或上报CPU的同时复制转发。这样,每台堆叠设备的接口板即可依据堆叠协议报文中表示本设备堆叠口的索引,使用对应的接口板组播表项从对应的堆叠口正确发出堆叠协议报文;依据接收的堆叠协议报文中表示其它设备堆叠口的索引,使用对应接口板组播表项正确上报、继续转发。

Description

堆叠系统及其报文转发方法
技术领域
本发明涉及堆叠协议报文转发技术,特别涉及可在各堆叠设备间实现堆叠协议报文转发的一种堆叠系统、以及一种堆叠系统中的堆叠协议报文转发方法。
背景技术
堆叠系统是由多个设备通过堆叠接口互连而成,其中,每个堆叠设备的两侧分别具有一个堆叠口(本文所述的“两侧”并不是用来限定堆叠口的物理位置),且每侧堆叠口与该侧相邻堆叠设备的另一侧堆叠口相连,也就是说相邻两个堆叠设备通过异侧堆叠口相连。在堆叠系统中,堆叠设备之间的堆叠协议报文正确转发极为重要。其中,报文类型包括逐跳堆叠协议报文(本文后续简称其为“逐跳报文”)和广播堆叠协议报文(本文后续简称其为“广播报文”),相应地,报文转发方式也分为逐跳和广播两种。
在堆叠系统初始建立时,每台堆叠设备均未获知其相邻堆叠设备的信息,通过单播方式是无法实现报文转发的,因此,为了实现报文的正确转发,每台堆叠设备中为逐跳和广播这两种方式分别设置一个组播表项,该组播表项所属组播组中包括堆叠系统中除该台堆叠设备之外的所有堆叠设备。这样,在收发逐跳报文时使用逐跳方式的一个组播表项,无论接收该逐跳报文的相邻堆叠设备为组播组中的哪一个堆叠设备,均可正确接收该逐跳报文;在收发广播报文时使用广播方式的一个组播表项,无论接收该广播报文的相邻堆叠设备为组播组中的哪一个堆叠设备,均可正确接收该广播报文。其中,逐跳/广播方式(本文中的“/”表示“或”的关系)的每个组播转发项中,均通过发送方向的出端口掩码来标识应作为逐跳报文/广播报文出端口的堆叠口。
然而,上述堆叠系统中的报文转发方式仅适用于盒式堆叠系统,盒式堆叠系统中的每台堆叠设备只有一块同时作为主控板和接口板的单板,而由于框式堆叠系统中的每台堆叠设备为包含主控板和接口板的分布式结构、且只有主控板上的CPU能够识别应作为逐跳报文/广播报文出端口的堆叠口,因而逐跳报文/广播报文经板间转发后无法在接口板上区分应从哪一个堆叠口发出该逐跳报文/广播报文。
可见,现有技术无法保证框式堆叠系统中分布式堆叠设备之间的报文正确转发。
发明内容
有鉴于此,本发明提供了一种堆叠系统、以及一种堆叠系统中的报文转发方法,能够提高报文转发正确性。
本发明提供的一种堆叠系统,该堆叠系统的每台堆叠设备中,包括具有CPU的主控板、以及具有本设备堆叠口的接口板;
每台堆叠设备中,针对本设备的每个堆叠口分别设置有一个用于逐跳方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将逐跳报文通过本设备该堆叠口发出;
每台堆叠设备在发送逐跳报文时,由本设备主控板上的CPU在逐跳报文中添加应作为该逐跳报文出端口的本设备堆叠口所对应的索引,该堆叠口所在接口板依据逐跳报文中的索引,使用本设备中该堆叠口对应的接口板组播表项将该逐跳报文通过该堆叠口转发;
每台堆叠设备中,还针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的逐跳报文上报至本设备主控板;
每台堆叠设备在接收逐跳报文时,本设备中接收逐跳报文的堆叠口所在接口板,依据该逐跳报文中其他设备堆叠口对应的索引,使用对应接口板组播表项将该逐跳报文经本设备主控板上报至CPU。
每台堆叠设备中,进一步针对本设备每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,本设备每个堆叠口对应的主控板组播表项中包含有表示该堆叠口的索引、并用于将逐跳报文发送至本设备该堆叠口所在接口板;
每台堆叠设备在发送逐跳报文时,本设备中的主控板进一步依据逐跳报文中的索引,使用本设备中对应堆叠口所对应的主控板组播表项,将该逐跳报文发送至本设备中对应堆叠口所在接口板;
每台堆叠设备中,还进一步针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,其他堆叠设备每个堆叠口对应的主控板组播表项中也包含有表示该堆叠口的索引、但用于将接收的逐跳报文上报至本板CPU;
每台堆叠设备在接收逐跳报文时,本设备中的主控板进一步依据逐跳报文中其他设备堆叠口对应的索引,使用对应主控板组播表项将该逐跳报文上报至本板CPU。
每台堆叠设备中,本设备每个堆叠口的对应接口板组播表项的出端口掩码中,包含有该堆叠口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备该堆叠口所在接口板上与本设备主控板的互连端口信息;
每台堆叠设备中,本设备每个堆叠口的对应主控板组播表项的出端口掩码中,包含有本设备主控板与该堆叠口所在接口板的互连端口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备主控板的CPU端口信息。
每台堆叠设备在将逐跳报文上报至本设备中主控板上的CPU之后,CPU进一步判断本设备是否为该逐跳报文的最后一跳,如果不是,则本设备作为中转设备继续发送逐跳报文,否则,取消对该逐跳报文的继续发送。
本发明提供的另一种堆叠系统,该堆叠系统中的每台堆叠设备包括:具有CPU的主控板、以及具有堆叠口的接口板;
每台堆叠设备中,针对本设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将广播报文通过本设备该堆叠口发出;
每台堆叠设备在作为源设备发送广播报文时,由本设备主控板上的CPU在广播报文中添加应作为该广播报文出端口的本设备堆叠口所对应的索引,该堆叠口所在接口板依据广播报文中的索引,使用本设备中该堆叠口对应的接口板组播表项将该广播报文通过该堆叠口转发;
每台堆叠设备中,还针对其他设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的广播报文上报至本设备主控板、并通过本设备中除接收该逐跳报文堆叠口之外的另一堆叠口转发;
每台堆叠设备在作为中转设备接收并转发广播报文时,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中其他设备堆叠口对应的索引,使用对应接口板组播表项将该广播报文经本设备主控板上报至CPU、同时通过本设备另一堆叠口转发。
每台堆叠设备中,进一步针对本设备每个堆叠口分别设置一个用于广播方式的主控板组播表项,本设备每个堆叠口对应的主控板组播表项中包含有表示该堆叠口的索引、并用于将广播报文通过本设备该堆叠口所在接口板;
每台堆叠设备在作为源设备发送广播报文时,本设备中的主控板依据该广播报文中的索引,使用本设备中对应堆叠口所对应的主控板组播表项,将该广播报文发送至本设备中对应堆叠口所在接口板;
每台堆叠设备中,还进一步针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,其他堆叠设备每个堆叠口对应的主控板组播表项中也包含有表示该堆叠口的索引、但用于将接收的广播报文上报至本板CPU;
每台堆叠设备在作为中转设备接收并转发广播报文时,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中其他设备堆叠口对应的索引使用对应主控板组播表项,将该广播报文上报本板CPU。
每台堆叠设备中,本设备每侧堆叠口的对应接口板组播表项的出端口掩码中,包含有该堆叠口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备该堆叠口所在接口板上与本设备主控板的互连端口信息、以及本设备中的两侧堆叠口信息;
每台堆叠设备中,本设备每侧堆叠口的对应主控板组播表项的出端口掩码中,包含有本设备主控板与该堆叠口所在接口板的互连端口信息;如果该堆叠设备两侧堆叠口位于同一接口板,则其他设备各堆叠口的对应接口板组播表项的出端口掩码中均包含有本设备主控板的CPU端口信息,如果该堆叠设备两侧堆叠口位于不同接口板,则其他设备各堆叠口的对应接口板组播表项的出端口掩码中均包含有本设备主控板的CPU端口信息、以及本设备主控板上与两侧堆叠口所在接口板的互联端口信息。
本发明提供的一种堆叠系统中的报文转发方法,应用该报文转发方法的堆叠系统中,每台堆叠设备包括具有CPU的主控板、以及具有本设备堆叠口的接口板;
为每台堆叠设备针对本设备的每个堆叠口分别设置一个用于逐跳方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将逐跳报文通过本设备该堆叠口发出;
在每台堆叠设备发送逐跳报文时,由本设备主控板上的CPU在逐跳报文中添加应作为该逐跳报文出端口的本设备堆叠口所对应的索引,该堆叠口所在接口板依据逐跳报文中的索引,使用本设备中该堆叠口对应的接口板组播表项将该逐跳报文通过该堆叠口转发;
还为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的逐跳报文上报至本设备主控板;
在每台堆叠设备接收逐跳报文时,本设备中接收逐跳报文的堆叠口所在接口板,依据该逐跳报文中其他设备堆叠口对应的索引,使用对应接口板组播表项将该逐跳报文经本设备主控板上报至CPU。
进一步为每台堆叠设备针对本设备每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,本设备每个堆叠口对应的主控板组播表项中包含有表示该堆叠口的索引、并用于将逐跳报文发送至本设备该堆叠口所在接口板;
在每台堆叠设备作为源设备或中转设备发送逐跳报文时,进一步由本设备中的主控板依据逐跳报文中的索引,使用本设备中对应堆叠口所对应的主控板组播表项,将该逐跳报文发送至本设备中对应堆叠口所在接口板;
还进一步为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,其他堆叠设备每个堆叠口对应的主控板组播表项中也包含有表示该堆叠口的索引、但用于将接收的逐跳报文上报至本板CPU;
在每台堆叠设备接收逐跳报文时,进一步由本设备中的主控板依据逐跳报文中其他设备堆叠口对应的索引,使用对应主控板组播表项将该逐跳报文上报至本板CPU。
为每台堆叠设备设置的所有接口板组播表项中,本设备每侧堆叠口的对应接口板组播表项的出端口掩码中,包含有该堆叠口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备该堆叠口所在接口板上与本设备主控板的互连端口信息;
为每台堆叠设备设置的所有主控板组播表项中,本设备每侧堆叠口的对应主控板组播表项的出端口掩码中,包含有本设备主控板与该堆叠口所在接口板的互连端口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备主控板的CPU端口信息。
该报文转发方法在每台堆叠设备在将逐跳报文上报至本设备中主控板上的CPU之后,进一步由CPU判断本设备是否为该逐跳报文的最后一跳,如果不是,则本设备作为中转设备继续发送逐跳报文,否则,取消对该逐跳报文的继续发送。
本发明提供的另一种堆叠系统中的报文转发方法,应用该报文转发方法的堆叠系统中,每台堆叠设备包括具有CPU的主控板、以及具有本设备堆叠口的接口板;
为每台堆叠设备针对本设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将广播报文通过本设备该堆叠口发出;
在每台堆叠设备作为源设备发送广播报文时,由本设备主控板上的CPU在广播报文中添加应作为该广播报文出端口的本设备堆叠口所对应的索引,该堆叠口所在接口板依据广播报文中的索引,使用本设备中该堆叠口对应的接口板组播表项将该广播报文通过该堆叠口转发;
还为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的广播报文上报至本设备主控板、并通过本设备中除接收该逐跳报文堆叠口之外的另一堆叠口转发;
在每台堆叠设备作为中转设备接收并转发广播报文时,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中其他设备堆叠口对应的索引,使用对应接口板组播表项将该广播报文经本设备主控板上报至CPU、同时通过本设备另一堆叠口转发。
进一步为每台堆叠设备针对本设备每个堆叠口分别设置一个用于广播方式的主控板组播表项,本设备每个堆叠口对应的主控板组播表项中包含有表示该堆叠口的索引、并用于将广播报文通过本设备该堆叠口所在接口板;
在每台堆叠设备作为源设备发送广播报文时,本设备中的主控板依据该广播报文中的索引,使用本设备中对应堆叠口所对应的主控板组播表项,将该广播报文发送至本设备中对应堆叠口所在接口板;
还进一步为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,其他堆叠设备每个堆叠口对应的主控板组播表项中也包含有表示该堆叠口的索引、但用于将接收的广播报文上报至本板CPU;
在每台堆叠设备作为中转设备接收并转发广播报文时,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中其他设备堆叠口对应的索引使用对应主控板组播表项,将该广播报文上报本板CPU。
为每台堆叠设备设置的所有接口板组播表项中,本设备每侧堆叠口的对应接口板组播表项的出端口掩码中,包含有该堆叠口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备该堆叠口所在接口板上与本设备主控板的互连端口信息、以及本设备中的两侧堆叠口信息;
为每台堆叠设备设置的所有主控板组播表项中,本设备每侧堆叠口的对应主控板组播表项的出端口掩码中,包含有本设备主控板与该堆叠口所在接口板的互连端口信息;如果该堆叠设备两侧堆叠口位于同一接口板,则其他设备各堆叠口的对应接口板组播表项的出端口掩码中均包含有本设备主控板的CPU端口信息,如果该堆叠设备两侧堆叠口位于不同接口板,则其他设备各堆叠口的对应接口板组播表项的出端口掩码中均包含有本设备主控板的CPU端口信息、以及本设备主控板上与两侧堆叠口所在接口板的互联端口信息。
由上述技术方案可见,本发明在每台堆叠设备中,针对所有堆叠设备的每个堆叠口分别设置有一个用于逐跳方式的对应接口板组播表项,对应接口板组播表项中具有可于逐跳报文中携带的对应逐跳索引,其中,对应本设备每侧堆叠口的接口板组播表项,用于将逐跳报文通过本设备该堆叠口发出;对应其他设备各堆叠口的接口板组播表项,均用于将接收的逐跳报文上报至本设备主控板。这样,每台堆叠设备的接口板即可依据待发送逐跳报文中表示本设备堆叠口的逐跳索引,使用对应的接口板组播表项从对应的堆叠口正确发出逐跳报文;依据接收的逐跳报文中表示其它设备堆叠口的逐跳索引,使用对应的接口板组播表项正确上报逐跳报文,从而能够提高逐跳方式的报文转发正确性。
本发明还在每台堆叠设备中,针对所有堆叠设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,对应接口板组播表项中具有可于广播报文中携带的对应广播索引,其中,对应本设备每侧堆叠口的接口板组播表项,用于将广播报文通过本设备该堆叠口发出;对应其他设备各堆叠口的接口板组播表项,均用于将接收的广播报文上报至本设备主控板、并通过本设备中除接收该逐跳报文堆叠口之外的另一堆叠口转发。这样,每台堆叠设备的接口板即可依据待发送逐跳报文中表示本设备堆叠口的广播索引,使用对应的接口板组播表项从对应的堆叠口正确发出广播报文;依据接收的广播报文中表示其它设备堆叠口的广播索引,使用对应的接口板组播表项正确上报并继续转发广播报文,从而能够提高广播方式的报文转发正确性。
而且,本发明还可在每台堆叠设备中,针对所有堆叠设备所有堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项、以及一个用于广播放时的对应主控板表项,分别用于保证逐跳报文和广播报文在堆叠设备内的准确转发,进一步提高了报文转发正确性。
此外,采用本发明中的技术方案不但能够解决无法在接口板区分正确堆叠口的问题,还能够使得堆叠系统支持较大数量的堆叠设备。
附图说明
图1a为本发明实施例中逐跳方式报文发送过程的流程示意图;
图1b为本发明实施例中逐跳方式报文接收过程的流程示意图;
图2a为本发明实施例中广播方式报文发送过程的流程示意图;
图2b为本发明实施例中广播方式报文接收转发过程的一种流程示意图;
图2c为本发明实施例中广播方式报文接收转发过程的另一种流程示意图;
图3为本发明实施例中以逐跳方式转发报文的一实例示意图;
图4为本发明实施例中以广播方式转发报文的一实例示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
本实施例的堆叠系统中包括N台堆叠设备,N为大于1的正整数。
所有N台堆叠设备的每一台堆叠设备中,针对所有N台堆叠设备共2N个堆叠口中的每一个堆叠口,分别设置有一个用于逐跳方式的对应接口板组播表项MCa、一个用于逐跳方式的对应主控板组播表项MCa’、以及一个对应的逐跳索引index_a。
1)、对于每台堆叠设备i来说(i为1~N中的任一取值),为其设置的用于逐跳方式的2N个接口板组播表项MCa中,对应本设备一侧堆叠口i_1的接口板组播表项MCa_i_1中,应具有表示堆叠口i_1的逐跳索引index_a_i_1,且接口板组播表项MCa_i_1用于将逐跳报文通过本堆叠设备i的堆叠口i_1发出;对应本设备另一侧堆叠口i_2的接口板组播表项MCa_i_i_2中,应具有表示堆叠口i_2的逐跳索引index_a_i_2,且接口板组播表项MCa_i_2用于将逐跳报文通过本堆叠设备i的堆叠口i_2发出;对应除本堆叠设备i之外的其他所有堆叠设备j(j为1~N中的任一取值、且j不同于i)一侧堆叠口j_1的接口板组播表项MCa_j_1、以及另一侧堆叠口j_2的接口板组播表项MCa_j_2,则应分别具有表示堆叠口j_1、堆叠口j_2的逐跳索引index_a_j_1、index_a_j_2,且接口板组播表项MCa_j_1、MCa_j_2均用于将接收的逐跳报文上报至本堆叠设备i的主控板i。
需要注意的是,堆叠设备j中设置的MCa_i_1、MCa_i_2与堆叠设备i中设置的MCa_i_1、MCa_i_2是不同的,或者说,每台堆叠设备中设置的MCa_i_1、MCa_i_2均互不相同。
具体说,堆叠设备i中设置的用于逐跳方式的2N个接口板组播表项可通过如下方式来设置:
堆叠设备i中设置的MCa_i_1的出端口掩码中包含有堆叠设备i对应侧堆叠口i_1信息、MCa_i_2的出端口掩码中包含有堆叠设备i对应侧堆叠口i_2信息,用以保证堆叠设备i中堆叠口i_1或堆叠口i_2所在接口板依据堆叠口i_1对应的index_a_i_1或堆叠口i_2的对应index_a_i_2,使用属于本堆叠设备i中对应堆叠口i_1的对应MCa_i_1或堆叠口i_2的对应MCa_i_2发送逐跳报文时,能够将逐跳报文从本堆叠设备i的对应堆叠口i_1或堆叠口i_2发出;
堆叠设备i中设置的MCa_j_1和MCa_j_2的出端口掩码中,均包含本堆叠设备i中堆叠口i_1和堆叠口i_2所在接口板上与主控板i的互连端口信息,以保证堆叠设备i或堆叠口i_2所在接口板依据接收逐跳报文中携带的index_a_j_2或index_a_j_1,使用与对应的MCa_j_2或MCa_j_1表项时,能够将逐跳报文经本堆叠设备i的主控板i上报至CPU,从而保证堆叠设备i作为该逐跳报文的最后一跳时能够对该逐跳报文进行处理、作为该逐跳报文的中间一跳时能够将该逐跳报文从本堆叠设备i转发。
2)、对于每台堆叠设备i来说,为其设置的用于逐跳方式的2N个主控板组播表项MCa’中,对应本设备一侧堆叠口i_1的主控板组播表项MCa’_i_1中,应具有表示堆叠口i_1的逐跳索引index_a_i_1,且主控板组播表项MCa’_i_1用于将逐跳报文转发至本堆叠设备i中堆叠口i_1所在接口板;对应本设备另一侧堆叠口i_2的主控板组播表项MCa’_i_2中,应具有表示堆叠口i_2的逐跳索引index_a_i_2,且主控板组播表项MCa’_i_2用于将逐跳报文转发至本堆叠设备i中堆叠口i_2所在接口板(可以与堆叠口i_1所在接口板为相同或不同接口板);对应除本堆叠设备i之外的其他所有堆叠设备j一侧堆叠口j_1的主控板组播表项MCa’_j_1、以及另一侧堆叠口j_2的主控板组播表项MCa’_j_2,则应分别具有表示堆叠口j_1、堆叠口j_2的逐跳索引index_a_j_1、index_a_j_2,且主控板组播表项MCa’_j_1、MCa’_j_2均用于将接收的逐跳报文上报至本堆叠设备i主控板i的本板CPU。
需要注意的是,堆叠设备j中设置的MCa’_i_1、MCa’_i_2与堆叠设备i中设置的MCa’_i_1、MCa’_i 2是不同的,或者说,每台堆叠设备中设置的MCa’_i_1、MC’_a_i_2均互不相同。
具体说,堆叠设备i中设置的用于逐跳方式的2N个主控板组播表项可通过如下方式来设置:
堆叠设备i中设置的MCa’_i_1的出端口掩码中包含有堆叠设备i对应侧堆叠口i_1所在接口板的互联端口信息、MCa’_i_2的出端口掩码中包含有堆叠设备i主控板i上与对应侧堆叠口i_2所在接口板的互联端口信息,用以保证主控板i依据逐跳报文中携带的堆叠口i_1对应的index_a_i_1或堆叠口i_2的对应index_a_i_2,使用本堆叠设备i中堆叠口i_1对应的MCa’_i_1或堆叠口i_2对应的MCa’_i_2时,能够将逐跳报文正确下发至堆叠设备i中堆叠口i_1或堆叠口i_2所在接口板;
堆叠设备i中设置的MCa’_j_1和MCa’_j_2的出端口掩码中,均包含本堆叠设备i主控板i上的CPU端口信息,以保证主控板i依据接收逐跳报文中携带的index_a_j_2或index_a_j_1,使用与堆叠设备j中堆叠口j_2对应的MCa’_j_2或堆叠口j_1对应的MCa’_j_1表项时,能够将逐跳报文上报至本堆叠设备i的主控板i。
这样,假设堆叠设备i作为源设备,则堆叠设备i中的CPU将应作为逐跳报文出端口的本堆叠设备i一侧堆叠口i_1的index_a_i_1添加至逐跳报文中;本堆叠设备i的主控板i依据该逐跳报文中携带的index_a_i_1,使用匹配到的本堆叠设备i中堆叠口i_1对应的主控板组播表项MCa’_i_1,由于MCa’_i_1的出端口掩码中包含有主控板i上与堆叠设备i中堆叠口i_1所在接口板的互连端口信息,因而可将该逐跳报文下发至堆叠口i_1所在接口板;该接口板依据该逐跳报文中携带的index_a_i_1,使用匹配到的属于本堆叠设备i堆叠口i_1对应的接口板组播表项MCa_i_1,由于MCa_i_1的出端口掩码中包含有堆叠设备i的堆叠口i_1信息,因而可通过MCa_i_1从本堆叠设备i中正确的一侧堆叠口i_1发送该逐跳报文。
此后,堆叠设备j作为中转设备或目的设备,其另一侧堆叠口j_2会接收到堆叠设备i的一侧堆叠口i_1发送的逐跳报文,且堆叠设备j中堆叠口j_2所在接口板会依据接收到的逐跳报文中携带的index_a_i_1,使用匹配到的与之对应的属于堆叠设备i中堆叠口i_1的接口板组播表项MCa_i_1、而不是本堆叠设备j另一侧堆叠口j_2的接口板组播表项MCa_j_2,由于堆叠设备j中设置的MCa_i_1对于堆叠设备j来说,属于除本堆叠设备j之外的其他堆叠设备的接口板组播表项(即,堆叠设备j中设置的MCa_i_1与堆叠设备i中设置的MCa_i_1是不同的),因而在堆叠设备j中设置的MCa_i_1的出端口掩码中,包含有本堆叠设备j中叠口j_2所在接口板上与主控板j的互连端口信息,从而堆叠口j_2所在接口板可通过MCa_i_1将逐跳报文上报至本堆叠设备j的主控板j;本堆叠设备j的主控板j依据逐跳报文中携带的index_a_i_1,使用匹配到的与之对应的属于堆叠设备i中堆叠口i_1的主控板组播表项MCa’_i_1、而不是本堆叠设备j另一侧堆叠口j_2的主控板组播表项MCa’_j_2,由于堆叠设备j中设置的MCa’_i_1对于堆叠设备j来说,属于除本堆叠设备j之外的其他堆叠设备的主控板组播表项(即,堆叠设备j中设置的MCa’_i_1与堆叠设备i中设置的MCa’_i_1是不同的),因而在堆叠设备j中设置的MCa’_i_1的出端口掩码中,包含有本堆叠设备j中主控板j上的CPU端口信息,从而主控板j可将该逐跳报文上报至本板CPU。
且,在将逐跳报文上报至本堆叠设备j中主控板j上的CPU之后,由该CPU进一步判断本堆叠设备j是否为该逐跳报文的最后一跳,如果是,则本堆叠设备j作为中转设备继续发送逐跳报文、并以本堆叠设备j中与该逐跳报文上一跳出端口同侧的堆叠口作为出端口,否则,取消对该逐跳报文的继续发送、并执行对该逐跳报文的相应处理。
需要说明的是,对于只包含堆叠板(即设有堆叠口的接口板)、且两侧堆叠口位于同一堆叠板的堆叠设备来说,可以不设置上述2N个用于逐跳方式的主控板组播表项,而是采用现有任意一种方式实现主控板下发逐跳报文、上报逐跳报文。
此外,所有N台堆叠设备的每一台堆叠设备中,还可针对所有N台堆叠设备共2N个堆叠口中的每一个堆叠口,分别设置有一个用于广播方式的对应接口板组播表项MCb、一个用于广播方式的对应主控板组播表项MCb’、以及一个对应的广播索引index_b。
1)、对于堆叠设备i来说,为其设置的用于广播方式的2N个接口板组播表项MCb中,对应本堆叠设备i一侧堆叠口i_1的接口板组播表项MCb_i_1中,应具有表示堆叠口i_1的广播索引index_b_i_1,且接口板组播表项MCb_i_1用于将广播报文通过本堆叠设备i的堆叠口i_1发出;对应本堆叠设备i另一侧堆叠口i_2的接口板组播表项MCb_i_2中,应具有表示堆叠口i_2的广播索引index_b_i_2,且接口板组播表项MCb_i_2用于将广播报文通过本堆叠设备i的堆叠口i_2发出;对应除本堆叠设备i之外的其他所有堆叠设备j一侧堆叠口j_1的接口板组播表项MCb_j_1、以及另一侧堆叠口j_2的接口板组播表项MCb_j_2,则应分别具有表示堆叠口j_1、堆叠口j_2的广播索引index_b_j_1、index_b_j_2,且接口板组播表项MCb_j_1、MCb_j_2均用于将接收的广播报文上报至本堆叠设备i的主控板i、并通过本堆叠设备i中除接收该广播报文堆叠口之外的另一侧堆叠口转发。
需要注意的是,堆叠设备j中设置的MCb_i_1、MCb_i_2与堆叠设备i中设置的MCb_i_1、MCb_i_2是不同的,或者说,每台堆叠设备中设置的MCb_i_1、MCb_i_2均互不相同。
具体说,堆叠设备i中设置的用于广播方式的2N个接口板组播表项可通过如下方式来设置:
堆叠设备i中设置的MCb_i_1的出端口掩码中,包含有堆叠设备i对应侧堆叠口i_1的信息,堆叠设备i中设置的MCb_i_2的出端口掩码中,包含有堆叠设备i对应侧堆叠口i_2的信息,用以保证堆叠设备i中堆叠口i_1或堆叠口i_2所在接口板依据index_b_i_1或index_b_i_2,使用属于本堆叠设备i堆叠口i_1的对应MCb_i_1或堆叠口i_2的对应MCb_i_2发送广播报文时,能够将广播报文从本堆叠设备i的对应堆叠口i_1或堆叠口i_2正确发出;
堆叠设备i中设置的MCb_j_1和MCb_j_2的出端口掩码中,均包含本堆叠设备i中堆叠口i_1和堆叠口i_2所在接口板与主控板i的互连端口信息、以及本堆叠设备i中的两侧堆叠口信息,以保证堆叠设备i任一侧堆叠口i_1或堆叠口i_2所在接口板,依据广播报文中所携带的index_b_j_1或index_b_j_2使用与对应的接口板组播表项MCb_j_1或MCb_j_2时,能够将广播报文经本堆叠设备i的主控板i上报至CPU、同时复制转发至本堆叠设备i中的另一侧堆叠口i_2或堆叠口i_1(虽然堆叠设备i中设置的MCb_j_1和MCb_j_2的出端口掩码中包含有本堆叠设备i中的两侧堆叠口信息,但由于其中一侧是接收广播报文的堆叠口,因而不会再从该侧堆叠口转发广播报文)。
2)、对于堆叠设备i来说,为其设置的用于广播方式的2N个主控板组播表项MCb’中,对应本堆叠设备i一侧堆叠口i_1的主控板组播表项MCb’_i_1中,应具有表示堆叠口i_1的广播索引index_b_i_1,且主控板组播表项MCb’_i_1用于将广播报文下发至本堆叠设备i的堆叠口i_1所在接口板;对应本堆叠设备i另一侧堆叠口i_2的主控板组播表项MCb’_i_2中,应具有表示堆叠口i_2的逐跳索引index_b_i_2,且主控板组播表项MCb’_i_2用于将广播报文下发至本堆叠设备i的堆叠口i_2所在接口板(可以与堆叠口i_1所在接口板为相同或不同接口板);对应除本堆叠设备i之外的其他所有堆叠设备j一侧堆叠口j_1的主控板组播表项MCb’_j_1、以及另一侧堆叠口j_2的主控板组播表项MCb’_j_2,则应分别具有表示堆叠口j_1、堆叠口j_2的广播索引index_b_j_1、index_b_j_2,且主控板组播表项MCb’_j_1、MCb’_j_2均用于将接收的广播报文上报至本板CPU。
需要说明的是,对于堆叠口i_1和堆叠口i_2位于不同接口板的情况,任一侧堆叠口i_1或堆叠口i_2接收到的广播报文都无法在其所在接口板上复制转发至另一侧堆叠口i_2或堆叠口i_1,因而此时,就需要主控板i承担堆叠口i_1和堆叠口i_2分处不同接口板之间的广播报文转发,从而上述其他所有堆叠设备j的主控板组播表项MCb’_j_1和MCb’_j_2,就进一步用于将接收到的广播报文复制下发至本堆叠设备i中除接收该广播报文堆叠口i_1或堆叠口i_2之外的另一侧堆叠口i_2或堆叠口i_1所在接口板。
另需要注意的是,堆叠设备j中设置的MCb’_i_1、MCb’_i_2与堆叠设备i中设置的MCb’_i_1、MCb’_i_2是不同的,或者说,每台堆叠设备中设置的MC b’_i_1、MC b’_i_2均互不相同。
具体说,堆叠设备i中设置的用于广播方式的2N个接口板组播表项可通过如下方式来设置:
堆叠设备i中设置的MCb’_i_1的出端口掩码中,包含有堆叠设备i主控板i上与对应堆叠口i_1所在接口板的互连端口信息,堆叠设备i中设置的MCb’_i_2的出端口掩码中,包含有堆叠设备i主控板i上与对应堆叠口i_2所在接口板的互连端口信息,用以保证堆叠设备i中主控板i依据广播报文中携带的index_b_i_1或index_b_i_2,使用属于本堆叠设备i堆叠口i_1的对应MCb’_i_1或堆叠口i_2的对应MCb’_i_2时,能够将广播报文下发至本堆叠设备i的对应堆叠口i_1或堆叠口i_2所在接口板;
堆叠设备i中设置的MCb’_j_1和MCb’_j_2的出端口掩码中,均包含本堆叠设备i中主控板i上的CPU端口信息,用以保证堆叠设备i任一侧堆叠口i_1或堆叠口i_2所在接口板,依据广播报文中所携带的index_b_j_2或index_b_j_1使用与对应的接口板组播表项MCb’_j_2或MCb’_j_1时,能够将广播报文上报至本板CPU。对于前述堆叠口i_1和堆叠口i_2位于不同接口板、需要经主控板i复制转发的情况,MCb’_j_1和MCb’_j_2的出端口掩码中还需进一步包括主控板i上与两侧堆叠口i_1和堆叠口i_2分别所在接口板的互连端口信息,以保证主控板i可依据广播报文中所携带的index_b_j_1或index_b_j_2使用与对应的接口板组播表项MCb’_j_1或MCb’_j_2时,进一步复制该广播报文、并下发至本堆叠设备i中的另一侧堆叠口i_2或堆叠口i_1所在接口板(虽然堆叠设备i中设置的MCb’_j_1和MCb’_j_2的出端口掩码中包含有本堆叠设备i中的两侧堆叠口所在接口板的互连端口信息,但由于其中一侧堆叠口所在接口板的互连端口是接收广播报文的端口,因而不会再从该侧堆叠口所在接口板的互连端口转发广播报文)。
这样,假设堆叠设备i作为源设备,则堆叠设备i中的CPU将应作为广播报文出端口的一侧堆叠口i_1的index_b_i_1添加至广播报文中,堆叠设备i中的主控板i依据广播报文中携带的index_b_i_1,使用匹配到的本堆叠设备i中堆叠口i_1对应的主控板组播表项MCb’_i_1,由于MCb’_i_1的出端口掩码中包含有主控板i上与本堆叠设备i中堆叠口i_1所在接口板的互连端口信息,因而可通过MCb’_i_1将该广播报文下发至本堆叠设备i中堆叠口i_1所在接口板,该接口板依据广播报文中携带的index_b_i_1,使用匹配到的属于本堆叠设备i堆叠口i_1对应的接口板组播表项MCb_i_1,由于MCb_i_1的出端口掩码包含有堆叠设备i的堆叠口i_1信息,因而可通过MCb_i_1从本堆叠设备i中正确的一侧堆叠口i_1发送该广播报文。
此后,堆叠设备j作为中转设备,其另一侧堆叠口j_2会接收到堆叠设备i的一侧堆叠口i_1发送的广播报文,且堆叠设备j中堆叠口j_2所在接口板会依据接收到的广播报文中携带的index_b_i_1,使用匹配到的与之对应的属于堆叠设备i中堆叠口i_1的接口板组播表项MCb_i_1、而不是本堆叠设备j中堆叠口j_2对应的接口板组播表项MCb_j_2,由于堆叠设备j中设置的MCb_i_1对于堆叠设备j来说,属于除本堆叠设备j之外的其他堆叠设备的接口板组播表项(即,堆叠设备j中设置的MCb_i_1与堆叠设备i中设置的MCb_i_1是不同的),因而堆叠设备j中设置的MCb_i_1的出端口掩码中,包含有堆叠设备j中堆叠口j_2所在接口板与主控板j的互连端口信息、以及堆叠口j_1和堆叠口j_2的信息,那么:
如果堆叠设备j中的堆叠口j_1和堆叠口j_2位于同一接口板,则堆叠口j_2所在接口板即可通过MCb_i_1将广播报文上报本堆叠设备j的主控板j、同时复制转发至本堆叠设备j的堆叠口j_1;之后,主控板j依据接收到的广播报文中携带的index_b_i_1,使用匹配到的与之对应的属于堆叠设备i中堆叠口i_1的主控板组播表项MCb’_i_1、而不是本堆叠设备j中堆叠口j_2对应的主控板组播表项MCb’_j_2,由于堆叠设备j中设置的MCb’_i_1对于堆叠设备j来说,属于除本堆叠设备j之外的其他堆叠设备的主控板组播表项(即,堆叠设备j中设置的MCb’_i_1与堆叠设备i中设置的MCb’_i_1是不同的),因而MCb’_i_1的出端口掩码中包含主控板i的CPU端口信息,从而主控板i可通过MCb’_i_1将接收到的广播报文上报至本板CPU;
如果堆叠设备j中的堆叠口j_1和堆叠口j_2位于不同接口板,则堆叠口j_2所在接口板即可通过MCb_i_1将广播报文上报本堆叠设备j的主控板j;之后,主控板j依据接收到的广播报文中携带的index_b_i_1,使用匹配到的与之对应的属于堆叠设备i中堆叠口i_1的主控板组播表项MCb’_i_1、而不是本堆叠设备j中堆叠口j_2对应的主控板组播表项MCb’_j_2,由于堆叠设备j中的MCb’_i_1对于堆叠设备j来说,属于除本堆叠设备j之外的其他堆叠设备的主控板组播表项(即,堆叠设备j中设置的MCb’_i_1与堆叠设备i中设置的MCb’_i_1是不同的),因而MCb’_i_1的出端口掩码中包含主控板j的CPU端口信息、以及主控板j上与堆叠口j_1所在接口板的互连端口信息,从而主控板j可通过MCb’_i_1将接收到的广播报文上报至本板CPU、并复制后下发至堆叠口j_1所在接口板;再后,堆叠口j_1所在接口板依据接收到的广播报文中携带的index_b_i_1,仍使用匹配到的与之对应的属于堆叠设备i中堆叠口i_1的接口板组播表项MCb_i_1,由于堆叠设备j中设置的MCb_i_1对于堆叠设备j来说,属于除本堆叠设备j之外的其他堆叠设备的接口板组播表项,因而MCb_i_1的出端口掩码中本堆叠设备j的堆叠口j_1的信息,从而堆叠口j_1所在接口板主控板i可通过MCb_i_1将接收自主控板j的广播报文经堆叠口j_1转发。
需要说明的是,对于只包含堆叠板(即设有堆叠口的接口板)、且两侧堆叠口位于同一堆叠板的堆叠设备来说,可以不设置上述2N个用于广播方式的主控板组播表项,而是采用现有任意方式实现主控板下发广播报文、上报广播报文。
以上,是对本实施例中堆叠系统的说明。下面,再对本实施例中堆叠系统的报文转发方法进行详细说明。
对于逐跳方式,本实施例中堆叠系统的报文转发方法,首先需要为每台堆叠设备针对本设备的每个堆叠口分别设置一个用于逐跳方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将逐跳报文通过本设备该堆叠口发出。此外,还需要为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的逐跳报文上报至本设备主控板。
参见图1a,每台堆叠设备作为源设备或中转设备发送逐跳报文时,包括如下步骤:
步骤101a,本设备主控板上的CPU在逐跳报文中添加应作为该逐跳报文出端口的本设备堆叠口所对应的逐跳索引;
步骤102a,本设备主控板依据逐跳报文中携带的逐跳索引,使用本设备中对应堆叠口的主控板组播表项,将逐跳报文下发至对应的堆叠口所在接口板。
本步骤中,由于本设备中设置的本设备对应堆叠口的主控板组播表项的端口掩码中,可以包含有主控板上与该堆叠口所在接口板的互连端口信息,因而利用该互连端口信息,逐跳报文即可下发至该堆叠口所在接口板。
实际应用中,如果本设备中的两侧堆叠口位于同一接口板、且本设备中仅具有该接口板,则本实施例可以不设置上述主控板组播表项,那么此时,本步骤中即可按照现有任意一种方式下发逐跳报文。
步骤103a,对应堆叠口所在接口板依据逐跳报文中的逐跳索引,使用本设备中该堆叠口对应的接口板组播表项,将该逐跳报文通过该堆叠口转发。
本步骤中,由于本设备中设置的本设备对应堆叠口的接口板组播表项的端口掩码中,可以包含有本设备该堆叠口的信息,因而利用该堆叠口的信息,逐跳报文即可通过该堆叠口转发。
至此,上述流程结束。
参见图1b,每台堆叠设备作为中转设备接收逐跳报文时,包括如下步骤:
步骤101b,本设备中接收逐跳报文的堆叠口所在接口板,依据该逐跳报文中其他设备堆叠口对应的逐跳索引,使用对应接口板组播表项将该逐跳报文上报本设备主控板。
本步骤中,由于本设备中设置的其它对应堆叠口的接口板组播表项的端口掩码中,可以包含有本设备接口板上与主控板的互连端口信息,因而利用该互连端口信息,逐跳报文即可上报至本设备主控板。
步骤102b,本设备中的主控板依据接收的逐跳报文中其他设备堆叠口对应的逐跳索引,使用对应主控板组播表项将该逐跳报文上报至本板CPU。
本步骤中,由于本设备中设置的其它对应堆叠口的主控板组播表项的端口掩码中,可以包含有主控板上CPU端口信息,因而利用该CPU端口信息,逐跳报文即可上报至本板CPU。
实际应用中,如果本设备中的两侧堆叠口位于同一接口板、且本设备中仅具有该接口板,则本实施例可以不设置上述主控板组播表项,那么此时,本步骤中即可按照现有任意一种方式上报逐跳报文。
步骤103b,本设备CPU对本设备是否为逐跳报文的最后一跳进行判断,如果是则按照现有方式执行相应处理,否则按照如图1a所示方式继续转发。
至此,上述流程结束。
针对广播方式,本实施例中堆叠系统的报文转发方法,首先需要为每台堆叠设备针对本设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将广播报文通过本设备该堆叠口发出。此外,还需要为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的广播报文上报至本设备主控板、并通过本设备中除接收该逐跳报文堆叠口之外的另一堆叠口转发。
参见图2a,每台堆叠设备在作为源设备发送广播报文时,包括如下步骤:
步骤201a,本设备主控板上的CPU在广播报文中添加应作为该广播报文出端口的本设备堆叠口所对应的广播索引。
步骤202a,本设备主控板依据广播报文中携带的广播索引,使用本设备对应堆叠口的主控板组播表项,将广播报文下发至该堆叠口所在接口板。
本步骤中,由于本设备对应堆叠口的主控板组播表项的出端口掩码中,可以包含主控板上与对应堆叠口所在接口板的互连端口信息,因而利用该互连端口信息,即可将广播报文正确下发至对应堆叠口所在接口板。
实际应用中,如果本设备中的两侧堆叠口位于同一接口板、且本设备中仅具有该接口板,则本实施例可以不设置上述主控板组播表项,那么此时,本步骤中即可按照现有任意一种方式下发广播报文。
步骤203a,对应堆叠口所在接口板依据广播报文中携带的广播索引,使用本设备该对应堆叠口对应的接口板组播表项,将该广播报文通过该对应堆叠口转发。
本步骤中,由于本设备对应堆叠口的接口板组播表项的出端口掩码中,可以包含对应堆叠口的信息,因而利用该对应堆叠口信息,即可将广播报文正确地从该对应堆叠口转发。
至此,上述流程结束。
参见图2b,以同一堆叠设备中的两侧堆叠口位于同一接口板为例,每台堆叠设备在作为中转设备接收并转发广播报文时,包括如下步骤:
步骤201b,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中携带的其他设备堆叠口对应的广播索引,使用对应接口板组播表项将该广播报文上报至本设备主控板、同时复制转发至本设备另一堆叠口。
本步骤中,由于其它设备堆叠口对应的所有接口板组播表项的出端口掩码中,均包含本设备接口板上与主控板的互连端口信息、以及接口板上两侧堆叠口的信息,因而利用该互连端口信息即可将广播报文上报至本设备主控板、利用另一堆叠口的信息即可将广播报文复制后转发至该另一堆叠口(虽然其它设备堆叠口对应的所有接口板组播表项的出端口掩码中,包含有本设备两侧堆叠口的信息,但由于其中一侧堆叠口是接收广播报文的堆叠口,因而不会再从该侧堆叠口转发广播报文)。
步骤202b,本设备中的主控板,依据接收到的广播报文中携带的其它设备堆叠口对应的广播索引,使用对应主控板组播表项将该广播报文上报至本板CPU。
本步骤中,由于其它设备堆叠口对应的所有主控板组播表项的出端口掩码中,均包含本设备主控板上的CPU端口信息,因而利用该CPU端口信息即可将广播报文上报至本设备主控板上的CPU。
实际应用中,如果本设备中的两侧堆叠口位于同一接口板、且本设备中仅具有该接口板,则本实施例可以不设置上述主控板组播表项,那么此时,本步骤中即可按照现有任意一种方式上报广播报文。
至此,上述流程结束。
参见图2c,以同一堆叠设备中的两侧堆叠口位于不同接口板为例,每台堆叠设备在作为中转设备接收并转发广播报文时,包括如下步骤:
步骤201c,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中携带的其他设备堆叠口对应的广播索引,使用对应接口板组播表项将该广播报文上报至本设备主控板。
本步骤中,由于其它设备堆叠口对应的所有接口板组播表项的出端口掩码中,均包含本设备接口板上与主控板的互连端口信息、以及接口板上两侧堆叠口的信息,因而利用该互连端口信息即可将广播报文上报至本设备主控板,而由于另一堆叠口位于不同接口板,因而无法利用另一堆叠口的信息即可将广播报文复制后转发至该另一堆叠口。
步骤202c,本设备中的主控板,依据接收到的广播报文中携带的其它设备堆叠口对应的广播索引,使用对应主控板组播表项将该广播报文上报至本板CPU。
本步骤中,由于其它设备堆叠口对应的所有主控板组播表项的出端口掩码中,均包含本设备主控板上的CPU端口信息、以及该主控板上与两侧堆叠口所在接口板的互连端口信息,因而利用该CPU端口信息即可将广播报文上报至本设备主控板上的CPU、并复制下发至未接收该广播报文的另一堆叠口所在接口板(虽然其它设备堆叠口对应的所有主控板组播表项中,包含有本设备两侧堆叠口所在接口板的互连端口信息,但由于其中一侧堆叠口所在接口板的互连端口是接收广播报文的端口,因而不会再从该侧堆叠口所在接口板的互连端口转发广播报文)。
步骤203c,本设备中另一侧堆叠口所在接口板,依据接收到的广播报文中携带的其它堆叠口对应的广播索引,使用对应接口板组播表项将该广播报文通过该接口板所在的另一侧堆叠口转发。
本步骤中,由于本设备对应堆叠口的接口板组播表项的出端口掩码中,可以包含本设备两侧堆叠口的信息,因而利用其中的另一侧堆叠口信息,即可将广播报文正确地从该另一侧堆叠口转发。
至此,上述流程结束。
以下,再结合两个实例,对本实施例中的堆叠系统以及堆叠系统的报文转发方法进行进一步说明。
图3为本发明实施例中以逐跳方式转发报文的实例示意图。如图3所示,以逐跳方式为例,假设有堆叠设备1、堆叠设备2、堆叠设备3,则:
堆叠设备1中设置有6个接口板组播表项、6个主控板组播表项、以及6个逐跳索引;其中,接口板组播表项MCa_1_1、主控板组播表项MCa’_1_1、以及逐跳索引Index_a_1_1,对应本设备堆叠口1_1;接口板组播表项MCa_1_2、主控板组播表项MCa’_1_2、以及逐跳索引Index_a_1_2,对应本设备堆叠口1_2;
堆叠设备2中设置6个接口板组播表项、6个主控板组播表项、以及6个逐跳索引;其中,接口板组播表项MCa_2_1、主控板组播表项MCa’_2_1、以及逐跳索引Index_a_2_1,对应本设备堆叠口2_1;接口板组播表项MCa_2_2、主控板组播表项MCa’_2_2、以及逐跳索引Index_a_2_2对应,对应本设备堆叠口2_2;
堆叠设备3中设置6个接口板组播表项、6个主控板组播表项、以及6个逐跳索引;其中,接口板组播表项MCa_3_1、主控板组播表项MCa’_3_1、以及逐跳索引Index_a_3_1,对应本设备堆叠口3_1;接口板组播表项MCa_3_2、主控板组播表项MCa’_3_2、以及逐跳索引Index_a_3_2,对应本设备堆叠口3_2。
堆叠设备1作为逐跳报文的源设备发送报文,由堆叠设备1的CPU先在逐跳报文中设置应作为该逐跳报文出端口的本设备堆叠口1_2对应的Index_a_1_2,然后将该逐跳报文下发至本设备的主控板;
堆叠设备1的主控板依据Index_a_1_2查找到对应堆叠口1_2的MCa’_1_2,由于本设备中设置的MCa’_1_2中出方向的出端口掩码包含了本设备堆叠口1_2所在接口板的互连端口信息,因而堆叠设备1的主控板使用本设备中设置的MCa’_1_2将逐跳报文转发至本设备堆叠口1_2所在接口板;
堆叠设备1中堆叠口1_2所在接口板依据Index_a_1_2,查找到对应堆叠口1_2的MCa_1_2,由于MCa_1_2中出方向的出端口掩码包含了本设备堆叠口1_2的信息,因而堆叠设备1堆叠口1_2所在接口板将该逐跳报文通过堆叠口1_2发送至堆叠口1_2所在侧的相邻堆叠设备2的异侧堆叠口2_1;
堆叠设备2中堆叠口2_1所在接口板根据逐跳报文中携带的Index_a_1_2,查找匹配到MCa_1_2,由于MCa_1_2对于堆叠设备2来说属于其它堆叠设备对应堆叠口的接口板组播表项(堆叠设备2中设置的MCa_1_2与堆叠设备1中设置的MCa_1_2是不同的),因而其出端口掩码包含了堆叠设备2中堆叠口2_1所在接口板上与主控板的互连端口信息,因而堆叠设备2中堆叠口2_1所在接口板使用MCa_1_2将逐跳报文上报至本设备的主控板;
堆叠设备2的主控板依据Index_a_1_2查找到对应堆叠口1_2的MCa’_1_2,由于MCa’_1_2对于堆叠设备2来说属于其它堆叠设备对应堆叠口的主控板组播表项(堆叠设备2中设置的MCa’_1_2与堆叠设备1中设置的MCa’_1_2是不同的),因而其出端口掩码包含了堆叠设备2的主控板CPU端口信息,堆叠设备2的主控板使用MCa’_1_2将逐跳报文转发至本板CPU;
堆叠设备2的CPU判断该逐跳报文的最后一跳不是本设备,因而在该逐跳报文中设置应作为该逐跳报文出端口的本设备中与堆叠口1_2同侧的堆叠口2_2对应的Index_a_2_2,然后将该逐跳报文下发至本设备的主控板;
堆叠设备2的主控板依据Index_a_2_2查找到本设备对应堆叠口2_2的MCa’_2_2,由于MCa’_2_2的出端口掩码包含了本设备主控板上与堆叠口2_2所在接口板的互连端口信息,因而堆叠设备2的主控板使用MCa’_2_2将逐跳报文转发至堆叠口2_2所在接口板;
堆叠设备2中堆叠口2_2所在接口板依据Index_a_2_2,查找到本设备对应堆叠口2_2的MCa_2_2,由于MCa_2_2的出端口掩码包含了堆叠口2_2的信息,因而堆叠设备2堆叠口2_2所在接口板将该逐跳报文通过堆叠口2_2发送至堆叠口2_2所在侧的相邻堆叠设备3的异侧堆叠口3_1;
堆叠设备3中堆叠口3_1所在接口板根据逐跳报文中携带的Index_a_2_2,查找匹配到MCa_2_2,由于MCa_2_2对于堆叠设备3来说属于其它堆叠设备对应堆叠口的接口板组播表项(堆叠设备3中设置的MCa_2_2与堆叠设备2中设置的MCa_2_2是不同的),因而其的出端口掩码包含了堆叠设备3中的主控板互连端口信息,堆叠设备3中堆叠口3_1所在接口板使用MCa_2_2将逐跳报文上报至本设备的主控板;
堆叠设备3的主控板依据Index_a_2_2查找到对应堆叠口2_2的MCa’_2_2,由于MCa’_2_2对于堆叠设备3来说属于其它堆叠设备对应堆叠口的主控板组播表项(堆叠设备3中设置的MCa’_2_2与堆叠设备2中设置的MCa’_2_2是不同的),因而其出端口掩码包含了堆叠设备3的主控板CPU端口信息,堆叠设备3的主控板使用MCa’_2_2将逐跳报文转发至本板CPU;
堆叠设备3的CPU判断该逐跳报文的最后一跳是本设备,不再继续发送该逐跳报文。
上述采用逐跳方式的实例中,逐跳报文中携带的逐跳索引index_a在每一跳均发生变化,且每一跳接收逐跳报文时均使用上一跳的逐跳索引index_a选择接口板组播表项和主控板组播表项。
图4为本发明实施例中以广播方式转发报文的实例示意图。如图4所示,以广播方式为例,假设有堆叠设备1、堆叠设备2、堆叠设备3,则:
堆叠设备1中设置有6个接口板组播表项、6个主控板组播表项、以及6个广播索引;其中,接口板组播表项MCb_1_1、主控板组播表项MCb’_1_1、以及广播索引Index_b_1_1,对应本设备堆叠口1_1;接口板组播表项MCb_1_2、主控板组播表项MCb’_1_2、以及广播索引Index_b_1_2,对应本设备堆叠口1_2;
堆叠设备2中设置6个接口板组播表项、6个主控板组播表项、以及6个广播索引;其中,接口板组播表项MCb_2_1、主控板组播表项MCb’_2_1、以及广播索引Index_b_2_1,对应本设备堆叠口2_1;接口板组播表项MCb_2_2、主控板组播表项MCb’_2_2、以及广播索引Index_b_2_2对应,对应本设备堆叠口2_2;
堆叠设备3中设置6个接口板组播表项、6个主控板组播表项、以及6个广播索引;其中,接口板组播表项MCb_3_1、主控板组播表项MCb’_3_1、以及广播索引Index_b_3_1,对应本设备堆叠口3_1;接口板组播表项MCb_3_2、主控板组播表项MCb’_3_2、以及广播索引Index_b_3_2,对应本设备堆叠口3_2。
堆叠设备1作为广播报文的源设备发送报文,由堆叠设备1的CPU先在广播报文中设置应作为该广播报文出端口的本设备堆叠口1_2对应的Index_b_1_2,然后将该广播报文下发至本设备的主控板;
堆叠设备1的主控板依据Index_b_1_2查找到本设备对应堆叠口1_2的MCb’_1_2,由于MCb’_1_2的出端口掩码中包含了本设备主控板上与堆叠口1_2所在接口板的互连端口信息,因而堆叠设备1的主控板使用MCb’_1_2将广播报文转发至堆叠口1_2所在接口板;
堆叠设备1中堆叠口1_2所在接口板依据Index_b_1_2,查找到对应堆叠口1_2的MCb_1_2,由于MCb_1_2的出端口掩码中包含了堆叠口1_2的信息,因而堆叠设备1堆叠口1_2所在接口板将该广播报文通过堆叠口1_2发送至堆叠口1_2所在侧的相邻堆叠设备2的异侧堆叠口2_1;
堆叠设备2中堆叠口2_1所在接口板根据广播报文中携带的Index_b_1_2查找匹配到MCb_1_2,由于MCb_1_2对于堆叠设备2来说属于其它堆叠设备对应堆叠口的接口板组播表项(堆叠设备2中设置的MCb_1_2与堆叠设备1中设置的MCb_1_2是不同的),因而其的出端口掩码包含了堆叠设备2中堆叠口2_1所在接口板与主控板的互连端口信息、以及本设备堆叠口2_2的信息,因而堆叠设备2中堆叠口2_1所在接口板使用MCb_1_2将广播报文上报至本设备的主控板、并复制转发至同一接口板上的另一侧堆叠口2_2;此后,由本设备主控板依据MCb’_1_2将广播报文转发至本板CPU(堆叠设备2中设置的MCb’_1_2与堆叠设备1中设置的MCb’_1_2是不同的),堆叠口2_2将广播报文转发至其所在侧的相邻堆叠设备3的异侧堆叠口3_1;
堆叠设备3中堆叠口3_1所在接口板根据广播报文中携带的Index_b_1_2,查找匹配到MCb_1_2,由于MCb_1_2对于堆叠设备3来说属于其它堆叠设备对应堆叠口的接口板组播表项(堆叠设备3中设置的MCb_1_2与堆叠设备1、堆叠设备2中设置的MCb_1_2均不相同),因而其出端口掩码包含了堆叠设备3中堆叠口3_1所在接口板上与主控板的互连端口信息、以及堆叠设备3中与堆叠口1_2的同侧堆叠口3_2的信息,因而堆叠设备3中堆叠口3_1所在接口板使用MCb_1_2将广播报文上报至本设备的主控板,但由于堆叠口3_2与堆叠口3_1位于不同接口板,因而不再复制转发该广播报文;此后,堆叠设备3的主控板依据MCb’_1_2(堆叠设备3中设置的MCb’_1_2与堆叠设备1、堆叠设备2中设置的MCb’_1_2均不相同)将广播报文转发至本板CPU,同时,由于堆叠设备3中设置的MCb’_1_2的出端口掩码中还包含有主控板上与堆叠口3_2所在接口板的互连端口信息,因而堆叠设备2中主控板还将该广播报文复制后转发至堆叠口3_2所在接口板;
堆叠设备3中的堆叠口3_2所在接口板依据广播报文中的Index_b_1_2,查找到对应堆叠口1_2的MCb_1_2,由于堆叠设备3中设置的MCb_1_2的出端口掩码中包含有本设备堆叠口3_2的信息(堆叠设备3中设置的MCb_1_2与堆叠设备1、堆叠设备2中设置的MCb_1_2均不相同),因而该接口板将该广播报文通过堆叠口3_2发送至堆叠口3_2所在侧的下一个相邻堆叠设备(如图2中省略号所示)。
上述采用广播方式的实例中,广播报文的广播索引index_b不会发生变化。
可见,本实施例中的堆叠系统和堆叠系统的报文转发方法不但能够解决无法在接口板区分正确堆叠口的问题,还能够使得堆叠系统支持较大数量的堆叠设备。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。

Claims (14)

1、一种堆叠系统,该堆叠系统的每台堆叠设备中,包括具有CPU的主控板、以及具有本设备堆叠口的接口板;
其特征在于,
每台堆叠设备中,针对本设备的每个堆叠口分别设置有一个用于逐跳方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将逐跳报文通过本设备该堆叠口发出;
每台堆叠设备在发送逐跳报文时,由本设备主控板上的CPU在逐跳报文中添加应作为该逐跳报文出端口的本设备堆叠口所对应的索引,该堆叠口所在接口板依据逐跳报文中的索引,使用本设备中该堆叠口对应的接口板组播表项将该逐跳报文通过该堆叠口转发;
每台堆叠设备中,还针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的逐跳报文上报至本设备主控板;
每台堆叠设备在接收逐跳报文时,本设备中接收逐跳报文的堆叠口所在接口板,依据该逐跳报文中其他设备堆叠口对应的索引,使用对应接口板组播表项将该逐跳报文经本设备主控板上报至CPU。
2、如权利要求1所述的堆叠系统,其特征在于,
每台堆叠设备中,进一步针对本设备每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,本设备每个堆叠口对应的主控板组播表项中包含有表示该堆叠口的索引、并用于将逐跳报文发送至本设备该堆叠口所在接口板;
每台堆叠设备在发送逐跳报文时,本设备中的主控板进一步依据逐跳报文中的索引,使用本设备中对应堆叠口所对应的主控板组播表项,将该逐跳报文发送至本设备中对应堆叠口所在接口板;
每台堆叠设备中,还进一步针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,其他堆叠设备每个堆叠口对应的主控板组播表项中也包含有表示该堆叠口的索引、但用于将接收的逐跳报文上报至本板CPU;
每台堆叠设备在接收逐跳报文时,本设备中的主控板进一步依据逐跳报文中其他设备堆叠口对应的索引,使用对应主控板组播表项将该逐跳报文上报至本板CPU。
3、如权利要求2所述的堆叠系统,其特征在于,
每台堆叠设备中,本设备每个堆叠口的对应接口板组播表项的出端口掩码中,包含有该堆叠口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备该堆叠口所在接口板上与本设备主控板的互连端口信息;
每台堆叠设备中,本设备每个堆叠口的对应主控板组播表项的出端口掩码中,包含有本设备主控板与该堆叠口所在接口板的互连端口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备主控板的CPU端口信息。
4、如权利要求1至3中任一项所述的堆叠系统,其特征在于,每台堆叠设备在将逐跳报文上报至本设备中主控板上的CPU之后,CPU进一步判断本设备是否为该逐跳报文的最后一跳,如果不是,则本设备作为中转设备继续发送逐跳报文,否则,取消对该逐跳报文的继续发送。
5、一种堆叠系统,该堆叠系统中的每台堆叠设备包括:具有CPU的主控板、以及具有堆叠口的接口板;
其特征在于,
每台堆叠设备中,针对本设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将广播报文通过本设备该堆叠口发出;
每台堆叠设备在作为源设备发送广播报文时,由本设备主控板上的CPU在广播报文中添加应作为该广播报文出端口的本设备堆叠口所对应的索引,该堆叠口所在接口板依据广播报文中的索引,使用本设备中该堆叠口对应的接口板组播表项将该广播报文通过该堆叠口转发;
每台堆叠设备中,还针对其他设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的广播报文上报至本设备主控板、并通过本设备中除接收该逐跳报文堆叠口之外的另一堆叠口转发;
每台堆叠设备在作为中转设备接收并转发广播报文时,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中其他设备堆叠口对应的索引,使用对应接口板组播表项将该广播报文经本设备主控板上报至CPU、同时通过本设备另一堆叠口转发。
6、如权利要求5所述的堆叠系统,其特征在于,每台堆叠设备中,进一步针对本设备每个堆叠口分别设置一个用于广播方式的主控板组播表项,本设备每个堆叠口对应的主控板组播表项中包含有表示该堆叠口的索引、并用于将广播报文通过本设备该堆叠口所在接口板;
每台堆叠设备在作为源设备发送广播报文时,本设备中的主控板依据该广播报文中的索引,使用本设备中对应堆叠口所对应的主控板组播表项,将该广播报文发送至本设备中对应堆叠口所在接口板;
每台堆叠设备中,还进一步针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,其他堆叠设备每个堆叠口对应的主控板组播表项中也包含有表示该堆叠口的索引、但用于将接收的广播报文上报至本板CPU;
每台堆叠设备在作为中转设备接收并转发广播报文时,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中其他设备堆叠口对应的索引使用对应主控板组播表项,将该广播报文上报本板CPU。
7、如权利要求6所述的堆叠系统,其特征在于,
每台堆叠设备中,本设备每侧堆叠口的对应接口板组播表项的出端口掩码中,包含有该堆叠口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备该堆叠口所在接口板上与本设备主控板的互连端口信息、以及本设备中的两侧堆叠口信息;
每台堆叠设备中,本设备每侧堆叠口的对应主控板组播表项的出端口掩码中,包含有本设备主控板与该堆叠口所在接口板的互连端口信息;如果该堆叠设备两侧堆叠口位于同一接口板,则其他设备各堆叠口的对应接口板组播表项的出端口掩码中均包含有本设备主控板的CPU端口信息,如果该堆叠设备两侧堆叠口位于不同接口板,则其他设备各堆叠口的对应接口板组播表项的出端口掩码中均包含有本设备主控板的CPU端口信息、以及本设备主控板上与两侧堆叠口所在接口板的互联端口信息。
8、一种堆叠系统的报文转发方法,应用该报文转发方法的堆叠系统中,每台堆叠设备包括具有CPU的主控板、以及具有本设备堆叠口的接口板;
其特征在于,
为每台堆叠设备针对本设备的每个堆叠口分别设置一个用于逐跳方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将逐跳报文通过本设备该堆叠口发出;
在每台堆叠设备发送逐跳报文时,由本设备主控板上的CPU在逐跳报文中添加应作为该逐跳报文出端口的本设备堆叠口所对应的索引,该堆叠口所在接口板依据逐跳报文中的索引,使用本设备中该堆叠口对应的接口板组播表项将该逐跳报文通过该堆叠口转发;
还为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的逐跳报文上报至本设备主控板;
在每台堆叠设备接收逐跳报文时,本设备中接收逐跳报文的堆叠口所在接口板,依据该逐跳报文中其他设备堆叠口对应的索引,使用对应接口板组播表项将该逐跳报文经本设备主控板上报至CPU。
9、如权利要求8所述的报文转发方法,其特征在于,
进一步为每台堆叠设备针对本设备每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,本设备每个堆叠口对应的主控板组播表项中包含有表示该堆叠口的索引、并用于将逐跳报文发送至本设备该堆叠口所在接口板;
在每台堆叠设备作为源设备或中转设备发送逐跳报文时,进一步由本设备中的主控板依据逐跳报文中的索引,使用本设备中对应堆叠口所对应的主控板组播表项,将该逐跳报文发送至本设备中对应堆叠口所在接口板;
还进一步为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,其他堆叠设备每个堆叠口对应的主控板组播表项中也包含有表示该堆叠口的索引、但用于将接收的逐跳报文上报至本板CPU;
在每台堆叠设备接收逐跳报文时,进一步由本设备中的主控板依据逐跳报文中其他设备堆叠口对应的索引,使用对应主控板组播表项将该逐跳报文上报至本板CPU。
10、如权利要求9所述的报文转发方法,其特征在于,
为每台堆叠设备设置的所有接口板组播表项中,本设备每侧堆叠口的对应接口板组播表项的出端口掩码中,包含有该堆叠口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备该堆叠口所在接口板上与本设备主控板的互连端口信息;
为每台堆叠设备设置的所有主控板组播表项中,本设备每侧堆叠口的对应主控板组播表项的出端口掩码中,包含有本设备主控板与该堆叠口所在接口板的互连端口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备主控板的CPU端口信息。
11、如权利要求8至10中任一项所述的报文转发方法,其特征在于,该报文转发方法在每台堆叠设备在将逐跳报文上报至本设备中主控板上的CPU之后,进一步由CPU判断本设备是否为该逐跳报文的最后一跳,如果不是,则本设备作为中转设备继续发送逐跳报文,否则,取消对该逐跳报文的继续发送。
12、一种堆叠系统的报文转发方法,应用该报文转发方法的堆叠系统中,每台堆叠设备包括具有CPU的主控板、以及具有本设备堆叠口的接口板;
其特征在于,
为每台堆叠设备针对本设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,本设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、并用于将广播报文通过本设备该堆叠口发出;
在每台堆叠设备作为源设备发送广播报文时,由本设备主控板上的CPU在广播报文中添加应作为该广播报文出端口的本设备堆叠口所对应的索引,该堆叠口所在接口板依据广播报文中的索引,使用本设备中该堆叠口对应的接口板组播表项将该广播报文通过该堆叠口转发;
还为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于广播方式的对应接口板组播表项,其他堆叠设备每个堆叠口对应的接口板组播表项中包含有表示该堆叠口的索引、但用于将接收的广播报文上报至本设备主控板、并通过本设备中除接收该逐跳报文堆叠口之外的另一堆叠口转发;
在每台堆叠设备作为中转设备接收并转发广播报文时,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中其他设备堆叠口对应的索引,使用对应接口板组播表项将该广播报文经本设备主控板上报至CPU、同时通过本设备另一堆叠口转发。
13、如权利要求12所述的报文转发方法,其特征在于,
进一步为每台堆叠设备针对本设备每个堆叠口分别设置一个用于广播方式的主控板组播表项,本设备每个堆叠口对应的主控板组播表项中包含有表示该堆叠口的索引、并用于将广播报文通过本设备该堆叠口所在接口板;
在每台堆叠设备作为源设备发送广播报文时,本设备中的主控板依据该广播报文中的索引,使用本设备中对应堆叠口所对应的主控板组播表项,将该广播报文发送至本设备中对应堆叠口所在接口板;
还进一步为每台堆叠设备针对其他设备的每个堆叠口分别设置有一个用于逐跳方式的对应主控板组播表项,其他堆叠设备每个堆叠口对应的主控板组播表项中也包含有表示该堆叠口的索引、但用于将接收的广播报文上报至本板CPU;
在每台堆叠设备作为中转设备接收并转发广播报文时,本设备中接收该广播报文的堆叠口所在接口板,依据该广播报文中其他设备堆叠口对应的索引使用对应主控板组播表项,将该广播报文上报本板CPU。
14、如权利要求13所述的报文转发方法,其特征在于,
为每台堆叠设备设置的所有接口板组播表项中,本设备每侧堆叠口的对应接口板组播表项的出端口掩码中,包含有该堆叠口信息;其他设备各堆叠口的对应接口板组播表项的出端口掩码中,均包含有本设备该堆叠口所在接口板上与本设备主控板的互连端口信息、以及本设备中的两侧堆叠口信息;
为每台堆叠设备设置的所有主控板组播表项中,本设备每侧堆叠口的对应主控板组播表项的出端口掩码中,包含有本设备主控板与该堆叠口所在接口板的互连端口信息;如果该堆叠设备两侧堆叠口位于同一接口板,则其他设备各堆叠口的对应接口板组播表项的出端口掩码中均包含有本设备主控板的CPU端口信息,如果该堆叠设备两侧堆叠口位于不同接口板,则其他设备各堆叠口的对应接口板组播表项的出端口掩码中均包含有本设备主控板的CPU端口信息、以及本设备主控板上与两侧堆叠口所在接口板的互联端口信息。
CN2009100889359A 2009-07-14 2009-07-14 堆叠系统及其报文转发方法 Active CN101599900B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100889359A CN101599900B (zh) 2009-07-14 2009-07-14 堆叠系统及其报文转发方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100889359A CN101599900B (zh) 2009-07-14 2009-07-14 堆叠系统及其报文转发方法

Publications (2)

Publication Number Publication Date
CN101599900A true CN101599900A (zh) 2009-12-09
CN101599900B CN101599900B (zh) 2012-04-25

Family

ID=41421158

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100889359A Active CN101599900B (zh) 2009-07-14 2009-07-14 堆叠系统及其报文转发方法

Country Status (1)

Country Link
CN (1) CN101599900B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102118294A (zh) * 2009-12-31 2011-07-06 杭州华三通信技术有限公司 堆叠环形拓扑下的负荷分担方法及设备
CN106161288A (zh) * 2015-04-17 2016-11-23 杭州华三通信技术有限公司 实现多台设备堆叠的方法和设备
CN104935509B (zh) * 2015-04-30 2018-07-20 新华三技术有限公司 一种纵向堆叠系统中防止产生环路的方法和装置
CN109743254A (zh) * 2018-12-25 2019-05-10 新华三技术有限公司 报文转发方法、pe设备及堆叠系统
CN110061922A (zh) * 2019-04-30 2019-07-26 新华三技术有限公司 报文转发方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100589451C (zh) * 2007-08-28 2010-02-10 中兴通讯股份有限公司 一种用于以太网交换机堆叠系统管理的方法
CN101345708B (zh) * 2008-08-25 2010-12-22 杭州华三通信技术有限公司 一种生成转发表的方法和装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102118294A (zh) * 2009-12-31 2011-07-06 杭州华三通信技术有限公司 堆叠环形拓扑下的负荷分担方法及设备
CN102118294B (zh) * 2009-12-31 2013-06-26 杭州华三通信技术有限公司 堆叠环形拓扑下的负荷分担方法及设备
CN106161288A (zh) * 2015-04-17 2016-11-23 杭州华三通信技术有限公司 实现多台设备堆叠的方法和设备
CN106161288B (zh) * 2015-04-17 2019-08-16 新华三技术有限公司 实现多台设备堆叠的方法和设备
US10574625B2 (en) 2015-04-17 2020-02-25 Hewlett Packard Enterprise Development Lp Generating system port identity
CN104935509B (zh) * 2015-04-30 2018-07-20 新华三技术有限公司 一种纵向堆叠系统中防止产生环路的方法和装置
CN109743254A (zh) * 2018-12-25 2019-05-10 新华三技术有限公司 报文转发方法、pe设备及堆叠系统
CN110061922A (zh) * 2019-04-30 2019-07-26 新华三技术有限公司 报文转发方法和装置
CN110061922B (zh) * 2019-04-30 2021-06-11 新华三技术有限公司 报文转发方法和装置

Also Published As

Publication number Publication date
CN101599900B (zh) 2012-04-25

Similar Documents

Publication Publication Date Title
CN101599900B (zh) 堆叠系统及其报文转发方法
CN101594304B (zh) 防止堆叠系统产生环路的方法和堆叠系统中的成员设备
CN101442484B (zh) 一种检测堆叠多Active的方法、系统及设备
CN103780480B (zh) 报文转发方法和设备
CN1697354B (zh) 用组播和单播协议可靠传输数据的方法及接收数据的主机
CN101803288B (zh) 用于提供意外堆栈结合保护的方法、系统和计算机程序产品
CN101030966A (zh) 一种双向转发检测会话建立方法
AU2002334299A1 (en) A method for transmitting application packet data
CN102347867A (zh) 一种堆叠分裂检测的处理方法和设备
CN103281247A (zh) 一种数据中心网络的通用路由方法及系统
CN101964719B (zh) 基于主控板倒换的数据处理方法、线卡及主控板
CN103532863B (zh) 一种实现软件堆叠的方法和装置
CN102201999A (zh) 一种实现组播业务负荷分担的方法和系统
CN100553189C (zh) 基于缓冲管理的多链路冗余的实现方法
CN101166107A (zh) Ip组播业务系统、切换设备和其所用的组选择传输方法
CN102158383B (zh) 一种e1双向环网络的数据传输方法、装置及系统
CN101335716B (zh) 一种堆叠交换机分离或复合的方法及设备
CN103227724A (zh) 一种在vrrp网络环境下实现pim组播的方法及装置
CN110391981B (zh) 为网状网络中的网关节点建立源路由树的设备、方法及介质
CN104935509A (zh) 一种纵向堆叠系统中防止产生环路的方法和装置
CN101562506A (zh) 数据传输方法
CN108737274A (zh) 一种报文转发方法及装置
CN102006231B (zh) 建立数据业务网元智能路由的方法、装置及数据业务传输设备
CN102082696B (zh) 一种冗余网络系统以及基于该系统的报文发送方法
CN101668235A (zh) 一种t-mpls网络中实现m:n保护的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.

CP03 Change of name, title or address