发明内容
有鉴于此,本发明提供了一种双主控交换设备,该双主控交换设备能够有效解决交换设备内硬件资源有限的问题。
一种双主控交换设备,包括两个主控板和至少一个线卡,所述主控板包括处理单元和交换单元;
所述交换单元通过通道端口与本板处理单元相连,用于接收本板处理单元发送的报文以及向本板处理单元转发报文;
所述交换单元通过连接端口与对端主控板交换单元相连,用于接收对端交换单元发送的报文以及向对端交换单元转发报文;
所述交换单元通过线卡端口与线卡相连,用于接收线卡发送的报文以及向线卡转发报文。
本发明提供了一种下发转发表项的方法及装置,应用本发明所提供的方法及装置能够实现主控板之间的单播通信。
一种下发转发表项的方法,应用于如前所述的双主控交换设备,该方法包括:
为主控板交换单元的连接端口、和本板处理单元上用于与交换单元连接的通道端口,配置相同的介质访问控制MAC地址,根据所配置的MAC地址对应对端交换单元的连接端口建立转发表项,下发至对端交换单元,并对应本板交换单元的通道端口建立转发表项,下发至本板交换单元;
根据为线卡配置的MAC地址,对应交换单元上用于与所述线卡连接的线卡端口建立转发表项,下发至所述交换单元。
一种下发转发表项的装置,应用于如前所述的双主控交换设备,该装置包括控制单元和下发单元;
所述控制单元,用于为主控板交换单元的连接端口、和本板处理单元上用于与交换单元连接的通道端口,配置相同的介质访问控制MAC地址,根据所配置的MAC地址对应对端交换单元的连接端口建立转发表项,通过所述下发单元下发至对端交换单元;并对应本板交换单元的通道端口建立转发表项,通过所述下发单元下发至本板交换单元;根据为线卡配置的MAC地址,对应交换单元上用于与所述线卡连接的线卡端口建立转发表项,下发至所述交换单元;
所述下发单元,用于下发所述控制单元建立的转发表项。
另外,本发明还提供了一种下发转发表项的方法及装置,应用本发明所提供的方法及装置能够实现主控板之间的组播通信。
一种下发转发表项的方法,应用于如前所述的双主控交换设备,该方法包括:
为第一主控板交换单元内包含连接端口的第一组播组对应第一通道,和第二主控板交换单元内仅包含第一通道端口的第二组播组,配置相同的组播介质访问控制MAC地址;根据所述组播MAC地址对应第一组播组建立组播转发表项,下发至第一主控板交换单元;根据所述组播MAC地址对应第二组播组建立组播转发表项,下发至第二主控板交换单元;
为第一和第二交换单元中端口成员相同且不包括连接端口的组播组配置相同的组播MAC地址,并建立组播转发表项,下发至第一和第二交换单元。
14、一种下发转发表项的装置,应用于如前所述的双主控交换设备,该装置包括控制单元和下发单元:
所述控制单元,用于为第一主控板交换单元内包含连接端口的第一组播组对应第一通道,和第二主控板交换单元内仅包含第一通道端口的第二组播组,配置相同的组播介质访问控制MAC地址;根据所述组播MAC地址对应第一组播组建立组播转发表项,通过所述下发单元下发至第一主控板交换单元;根据所述组播MAC地址对应第二组播组建立组播转发表项,通过所述下发单元下发至第二主控板交换单元;并为第一和第二交换单元中端口成员相同且不包括连接端口的组播组配置相同的组播MAC地址,建立组播转发表项,通过所述下发单元下发至第一主控板交换单元和第二主控板交换单元;
所述下发单元,用于下发所述控制单元建立的组播转发表项。
本发明所提供的双主控交换设备,通过将具有交换功能的交换单元置于主控板内,解决了现有双主控交换设备硬件资源的有限的问题。不仅如此,本发明的双主控交换设备,能够支持处理单元和交换单元之间存在多条通道的情况下,为区分通道优先级提供基础,可扩展性强。
另外,本发明还提供了一种具体的下发转发表项的方法及装置,通过为主控板内交换单元下发用于单播通信的转发表项,以及用于组播通信的转发表项,实现了交换单元的转发功能。同时,本发明针对组播通信所提供的下发转发表项的方法及装置,能够防止了两个交换单元之间的组播震荡,有利于实现了主控板之间的组播通信。
具体实施方式
参见图2,图2本发明技术方案所提供的双主控交换设备的结构图。该双主控板交换设备包括两个主控板和至少一个线卡。其中,主控板包括处理单元和交换单元。所述交换单元通过通道端口与本板处理单元相连,用于接收本板处理单元发送的报文以及向本板处理单元转发报文;所述交换单元通过连接端口与对端主控板交换单元相连,用于接收对端交换单元发送的报文以及向对端交换单元转发报文;所述交换单元通过线卡端口与线卡相连,用于接收线卡发送的报文以及向线卡转发报文。这里,需要注意的是,上述描述中所使用的通道端口、连接端口以及线卡端口为根据端口所处的位置命名,并不限定端口本身所具有的功能。另外,主控板内的交换单元还可以通过一个或多个通道端口与本板处理单元相连,实现交换单元与本板处理单元之间一条或多条通道。
根据图2所示的结构,不难发现,本发明技术方案所采用的主要技术手段是将具有报文转发和接收功能的交换单元置于主控板内部。这样,在主控板需要占用更多硬件资源或者交换设备总体硬件资源降低,而无法向交换芯片提供所需的硬件资源时,主控板就可以依靠内置的交换单元来实现与对端主控板以及线卡的交互。
根据图2,交换单元中的端口可以分成三类,包括:用于与对端交换单元进行连接的连接端口,如图2中的X3和Y3端口;用于与本板处理单元连接的通道端口,如X1、X2、Y1和Y2端口,图2中列举了两个通道的情况;以及,用于与线卡连接的线卡端口,如X4~Xn,Y4~Yn端口。这里,为了区别处理单元和交换单元上的通道端口,将位于处理单元上用于实现上述通道的端口称为处理单元的通道端口,如X1’端口;将位于交换单元上用于实现上述通道的端口称为交换单元的通道端口,如X1端口。
为了实现本发明双主控交换设备内主控板之间、主控板与线卡之间的交互,本发明还具体的提供了下发转发表项的方法及装置,使得交换单元能够根据下发的转发表项,正常转发报文。
在数据通信技术中,包括单播通信和组播通信。其中,广播是组播的一种特例。对于双主控交换设备中主控板之间、以及主控板与线卡之间的交互,同样存在单播和组播这两种方式。以下,针对主控板之间的单播通信和组播通信分别进行介绍。
首先,针对双主控交换设备内主控板之间、主控板与线卡之间的单播交互,列举下发转发表项的实施例。
针对单播通信,下发转发表项的流程主要包括:为主控板交换单元的连接端口、和本板处理单元上用于与交换单元连接的通道端口,配置相同的介质访问控制MAC地址,根据所配置的MAC地址对应对端交换单元的连接端口建立转发表项,下发至对端交换单元,并对应本板交换单元的通道端口建立转发表项,下发至本板交换单元;根据为线卡配置的MAC地址,对应交换单元上用于与所述线卡连接的线卡端口建立转发表项,下发至所述交换单元。
其中,为主控板交换单元的连接端口和本板处理单元的通道端口配置相同的MAC地址:既可以是为主控板处理单元的通道端口配置MAC地址,将其配置为所在主控板交换单元上连接端口的MAC地址;也可以是,根据主控板内处理单元和交换单元之间的通道数,为交换单元上的连接端口配置数目相等的MAC地址,将其分别配置为本板处理单元上各通道端口的MAC地址。在图2所示的结构图中,以主控板1为例,将交换单元1连接端口X3的MAC地址配置的与处理单元1上通道端口X1’和X2’相同。也就是,在X1’的MAC地址为A,X2’的MAC地址为B,A和B则为端口X3的MAC地址。
转发表项主要描述的是出端口与目的MAC地址之间的对应关系,从本发明的上述技术方案不难看出,本发明技术方案建立了三种具体不同功能的转发表项。首先,根据为本板处理单元上通道端口配置的MAC地址,对应本板交换单元的通道端口建立的转发表项,建立主控板内交换单元至处理单元的转发关系,使得交换单元能够根据目的MAC地址将需发送至处理单元的报文,转发至处理单元处理。其次,根据为交换单元的连接端口配置的MAC地址,对应对端交换单元的连接端口建立的转发表项,建立了主控板间交换单元至对端口交换单元的转发关系,使得交换单元能够将需发送至对端处理的报文发送至对端交换单元做进一步的转发。最后,根据为线卡配置的MAC地址,对应交换单元上的线卡端口建立转发表项,建立了交换单元至线卡的转发关系,实现了交换单元至线卡的转发。
其中,交换单元连接端口的MAC地址和本板处理单元上通道端口MAC地址相同的主要原因在于,双主控板主要用于主备切换的工作环境,由主控板发送另一主控板的报文通常为控制报文,需要上送至对端主控板的处理单元处理,而不需要经过对端交换单元转发至线卡,因此将交换单元与对端实现连接的连接端口的MAC地址配置与本板处理单元相同,就是为了能够从对端交换单元接收发送至本板处理单元处理的报文。
这里,列举一个简单示例对主控板之间的单播进行说明。在图2所示的双主控交换设备中,假设主控板2中处理单元2上通道端口Y1’和Y2’的MAC地址分别为v1和v2。那么,按照本发明的技术方案,交换单元2上Y3端口的MAC地址将被配置为包括v1和v2;建立交换单元2上Y3端口的MAC地址和交换单元1上对应连接端口X3的转发表项可以如表一所示的形式。
表一
表一所示的转发表项将被配置在交换单元1上,表示只要收到目的MAC地址为v1或者v2的报文,均会通过交换单元1上的X3端口转发出去。当目的MAC地址为v1或者v2的报文通过建立的转发表项到达交换单元2时,交换单元2则会依据目的MAC地址和出端口的对应关系将报文通过对应的通道端口发送至处理单元2进行处理。由此可见,通过本发明技术方案,主控板1交换单元1能够将目的MAC地址为主控板2上处理单元2的报文发送至处理单元2进行处理,实现了主控板1到主控板2的单播通信。另外,由于主控板1和主控板2是对等的,同理,主控板2也能够实现到主控板1的单播通信。
在本发明的技术方案中,为了进一步提高本发明技术方案配置MAC地址的有效性,可以先利用HASH算法计算得到可用单播MAC地址集合U,然后在可用地址集合中执行MAC地址配置的操作。在单播通信的技术方案,总共使用的MAC地址数为p=n+c-1,其中p为所需的单播MAC地址总数,n为所使用的单个交换单元的端口总数,c为通道总数。那么,在采用HASH算法计算得到可用单播MAC地址集合U时,集合U中的MAC地址数应至少为p个。
下面参见图3,这里以图3所示的双主控交换设备为例,列举应用于单播通信的应用实例。为了更加清楚、详细的介绍主控板交换单元之间的交互,在此仅以包括一个线卡、两个通道为例进行介绍。对于主控板处理单元上通道端口、交换单元连接端口以及线卡的MAC地址配置,在本应用实例中采用逐板配置的方式,即先围绕主控板1进行配置,然后再对主控板2进行配置。
参见图4,图4为本实施例的流程图,具体介绍如下。
在步骤401中,利用HASH算法计算得到可用单播MAC地址集合U={u1,u2,u3,u4,u5}。
根据前面介绍的计数所需单播MAC地址数目的公式,在单个交换单元端口总数为4,单个处理单元和交换单元之间通道数为2的情况下,所需的单播MAC地址为5。
在步骤402中,为交换单元1所连接的对端端口配置MAC地址,建立对应转发表项,并下发至交换单元1。
具体包括以下部分:对交换单元1上通道端口X1、X2对应的对端端口X1’和X2’,即主控板1处理单元1上通道端口配置MAC地址u1、u2;并对应交换单元1上各通道端口建立转发表项,下发至交换单元1。表项的具体内容可参见表二中编号为1和2的转发表项。
对于交换单元1连接端口X3对应的对端端口Y3,即主控板2交换单元2的连接端口,由于单个处理单元与交换单元之间的通道为2,因此为Y3配置MAC地址u3和u4;并对应交换单元1连接端口X3建立转发表项,下发至交换单元1。表项的具体内容可参见表二中编号为3和4的转发表项。
对交换单元1中X4端口的对端端口,即线卡用于与交换单元1连接的端口配置MAC地址u5,并对应X4建立转发表项,下发至交换单元1。表项的具体内容可参见表二中编号为5的转发表项。
编号 |
目的MAC地址 |
出端口 |
1 |
u1 |
X1 |
2 |
u2 |
X2 |
3 |
u3 |
X3 |
4 |
u4 |
X3 |
5 |
u5 |
X4 |
表二
通过本步骤,交换单元1上已建立了所需的转发表项,发送至主控板2处理的报文,将通过交换单元1上X3转发至交换单元2,进而通过对应的发送至主控板2处理单元2处理。
在步骤403中,为交换单元2所连接的对端端口配置MAC地址,建立对应转发表项,并下发至交换单元2。
对于交换单元2上通道端口Y1和Y2的对端端口Y1’和Y2’,即主控板2处理单元2上通过端口,由于其MAC地址需要与本板交换单元连接端口Y3的MAC地址对应,才能实现交换单元1至交换单元2的连接,因此为端口Y1’和Y2’配置MAC地址u3和u4,对应交换单元2上通道端口配置建立转发表项。表项的具体内容可详见后续表三中编号为1和2的表项。
对于交换单元2连接端口Y3的对端端口X3,即主控板1交换单元1的连接端口,由于其MAC地址需要与本板处理单元上通道端口X1和X2的MAC地址对应,才能实现交换单元2至交换单元1的连接,因此为X3配置MAC地址u1和u2;对应交换单元2连接端口Y3建立转发表项,下发至交换单元2。表项的具体内容可参见表二中编号为3和4的转发表项。
对于交换单元2线卡端口Y4的对端端口,即线卡用于与主控板2通信的端口,由于两个主控板需要对线卡体现为一个主控板,因此该端口的MAC地址与步骤402中为线卡配置的MAC地址相同,即u5,并对应交换单元2线卡端口Y4建立转发表项,下发至交换单元2。表项的具体内容可见表三中编号为5的转发表项。
编号 |
目的MAC地址 |
出端口 |
1 |
u3 |
Y1 |
2 |
u4 |
Y2 |
3 |
u1 |
Y3 |
4 |
u2 |
Y3 |
5 |
u5 |
Y4 |
表三
通过本步骤,交换单元2上已建立了所需的转发表项,发送至主控板1处理的报文,就能够通过交换单元2上的端口Y3转发至交换单元1,进而发送至主控板1处理单元1处理。
下面,以主控板1需要通过通道1向主控板2发送控制报文的应用场景距离进行说明。在图3所示的结构图中,假设主控板1上由端口X1和X1’构成的通道为通道1,由端口X2和X2’构成的通道为通道2;主控板2上由端口Y1和Y1’构成的通道为通道1,由端口Y2和Y2’构成的通道为通道2。主控板1通过通道1发送报文至主控板2交换时,报文的通信过程如下所示。
首先,为待发送的报文封装以太网头,由于通道1在主控板2上对应的端口为Y1’,因此该报文的目的MAC地址设置为主控板2处理单元2上通道端口Y1’的MAC地址u3。
接着,主控板1内的处理单元1通过通道1将报文发送到交换单元1。
进而,交换单元1读取得到报文的目的MAC地址为u3,查找建立的转发表项,即表二,根据编号为3的转发表项,将报文从端口X3发送出去。
然后,交换单元2从端口Y3收到当前报文,读取得到报文的目的MAC地址为u3,查找建立的转发表项,即表三,根据编号为1的转发表项,将报文从端口Y1发送出去。
最后,处理单元2从与Y1对应的端口Y1’收到报文。这里,端口Y1’正是主控板内通道1对应的端口,因此本实施例的技术方案能够实现双主控交换设备内主控板之间的交换,并且能够选择具体使用的通道。
以下是实现主控板单播通信的另一方面,本发明提高的一种下发转发表项的装置,应用于双主控交换设备,具体情况下参见图5。
该装置包括控制单元和下发单元。其中,所述控制单元,用于为主控板交换单元的连接端口、和本板处理单元上用于与交换单元连接的通道端口,配置相同的介质访问控制MAC地址,根据所配置的MAC地址对应对端交换单元的连接端口建立转发表项,通过所述下发单元下发至对端交换单元;并对应本板交换单元的通道端口建立转发表项,通过所述下发单元下发至本板交换单元;根据为线卡配置的MAC地址,对应交换单元上用于与所述线卡连接的线卡端口建立转发表项,下发至所述交换单元。所述下发单元,用于下发所述控制单元建立的转发表项。
其中,所述控制单元,用于为主控板交换单元的连接端口和本板处理单元上的通道端口配置相同MAC地址时,为主控板处理单元的通道端口配置MAC地址,将其配置为所在主控板交换单元上连接端口的MAC地址;或者,根据主控板内处理单元和交换单元之间的通道数,为交换单元上的连接端口配置数目相等的MAC地址,将其分别配置为所在主控板处理单元上各通道端口的MAC地址。
其中,所述控制单元,利用哈希HASH算法计算得到可用单播MAC地址集合,从计算得到的单播MAC地址集合内选择MAC地址执行配置操作。
以上主要介绍的是主控板之间单播通信的情况,下面开始针对组播通信,列举下发转发表项的实施例。这里,需要注意的是在本文的介绍中如无特殊说明,MAC地址指的是单播MAC地址,转发表项表示用于单播通信的转发表项。
针对组播通信,下发转发表项的流程主要包括:为第一主控板交换单元内包含连接端口的第一组播组对应第一通道,和第二主控板交换单元内仅包含第一通道端口的第二组播组,配置相同的组播介质访问控制MAC地址;根据所述组播MAC地址对应第一组播组建立组播转发表项,下发至第一主控板交换单元;根据所述组播MAC地址对应第二组播组建立组播转发表项,下发至第二主控板交换单元;为第一和第二交换单元中端口成员相同且不包括连接端口的组播组配置相同的组播MAC地址,并建立组播转发表项,下发至第一和第二交换单元。
首先,对本发明的技术方案进行相关说明。根据交换单元所拥有的端口配置组播MAC地址时,如果为交换单元1和交换单元2内端口成员相同的组播组配置相同的组播MAC地址,在组播组内包含用于连接交换单元的连接端口时,组播报文就是在两个交换单元来回转发,出现振荡。因此对应交换单元内包含连接端口的组播组需要在两个交换单元配置不同的组播MAC地址。同时,为了实现组播报文在对端交换单元正常转发至处理单元处理,还需要对应该组播MAC地址配置专用于发送的组播转发表项,即本发明技术方案中所描述的对应第二主控板交换单元内仅包含第一通道端口的第二组播组建立的组播转发表项。
另外,由于在本发明的技术方案中,处理单元和交换单元之间可以存在多个通道,因此第一主控板交换单元发送至第二处理单元处理的报文,相当于对应了多个出端口。因此对于第一主控板上包含连接端口的组播组,需要对应不同的通道对应组播MAC地址。
其中,所述为第一主控板交换单元内包含连接端口的第一组播组对应第一通道,和第二主控板交换单元内仅包含第一通道端口的第二组播组,配置相同的组播MAC地址为:既可以是,为第一主控板交换单元内包含连接端口的第一组播组对应第一通道配置组播MAC地址,将其配置为第二主控板交换单元内仅包含第一通道端口的第二组播组的组播MAC地址;也可以是,为第二主控板交换单元内仅包含第一通道端口的第二组播组配置组播MAC地址,将其配置为第一主控板交换单元内包含连接端口的第一组播组对应第一通道的组播MAC地址。
与单播通信方式中相同,为了提高配置组播MAC地址的有效性,可以先利用HASH算法计算得到可用组播MAC地址集合;然后在集合内配置组播MAC地址。
在组播通信的技术方案,两个交换单元总共需要的组播MAC地址数为q=2n+2(n-1)×(2c-1)。其中,n为单个交换单元的端口总数,c为单个交换单元和处理单元之间的通道总数。根据上述的介绍可知,对于包含连接端口的组播组的情况下,由于会产生震荡因此在两个交换单元中不能对应相同的组播MAC地址,又由于报文发送到另一主控板后仅需要上送至处理单元处理并且区分通道,因此在单个交换单元内包含连接端口的组合数为2n-1,对于两个交换单元同时又存在c条通道的情况,两个交换单元所需的总数为2(n-1)×2c。对于不包含连接端口的组播组的情况,两个交换单元中端口成员相同的组播组可以配置相同的组播MAC地址。因此,在以单个交换单元所需总数为2n的基础上,需要加上包含连接端口组播组的情况,即加2(n-1)×2c;然后,由于2n中已经存在2n-1个包含连接端口组播组的情况,因此还需要减2n-1;这样,最后的结果就是q=2n+2(n-1)×(2c-1)。
这里,同样以图3所示的结构为例,对本发明主控板之间的组播通信进行介绍。
在详细介绍具体流程之前,首先介绍一下端口位图。端口位图是一种表示组播组端口成员的方法,每个比特位对应一个端口,以比特位是否为1表示对应端口是否被包含在该组播组内。在图3所示的结构图中,对于交换设备1端口位图包含4个比特位,从右到左,依次对应X1、X2、X3和X4。0110表示包含端口X2和X3的组播组。
在本应用实例中,将介绍包含连接端口以及不包含连接端口组播组的组播MAC地址的配置情况,以及对应建立和下发组播转发表项的情况。另外,在本应用实例中与单播通信中相同采用逐板配置的方式,即先围绕主控板1进行配置,然后再对主控板2进行配置。
参见图5,图5为本实施例的流程图,具体介绍如下。
在步骤601中,利用HASH算法计算得到可用组播MAC地址集合M={m1,...,m40}。
在这个集合中包含40个组播MAC地址,是在单个处理单元端口数为4、单个主控板通道数为2的情况下计算得到。
在步骤602中,为交换单元1中的组播组配置组播MAC地址,并下发对应的组播转发表项。具体包括以下几个方面的内容:
(1)、对于交换单元1中不包含连接端口的组播组,总共包括8组,为每个组播组从组播MAC地址集合选取组播MAC地址,并建立组播转发表项,下发至交换单元1。例如表四中编号为1~4、9~12组播转发表项。在表四中给出了交换单元1和交换单元2的转发表项,并提供的对应关系。
(2)、对于交换单元1中包含连接端口的组播组,对应两个通道总共包括16组,为每个组播组从组播MAC地址集合选取组播MAC地址,并建立组播转发表项,下发至交换单元1。例如表四中编号为5~8、13~24的组播转发表项。其中,5~8、13~16对应通道1,17~24对应通道2。
(3)、另外,对于端口成员仅为连接端口的组播组,即端口位图为0001和0010。由于从交换单元2收到的组播报文将会通过这类组播组转发至本主控板的处理单元处理,其具有与交换单元2中这类组播组相同的组播MAC地址,因此这里可以先为其配置组播MAC地址,然后再将其配置给交换单元2中对应的组播组。由于交换单元2中包括连接端口的组播组有23=8个,再对应两个通道,总共有16个,因此需要为端口位图0001和0010分别再配置8个,并建立组播转发表项,下发至交换单元1,用来对应交换单元2中包含连接端口的组播组。如表四中编号为25~40的组播转发表项,其中,编号为25~32转发表项中的组播组仅包括通道1端口;编号为33~40转发表项中的组播组仅包括通道2端口。
在步骤603中,为交换单元2中的组播组配置组播MAC地址,并下发对应的组播转发表项。具体包括以下几个方面的内容:
对于交换单元2中不包含连接端口的组播组,为其配置与交换单元1中相同的组播MAC地址,使相同的端口位图对应相同的组播MAC地址,并建立组播转发表项,下发至交换单元2。具体表项可参见表四中编号为1~4、9~12组播转发表项。
对于交换单元2中包含连接端口的组播组,由于这类组播组对应通道1的组播MAC地址,需要与交换单元1中仅包含通道1端口的组播组的MAC地址相同;对应通道2的,需要与交换单元1中仅包含通道2端口的组播组MAC地址相同,因此根据步骤602中(3)配置的MAC地址,对交换单元2中包含连接端口的组播组配置组播MAC地址,建立对应的组播转发表项,下发至交换单元2。具体情况可编号为25~32的转发表项。
另外,由于交换单元1中包含连接端口的组播组,需要通过交换单元2中的通道端口将其组播报文发送至主控板2处理单元处理,这样就需要交换单元2中仅包含有通道1端口的组播组,配置与交换单元1对应通道1组播组相同的组播MAC地址;对包含通道2端口的组播组,需要与对应通道组播组相同的MAC地址。因此,可以根据步骤602中(2)配置的MAC地址,为交换单元2中仅包含有通道1端口的组播组,和仅包含有通道2端口的组播组配置相对应的MAC地址,建立组播转发表项,下发至交换单元1。具体可见表四中编号为5~8、13~24的组播转发表项。其中,5~8、13~16对应通道1,17~24对应通道2。
表四
下面以一个具体的示例来描述主控板之间的组播通信。同样在图3所示的结构图中,假设主控板1需要将一组播报文发送至线卡1,同时需要通过通道2发送给主控板2,过程如下:
首先,为待发送报文封装以太头,参照图4,线卡1和通道2对应的组播MAC地址为m21,将该组播报文的目的MAC地址设置为m21。
接着,主控板1内的处理单元1通过通道2将报文到交换单元1。
接着,交换单元1读取得到该组播报文的目的MAC地址为m21,查找表四得到端口位图1100。此时,将报文从连接端口X3发送至交换单元2,从线卡端口X4发送至线卡1。
最后,交换单元2从收到的组播报文中获得目的MAC地址m21,查找表四得到端口位图0010。此时,根据端口位图将当前收到组播报文通过同道端口Y2发送至处理单元2。
通过这个示例可以得出,本发明的技术方案实现了双主控交换设备主控板之间的组播通信。
以下是实现主控板组播通信的另一方面,本发明提供了一种下发转发表项的装置,应用于双主控交换设备,具体情况同样可参见图5。不同的是,所述控制单元,用于为第一主控板交换单元内包含连接端口的第一组播组对应第一通道,和第二主控板交换单元内仅包含第一通道端口的第二组播组,配置相同的组播介质访问控制MAC地址;根据所述组播MAC地址对应第一组播组建立组播转发表项,通过所述下发单元下发至第一主控板交换单元;根据所述组播MAC地址对应第二组播组建立组播转发表项,通过所述下发单元下发至第二主控板交换单元;并为第一和第二交换单元中端口成员相同且不包括连接端口的组播组配置相同的组播MAC地址,建立组播转发表项,通过所述下发单元下发至第一主控板交换单元和第二主控板交换单元;所述下发单元,用于下发所述控制单元建立的组播转发表项。
其中,所述控制单元,用于在为所述第一组播组对应第一通道和第二组播组配置相同的组播MAC地址时,为第一主控板交换单元内包含连接端口的第一组播组对应第一通道配置组播MAC地址,将其配置为第二主控板交换单元内仅包含第一通道端口的第二组播组的组播MAC地址;或者,为第二主控板交换单元内仅包含第一通道端口的第二组播组配置组播MAC地址,将其配置为第一主控板交换单元内包含连接端口的第一组播组对应第一通道的组播MAC地址。
其中,所述控制单元,利用哈希HASH算法计算得到可用组播MAC地址集合,从计算得到的组播MAC地址集合内选择组播MAC地址执行配置操作。
在本发明的技术方案中,将具有交换功能的交换单元置于主控板内,解决了目前双主控交换设备硬件资源有限的问题。同时,将交换单元置于主控板内,有利交换设备中的主控板的部署。在现有交换设备中,主控板需要与原有的交换芯片相邻。现在,由于主控板内置了具有交换功能的交换单元,使得主控板能够灵活的放置在合适的槽位上,而不再原交换芯片物理位置的限制。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。