CN111970201A - 一种多芯片级联的转发系统及转发控制方法 - Google Patents
一种多芯片级联的转发系统及转发控制方法 Download PDFInfo
- Publication number
- CN111970201A CN111970201A CN202010884638.1A CN202010884638A CN111970201A CN 111970201 A CN111970201 A CN 111970201A CN 202010884638 A CN202010884638 A CN 202010884638A CN 111970201 A CN111970201 A CN 111970201A
- Authority
- CN
- China
- Prior art keywords
- link
- chip
- forwarding
- vlan
- information table
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/54—Organization of routing tables
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及数据通信领域的远端转发技术,其公开了一种多芯片级联的转发系统及转发控制方法,解决现有技术的多芯片级联设备对于未知报文和已知组播报文的转发控制方案存在的浪费级联口带宽的问题。该系统包括:芯片链路信息收集模块,用于收集并更新芯片间的链路拓扑结构;转发链路获取模块,用于根据VLAN或者组播组中的当前成员的物理状态和所在芯片的转发状态,结合当前芯片间的链路拓扑结构获取未知报文或已知组播报文的转发链路;转发控制模块,用于按照所述转发链路进行未知报文或已知组播报文的转发。
Description
技术领域
本发明涉及数据通信领域的远端转发技术,具体涉及一种多芯片级联的转发系统及转发控制方法。
背景技术
随着互联网数据的增加,在分布式设备、堆叠设备、多芯片级联集中式设备中,未知报文(包括广播报文和未知单播报文)、已知组播报文的数据也会呈现几何级的增加,有效的控制这些报文的精准转发,不但会减低这些报文对设备转发带宽的消耗,也会大大降低网络布局的设备成本。
现有的包括多芯片级联的设备对于未知报文和已知组播报文的转发控制方案中,默认将所有的级联口加入到VLAN或者组播组中,在转发时,无论报文是否有转发远端的实际需求,都会占用链路的级联口的带宽,导致有实际转发远端需求的报文可能由于带宽限制而被丢弃。
一种多芯片级联的场景如图1所示,三个转发芯片与交换芯片S进行级联,分别为:芯片A和芯片S通过A0端口、S1端口进行内部级联;芯片B和芯片S通过B0端口、S2端口进行内部级联;芯片C和芯片S通过C0端口、S3端口进行内部级联;芯片A对用户的面板口(称为用户端口)有A1端口和A2端口,芯片B的用户端口有B1端口和B2端口,芯片C的用户端口有C1端口和C2端口。
现有技术中针对上述场景的未知报文转发方案如下:
(1)默认创建VLAN1,将级联口A0、B0、C0、S1、S2、S3全部加入VLAN1;
(2)若用户将端口A1、A2加入VLAN1,端口A1进来的未知报文,就会默认转发到A2和级联口A0,然后通过S1转发到S2和S3,最后转发到B0和C0;
(3)若用户把端口B1也加入VLAN1,端口A1进来的未知报文,就会转发到A2和级联口A0,然后通过S1转发到S2和S3,最后转发到B0和C0,最终转发到B1;
(4)若用户把端口C1也加入VLAN1,端口A1进来的未知报文,就会转发到A2和级联口A0,然后通过S1转发到S2和S3,最后转发到B0和C0,最终转发到B1和C1;
(5)若用户把端口C1退出VLAN1,端口A1进来的未知报文,就会转发到A2和级联口A0,然后通过S1转发到S2和S3,最后转发到B0和C0,最终转发到B1。
现有技术中针对上述场景的已知组播报文的转发方案与未知报文转发方案类似,不同的是以组播组代替VLAN1,以与组播组匹配的组播报文代理未知报文。
通过上述方案可以看出,现有的方案只是满足了报文转发的逻辑,但是也浪费了设备的带宽,比如:在第(2)步中,VLAN1中对用户呈现的只有端口A1、A2,不涉及到跨芯片转发,那么无需将A1的报文转发到A0、B0、C0、S1、S2、S3;同样,在第(3)步中,VLAN1中对用户呈现的有端口A1、A2和B1,只要满足报文在端口A1、A2和B1之间的转发就够了,那么转发路径涉及的级联口只有A0、S1、S2和B0,而无需转发到C0和S3。
因此,现有多芯片级联设备对于未知报文和已知组播报文的转发控制方案会导致内部级联口的带宽无法被有效使用。
发明内容
本发明所要解决的技术问题是:提出一种多芯片级联的转发系统及转发控制方法,解决现有技术的多芯片级联设备对于未知报文和已知组播报文的转发控制方案存在的浪费级联口带宽的问题。
本发明解决上述技术问题采用的技术方案是:
一方面,本发明提供了一种多芯片级联的转发系统,应用于包括交换芯片和多个转发芯片的设备中,所述交换芯片与多个转发芯片通过相应级联口连接;该系统包括:
芯片链路信息收集模块,用于收集并更新芯片间的链路拓扑结构;
转发链路获取模块,用于根据VLAN或者组播组中的当前成员的物理状态和所在芯片的转发状态,结合当前芯片间的链路拓扑结构获取未知报文或已知组播报文的转发链路;
转发控制模块,用于按照所述转发链路进行未知报文或已知组播报文的转发。
作为进一步优化,所述芯片链路信息收集模块包括:
芯片链路表管理模块,用于创建芯片链路表,在芯片间的链路发生变化时,更新所述芯片链路表,所述芯片链路表包括:链路ID、源芯片、目的芯片和级联口;
链路收集报文模块,用于构造以某一个转发芯片为源芯片,以另一个转发芯片为目的芯片的链路收集报文,周期性将所述链路收集报文从源芯片发送到目的芯片;
链路信息解析模块,用于在链路收集报文到达目的芯片时,解析链路收集报文中的信息,获得源芯片与目的芯片之间的链路信息,并写入芯片链路表中。
作为进一步优化,所述转发链路获取模块包括:
VLAN/组播组成员信息管理模块,用于在创建VLAN/组播组时,同步创建VLAN/组播组的成员信息表,所述成员信息表包括:成员所在芯片、芯片转发状态和端口列表;当有成员加入或退出或成员物理状态发生变化时,更新所述成员信息表;
VLAN/组播组链路信息管理模块,用于创建VLAN/组播组链路信息表,所述链路信息表包括:VLAN/组播组ID、活跃链路ID和级联口;当成员信息表发生更新时,根据更新后的成员信息表计算VLAN/组播组的活跃链路,若活跃链路发生变化,则更新链路信息表;
转发链路确定模块,用于在芯片链路表中查询以未知报文或已知组播报文的源端口所在芯片作为源芯片的活跃链路,将该活跃链路确定为转发链路,并将对应的级联口更新到链路信息表中。
作为进一步优化,所述根据更新后的成员信息表计算VLAN/组播组的活跃链路,具体包括:若成员信息表中有两个或以上芯片处于转发状态,则两两芯片之间的链路为活跃链路。
作为进一步优化,所述VLAN/组播组链路信息管理模块还用于,当芯片间的链路拓扑结构发生变化时,更新VLAN/组播组链路信息表。
另一方面,本发明还提供了应用于上述多芯片级联的转发系统的转发控制方法,包括:
收集并更新芯片间的链路拓扑结构;
根据VLAN或者组播组中的当前成员的物理状态和所在芯片的转发状态,结合当前芯片间的链路拓扑结构获取未知报文或已知组播报文的转发链路;
按照所述转发链路进行未知报文或已知组播报文的转发。
作为进一步优化,所述收集并更新芯片间的链路拓扑结构,具体包括:
创建芯片链路表,所述芯片链路表包括:链路ID、源芯片、目的芯片和级联口;
构造以某一个转发芯片为源芯片,以另一个转发芯片为目的芯片的链路收集报文,周期性将所述链路收集报文从源芯片发送到目的芯片;
在链路收集报文到达目的芯片时,通过解析链路收集报文中的信息,获得源芯片与目的芯片之间的链路信息,并写入芯片链路表中;
在芯片间的链路发生变化时,更新所述芯片链路表。
作为进一步优化,所述根据VLAN或者组播组中的当前成员的物理状态和所在芯片的转发状态,结合当前芯片间的链路拓扑结构获取未知报文或已知组播报文的转发链路,包括:
创建VLAN/组播组链路信息表,所述链路信息表包括:VLAN/组播组ID、活跃链路ID和级联口,并初始化为默认值;
在创建VLAN/组播组时,同步创建VLAN/组播组的成员信息表,所述成员信息表包括:成员所在芯片、芯片转发状态和端口列表;当有成员加入或退出或成员物理状态发生变化时,更新所述成员信息表;
当成员信息表发生更新时,根据更新后的成员信息表计算VLAN/组播组的活跃链路,若活跃链路发生变化,则更新链路信息表;
当有未知报文或者已知组播报文需要被转发时,在芯片链路表中查询以未知报文或已知组播报文的源端口所在芯片作为源芯片的活跃链路,将该活跃链路确定为转发链路,并将对应的级联口更新到链路信息表中。
作为进一步优化,所述根据更新后的成员信息表计算VLAN/组播组的活跃链路,具体包括:若成员信息表中有两个或以上芯片处于转发状态,则两两芯片之间的链路为活跃链路。
作为进一步优化,该方法还包括:
当芯片间的链路拓扑结构发生变化时,更新VLAN/组播组链路信息表。
本发明的有益效果是:根据VLAN或者组播组成员状态和互转需求,把需要的链路加入到VLAN或者组播组中,不需要的链路则不会添加到VLAN或者组播组中,这样保证了未知报文和已知组播报文只会按需转发,进而降低了级联口的带宽不必要的消耗,提高了级联口带宽的利用率。
附图说明
图1为多芯片级联场景的一个示例图;
图2为本发明的多芯片级联的转发系统结构框图;
图3为收集芯片间的链路拓扑结构原理图;
图4为VLAN成员加入和退出时对VLAN链路表的操作流程图;
图5为VLAN成员物理状态变化时对VLAN链路表的操作流程图;
图6为链路状态发生变化时对VLAN链路表的操作流程图。
具体实施方式
本发明旨在提出一种多芯片级联的转发系统及转发控制方法,解决现有技术的包括多芯片级联的设备对于未知报文和已知组播报文的转发控制方案存在的浪费级联口带宽的问题。其核心思想是:根据VLAN或者组播组成员状态和互转需求,把需要的链路加入到VLAN或者组播组中,不需要的链路则不会添加到VLAN或者组播组中,这样保证了未知报文和已知组播报文只会按需转发,进而降低了级联口的带宽不必要的消耗,提高了级联口带宽的利用率。
在具体实现上,如图2所示,本发明中的多芯片级联的转发系统包括:
芯片链路信息收集模块,用于收集并更新芯片间的链路拓扑结构;
转发链路获取模块,用于根据VLAN或者组播组中的当前成员的物理状态和所在芯片的转发状态,结合当前芯片间的链路拓扑结构获取未知报文或已知组播报文的转发链路;
转发控制模块,用于按照所述转发链路进行未知报文或已知组播报文的转发。
具体而言,所述芯片链路信息收集模块包括:
芯片链路表管理模块,用于创建芯片链路表,在芯片间的链路发生变化时,更新所述芯片链路表,所述芯片链路表包括:链路ID、源芯片、目的芯片和级联口;
链路收集报文模块,用于构造以某一个转发芯片为源芯片,以另一个转发芯片为目的芯片的链路收集报文,周期性将所述链路收集报文从源芯片发送到目的芯片;
链路信息解析模块,用于在链路收集报文到达目的芯片时,解析链路收集报文中的信息,获得源芯片与目的芯片之间的链路信息,并写入芯片链路表中。
具体而言,所述转发链路获取模块包括:
VLAN/组播组成员信息管理模块,用于在创建VLAN/组播组时,同步创建VLAN/组播组的成员信息表,所述成员信息表包括:成员所在芯片、芯片转发状态和端口列表;当有成员加入或退出或成员物理状态发生变化时,更新所述成员信息表;
VLAN/组播组链路信息管理模块,用于创建VLAN/组播组链路信息表,所述链路信息表包括:VLAN/组播组ID、活跃链路ID和级联口;当成员信息表发生更新时,根据更新后的成员信息表计算VLAN/组播组的活跃链路,若活跃链路发生变化,则更新链路信息表;
转发链路确定模块,用于在芯片链路表中查询以未知报文或已知组播报文的源端口所在芯片作为源芯片的活跃链路,将该活跃链路确定为转发链路,并将对应的级联口更新到链路信息表中。
以在图1中的多芯片级联场景对未知报文的转发为例,应用于上述多芯片级联的转发系统的转发控制方法采用如下手段实现:
一、收集并更新芯片间的链路拓扑结构:
设备启动后,创建芯片链路表,芯片链路表包含链路ID、源芯片、目的芯片、级联口;
然后通过创建链路收集报文,并周期性发送链路收集报文,利用此报文会将经过的链路级联口信息收集起来,更新芯片链路表。
对于图1中的场景而言,创建的芯片链路信息表如下:
链路ID | 源芯片 | 目的芯片 | 级联口 |
1 | 芯片A | 芯片B | |
2 | 芯片A | 芯片C | |
3 | 芯片A | 芯片S | |
4 | 芯片B | 芯片C | |
5 | 芯片B | 芯片S | |
6 | 芯片C | 芯片S |
通过创建以一个芯片为源芯片,以另一个芯片为目的芯片的链路收集报文,周期性发送链路收集报文收集链路信息,以链路1为例,具体如下:
芯片A发送到芯片B的链路收集报文,格式如下:
报文从芯片A出发,先封装端口A0的信息,然后通过A0端口发送到S1端口,进入芯片S,芯片S会把报文复制成俩分,一份封装端口S1,S2,通过S2发送到B0端口,然后到芯片B,发现是目的芯片,就封装端口B0,发送报文链路信息解析模块解析出链路1的信息;另一份封装端口S1、S3,发送到芯片C,发现没有其他的路径可以转发,也没有到达目的芯片,报文就丢弃。这样就获得了链路1上的级联口信息,同理,可获得其他链路上的级联口信息,进而获得整个设备芯片间的链路拓扑结构,原理如图3所示。
最终得到有效的芯片链路信息表如下:
链路ID | 源芯片 | 目的芯片 | 级联口 |
1 | 芯片A | 芯片B | A0、S1、S2、B0 |
2 | 芯片A | 芯片C | A0、S1、S3、C0 |
3 | 芯片A | 芯片S | A0、S1 |
4 | 芯片B | 芯片C | B0、S2、S3、C0 |
5 | 芯片B | 芯片S | B0、S2 |
6 | 芯片C | 芯片S | C0、S3 |
二、根据VLAN中的当前成员的物理状态和所在芯片的转发状态,结合当前芯片间的链路拓扑结构获取未知报文的转发链路:
首先,创建VLAN链路信息表,并初始化为默认值,该表用于在创建VLAN后,对VLAN中成员的链路信息进行记录,其包含VLANID、活跃链路ID、级联口:
VLANID | 活跃链路ID | 级联口 |
1 | NA | NA |
2 | NA | NA |
然后,创建VLAN1,并同步创建VLAN1的信息表,初始化为默认值,该表用于对VLAN1中的成员物理状态信息、芯片在VLAN1中的转发状态信息进行记录:其包含:成员所在芯片、芯片转发状态和端口列表:
成员所在芯片 | 芯片转发状态 | 端口列表 |
NA | NA | NA |
对于一个VLAN中的芯片而言,若某芯片的一个成员端口物理状态为UP(在线),则该芯片的转发状态为FWD(转发),若某芯片的所有成员端口物理状态为DOWN(关闭),则该芯片的转发状态为BLOCK(阻断)。
下面分别从VLAN成员加入和退出、VLAN成员物理状态变化、芯片链路状态发生变化三种情况来描述对VLAN链路信息表的操作:
①如图4所示,当有VLAN成员加入或者退出时,VLAN中的成员(端口)会发生变化,因此需要下发VLAN成员,并更新VLAN信息表,根据更新后的信息表计算VLAN的活跃链路,若活跃链路发生变化,需要更新链路信息表,更新VLAN中的级联口。
②如图5所示,当有VLAN成员物理状态发生变化时,VLAN中的成员(端口)并不会变动,因此不需要下发VLAN成员,但需要更新VLAN信息表,根据更新后的信息表计算VLAN的活跃链路,若活跃链路发生变化,需要更新链路信息表,更新VLAN中的级联口。
③如图6所示,由于芯片间的链路信息是定期获取的,当链路状态发生变化时(如:级联口发生变化),需要获取使用该链路的VLAN,然后重新计算VLAN链路信息表,根据发生变化的级联口更新VLAN链路信息表的级联口成员。
三、根据确定的转发链路对未知报文进行转发:
当有未知报文或者已知组播报文需要被转发时,在芯片链路表中查询以未知报文或已知组播报文的源端口所在芯片作为源芯片的活跃链路,将该活跃链路确定为转发链路,并将对应的级联口更新到链路信息表中。
实施例:
本实施例为在图1的多芯片级联场景下,用户根据需求对VLAN1中的成员进行加入、退出、成员物理状态变化和芯片链路状态变化几种情况时,系统对未知报文的转发操作说明:
(1)、用户把端口A1、A2加入VLAN1,并根据端口A1、A2的物理状态为UP,更新VLAN1的信息表,发现VLAN1中没有远端报文转发需求,则不用更新VLAN链路信息表,那么从A1端口进来的未知报文可以转发至A2端口,但是不会转发到芯片间的级联口。
具体转发行为如下:
由于A1端口状态为UP,A2端口也为UP,端口A1和A2加入VLAN1,那么VLAN1的信息表为:
成员所在芯片 | 芯片转发状态 | 端口列表 |
A | FWD | A1、A2 |
VLAN链路信息表保持不变,即为默认值:
VLANID | 活跃链路ID | 级联口 |
1 | NA | NA |
2 | NA | NA |
根据VLAN的转发原理,从A1端口进来的未知报文只会转发到A2端口。
(2)、在步骤(1)的基础上,用户把端口B1加入VLAN1,如果端口B1的物理状态为DOWN,通过更新VLAN1的信息表,发现VLAN1并没有跨芯片转发的需求,不用更新VLAN链路信息表,那么A1端口进来的未知报文可以转发A2,但是不会转发到芯片间的级联口。
具体转发行为如下:
B1端口状态为DOWN,端口B1加入VLAN1,那么VLAN1的信息表修改为:
成员所在芯片 | 芯片转发状态 | 端口的列表 |
A | FWD | A1、A2 |
B | BLOCK | B1 |
VLAN链路信息表保持不变:
VLANID | 活跃链路ID | 级联口 |
1 | NA | NA |
2 | NA | NA |
根据VLAN的转发原理,从A1端口进来的未知报文只会转发到A2端口。
(3)、在步骤(2)的基础上,用户把端口C1加入VLAN1,如果端口C1的物理状态为UP,更新VLAN1的信息表,发现VLAN1成员中有芯片A和芯片C的状态均为FWD,则更新VLAN链路信息表,同步更新VLAN1的级联口成员,那么A1进来的未知报文可以转发到A2,同时通过芯片A和芯片C的级联口转发到C1。
具体转发行为如下:
C1端口状态为UP,端口C1加入VLAN1,那么VLAN1的信息表修改为:
成员所在芯片 | 芯片转发状态 | 端口的列表 |
A | FWD | A1、A2 |
B | BLOCK | B1 |
C | FWD | C1 |
发现VLAN1信息表中A芯片和C芯片都为FWD状态,VLAN1活跃链路ID为2,查询芯片链路信息表找到级联口A0、S1、S3、C0,更新VLAN1的级联口成员为A0 S1 S3 C0,并记录到VLAN链路信息表如下:
VLANID | 活跃链路ID | 级联口 |
1 | 2 | A0 S1 S3 C0 |
最终从A1端口进来的未知报文可以转发到A2,A0,进而转发到S1->S3->C0->C1,而不会转发到S2、B0。
(4)、在步骤(3)的基础上,假如端口C1发生了物理状态发生了变化,更新VLAN1的信息表,发现芯片C状态发生变化,获取VLAN1新的活跃链路,以及活跃链路的链路端口,更新VLAN链路信息表,同步更新VLAN1的级联口成员,那么A1进来的未知报文可以转发到A2,不会再转发到芯片A和芯片C的级联口。
具体转发行为如下:
C1端口发生了物理状态DOWN,更新VLAN1的信息表如下:
成员所在芯片 | 芯片转发状态 | 端口的列表 |
A | FWD | A1、A2 |
B | BLOCK | B1 |
C | BLOCK | C1 |
发现VLAN1信息表中C芯片状态变为BLOCK,VLAN1活跃链路ID为空,活跃链路的链路端口空,更新VLAN1的级联口成员为空,并记录到VLAN链路信息表如下:
VLANID | 活跃链路ID | 级联口 |
1 | NA | NA |
根据VLAN的转发原理,从A1进来的未知报文只会转发到A2,而不会再发送到级联口。
(5)、在步骤(4)的基础上,若用户将端口A2退出VLAN1,更新VLAN1的信息表,获取VLAN1新的活跃链路,发现链路没有变化,不用更新VLAN链路信息表,也不用更新VLAN1的级联口成员。那么A1端口进来的未知报文不再转发到A2端口,也不会再转发到任何级联口。
具体转发行为如下:
A2端口退出VLAN1,更新VLAN1的信息表如下:
成员所在芯片 | 芯片转发状态 | 端口列表 |
A | FWD | A1 |
B | BLOCK | B1 |
C | BLOCK | C1 |
发现VLAN1信息表中A芯片状态不变,VLAN链路信息表也不会变化:
VLANID | 活跃链路ID | 级联口 |
1 | NA | NA |
根据VLAN的转发原理,从A1端口进来的未知报文不再转发到A2端口。
(6)在上述过程中,假如芯片间级联口发生了变化,需要同步更新VLAN1的级联口的端口信息。
如果原VLAN链路信息表如下:
VLANID | 活跃链路ID | 级联口 |
1 | 2 | A0 S1 S3 C0 |
2 | 2 | A0 S1 S3 C0 |
若C芯片长期没有收到A芯片发送的链路报文,链路表更新为:
链路ID | 源芯片 | 目的芯片 | 级联口 |
1 | 芯片A | 芯片B | A0、S1、S2、B0 |
2 | 芯片A | 芯片C | NA |
3 | 芯片A | 芯片S | A0、S1 |
4 | 芯片B | 芯片C | B0、S2、S3、C0 |
5 | 芯片B | 芯片S | B0、S2 |
6 | 芯片C | 芯片S | C0、S3 |
则将VLAN链路信息表更新为:
VLANID | 活跃链路ID | 级联口 |
1 | 2 | NA |
2 | 2 | NA |
且VLAN1和VLAN2的级联口成员更新为空。
需要说明的是,以上是针对通过VLAN对未知报文的转发进行的示例说明,针对组播组对已知组播报文的转发类似,这里不再赘述。
Claims (10)
1.一种多芯片级联的转发系统,应用于包括交换芯片和多个转发芯片的设备中,所述交换芯片与多个转发芯片通过相应级联口连接;其特征在于,该系统包括:
芯片链路信息收集模块,用于收集并更新芯片间的链路拓扑结构;
转发链路获取模块,用于根据VLAN或者组播组中的当前成员的物理状态和所在芯片的转发状态,结合当前芯片间的链路拓扑结构获取未知报文或已知组播报文的转发链路;
转发控制模块,用于按照所述转发链路进行未知报文或已知组播报文的转发。
2.如权利要求1所述的多芯片级联的转发系统,其特征在于,所述芯片链路信息收集模块包括:
芯片链路表管理模块,用于创建芯片链路表,在芯片间的链路发生变化时,更新所述芯片链路表,所述芯片链路表包括:链路ID、源芯片、目的芯片和级联口;
链路收集报文模块,用于构造以某一个转发芯片为源芯片,以另一个转发芯片为目的芯片的链路收集报文,周期性将所述链路收集报文从源芯片发送到目的芯片;
链路信息解析模块,用于在链路收集报文到达目的芯片时,解析链路收集报文中的信息,获得源芯片与目的芯片之间的链路信息,并写入芯片链路表中。
3.如权利要求1所述的多芯片级联的转发系统,其特征在于,所述转发链路获取模块包括:
VLAN/组播组成员信息管理模块,用于在创建VLAN/组播组时,同步创建VLAN/组播组的成员信息表,所述成员信息表包括:成员所在芯片、芯片转发状态和端口列表;当有成员加入或退出或成员物理状态发生变化时,更新所述成员信息表;
VLAN/组播组链路信息管理模块,用于创建VLAN/组播组链路信息表,所述链路信息表包括:VLAN/组播组ID、活跃链路ID和级联口;当成员信息表发生更新时,根据更新后的成员信息表计算VLAN/组播组的活跃链路,若活跃链路发生变化,则更新链路信息表;
转发链路确定模块,用于在芯片链路表中查询以未知报文或已知组播报文的源端口所在芯片作为源芯片的活跃链路,将该活跃链路确定为转发链路,并将对应的级联口更新到链路信息表中。
4.如权利要求3所述的多芯片级联的转发系统,其特征在于,所述根据更新后的成员信息表计算VLAN/组播组的活跃链路,具体包括:若成员信息表中有两个或以上芯片处于转发状态,则两两芯片之间的链路为活跃链路。
5.如权利要求1-4任意一项所述的多芯片级联的转发系统,其特征在于,所述VLAN/组播组链路信息管理模块还用于,当芯片间的链路拓扑结构发生变化时,更新VLAN/组播组链路信息表。
6.应用于如权利要求1-5任意一项所述多芯片级联的转发系统的转发控制方法,其特征在于,包括:
收集并更新芯片间的链路拓扑结构;
根据VLAN或者组播组中的当前成员的物理状态和所在芯片的转发状态,结合当前芯片间的链路拓扑结构获取未知报文或已知组播报文的转发链路;
按照所述转发链路进行未知报文或已知组播报文的转发。
7.如权利要求6所述的转发控制方法,其特征在于,所述收集并更新芯片间的链路拓扑结构,具体包括:
创建芯片链路表,所述芯片链路表包括:链路ID、源芯片、目的芯片和级联口;
构造以某一个转发芯片为源芯片,以另一个转发芯片为目的芯片的链路收集报文,周期性将所述链路收集报文从源芯片发送到目的芯片;
在链路收集报文到达目的芯片时,通过解析链路收集报文中的信息,获得源芯片与目的芯片之间的链路信息,并写入芯片链路表中;
在芯片间的链路发生变化时,更新所述芯片链路表。
8.如权利要求6所述的转发控制方法,其特征在于,所述根据VLAN或者组播组中的当前成员的物理状态和所在芯片的转发状态,结合当前芯片间的链路拓扑结构获取未知报文或已知组播报文的转发链路,包括:
创建VLAN/组播组链路信息表,所述链路信息表包括:VLAN/组播组ID、活跃链路ID和级联口,并初始化为默认值;
在创建VLAN/组播组时,同步创建VLAN/组播组的成员信息表,所述成员信息表包括:成员所在芯片、芯片转发状态和端口列表;当有成员加入或退出或成员物理状态发生变化时,更新所述成员信息表;
当成员信息表发生更新时,根据更新后的成员信息表计算VLAN/组播组的活跃链路,若活跃链路发生变化,则更新链路信息表;
当有未知报文或者已知组播报文需要被转发时,在芯片链路表中查询以未知报文或已知组播报文的源端口所在芯片作为源芯片的活跃链路,将该活跃链路确定为转发链路,并将对应的级联口更新到链路信息表中。
9.如权利要求8所述的转发控制方法,其特征在于,所述根据更新后的成员信息表计算VLAN/组播组的活跃链路,具体包括:若成员信息表中有两个或以上芯片处于转发状态,则两两芯片之间的链路为活跃链路。
10.如权利要求6-9任意一项所述的转发控制方法,其特征在于,该方法还包括:
当芯片间的链路拓扑结构发生变化时,更新VLAN/组播组链路信息表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010884638.1A CN111970201A (zh) | 2020-08-28 | 2020-08-28 | 一种多芯片级联的转发系统及转发控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010884638.1A CN111970201A (zh) | 2020-08-28 | 2020-08-28 | 一种多芯片级联的转发系统及转发控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111970201A true CN111970201A (zh) | 2020-11-20 |
Family
ID=73400981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010884638.1A Pending CN111970201A (zh) | 2020-08-28 | 2020-08-28 | 一种多芯片级联的转发系统及转发控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111970201A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114389965A (zh) * | 2022-01-26 | 2022-04-22 | 芯河半导体科技(无锡)有限公司 | 一种二层网络环路检测定位方法 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101018180A (zh) * | 2007-03-12 | 2007-08-15 | 中兴通讯股份有限公司 | 一种堆叠系统内部转发表的实现方法 |
CN101159665A (zh) * | 2007-08-28 | 2008-04-09 | 杭州华三通信技术有限公司 | 实现未知组播报文向路由器端口转发的方法和装置 |
CN103414773A (zh) * | 2013-08-12 | 2013-11-27 | 杭州华三通信技术有限公司 | 堆叠系统中的mac地址信息同步方法及装置 |
CN103634423A (zh) * | 2013-12-06 | 2014-03-12 | 北京东土科技股份有限公司 | 一种基于三层接口的mpls-tp配置方法及装置 |
CN104639437A (zh) * | 2013-11-14 | 2015-05-20 | 杭州华三通信技术有限公司 | 堆叠系统中广播报文的转发方法及装置 |
CN104883630A (zh) * | 2015-05-08 | 2015-09-02 | 烽火通信科技股份有限公司 | Pon系统中组播级联的适配系统和方法 |
CN104954254A (zh) * | 2013-12-27 | 2015-09-30 | 凯为公司 | 互连多个处理引擎的芯片上路由器的矩阵及使用其进行路由的方法 |
CN106209689A (zh) * | 2015-05-04 | 2016-12-07 | 杭州华三通信技术有限公司 | 从vxlan至vlan的组播数据报文转发方法和设备 |
CN107864094A (zh) * | 2017-11-15 | 2018-03-30 | 新华三技术有限公司 | 一种流量选路方法、装置和机器可读存储介质 |
CN108933744A (zh) * | 2018-06-26 | 2018-12-04 | 新华三技术有限公司 | 一种报文转发方法及装置 |
CN109194560A (zh) * | 2018-08-29 | 2019-01-11 | 迈普通信技术股份有限公司 | 组播方法及vtep |
CN109391548A (zh) * | 2018-11-06 | 2019-02-26 | 迈普通信技术股份有限公司 | 表项迁移方法、装置及网络通信系统 |
CN109547298A (zh) * | 2019-01-28 | 2019-03-29 | 新华三技术有限公司 | 一种转发路径检测方法及装置 |
CN110830371A (zh) * | 2019-11-13 | 2020-02-21 | 迈普通信技术股份有限公司 | 报文重定向方法、装置、电子设备及可读存储介质 |
CN111049765A (zh) * | 2019-12-12 | 2020-04-21 | 北京东土军悦科技有限公司 | 聚合端口切换方法、装置、芯片、交换机及存储介质 |
CN111355674A (zh) * | 2020-02-24 | 2020-06-30 | 盛科网络(苏州)有限公司 | 路由报文的处理方法及装置、存储介质和电子装置 |
-
2020
- 2020-08-28 CN CN202010884638.1A patent/CN111970201A/zh active Pending
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101018180A (zh) * | 2007-03-12 | 2007-08-15 | 中兴通讯股份有限公司 | 一种堆叠系统内部转发表的实现方法 |
CN101159665A (zh) * | 2007-08-28 | 2008-04-09 | 杭州华三通信技术有限公司 | 实现未知组播报文向路由器端口转发的方法和装置 |
CN103414773A (zh) * | 2013-08-12 | 2013-11-27 | 杭州华三通信技术有限公司 | 堆叠系统中的mac地址信息同步方法及装置 |
CN105794157A (zh) * | 2013-11-14 | 2016-07-20 | 杭州华三通信技术有限公司 | 堆叠系统 |
CN104639437A (zh) * | 2013-11-14 | 2015-05-20 | 杭州华三通信技术有限公司 | 堆叠系统中广播报文的转发方法及装置 |
CN103634423A (zh) * | 2013-12-06 | 2014-03-12 | 北京东土科技股份有限公司 | 一种基于三层接口的mpls-tp配置方法及装置 |
CN104954254A (zh) * | 2013-12-27 | 2015-09-30 | 凯为公司 | 互连多个处理引擎的芯片上路由器的矩阵及使用其进行路由的方法 |
CN106209689A (zh) * | 2015-05-04 | 2016-12-07 | 杭州华三通信技术有限公司 | 从vxlan至vlan的组播数据报文转发方法和设备 |
US20180351878A1 (en) * | 2015-05-04 | 2018-12-06 | New H3C Technologies Co., Ltd. | Multicast data packet forwarding |
CN104883630A (zh) * | 2015-05-08 | 2015-09-02 | 烽火通信科技股份有限公司 | Pon系统中组播级联的适配系统和方法 |
CN107864094A (zh) * | 2017-11-15 | 2018-03-30 | 新华三技术有限公司 | 一种流量选路方法、装置和机器可读存储介质 |
CN108933744A (zh) * | 2018-06-26 | 2018-12-04 | 新华三技术有限公司 | 一种报文转发方法及装置 |
CN109194560A (zh) * | 2018-08-29 | 2019-01-11 | 迈普通信技术股份有限公司 | 组播方法及vtep |
CN109391548A (zh) * | 2018-11-06 | 2019-02-26 | 迈普通信技术股份有限公司 | 表项迁移方法、装置及网络通信系统 |
CN109547298A (zh) * | 2019-01-28 | 2019-03-29 | 新华三技术有限公司 | 一种转发路径检测方法及装置 |
CN110830371A (zh) * | 2019-11-13 | 2020-02-21 | 迈普通信技术股份有限公司 | 报文重定向方法、装置、电子设备及可读存储介质 |
CN111049765A (zh) * | 2019-12-12 | 2020-04-21 | 北京东土军悦科技有限公司 | 聚合端口切换方法、装置、芯片、交换机及存储介质 |
CN111355674A (zh) * | 2020-02-24 | 2020-06-30 | 盛科网络(苏州)有限公司 | 路由报文的处理方法及装置、存储介质和电子装置 |
Non-Patent Citations (2)
Title |
---|
JUNHAI LUO: "A Data Forwarding Scheme Based on Delaunay Triangulation for CPSs", 《IEEE XPLORE》 * |
李苗: "以太网交换技术研究及交换芯片的设计实现", 《CNKI中国硕士论文全文数据库》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114389965A (zh) * | 2022-01-26 | 2022-04-22 | 芯河半导体科技(无锡)有限公司 | 一种二层网络环路检测定位方法 |
CN114389965B (zh) * | 2022-01-26 | 2024-03-29 | 芯河半导体科技(无锡)有限公司 | 一种二层网络环路检测定位方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10075371B2 (en) | Communication system, control apparatus, packet handling operation setting method, and program | |
US9602435B2 (en) | Packet broadcast mechanism in a split architecture network | |
EP2544409B1 (en) | Generic monitoring packet handling mechanism for OpenFlow 1.1 | |
US8199755B2 (en) | Method and apparatus establishing forwarding state using path state advertisements | |
EP1869848B1 (en) | Building multipoint-to-multipoint label switch paths | |
CN110061897A (zh) | 虚拟网络隧道内流量数据获取方法与系统 | |
EP1722520A1 (en) | A method for implementing multicast based on multiple service transmission plate | |
US20030165140A1 (en) | System and method for distributing multicasts in virtual local area networks | |
CN113196705B (zh) | 组播流量的路径内遥测 | |
CN103069756A (zh) | 通信系统、控制器、节点控制方法和程序 | |
CN104272679A (zh) | 通信系统、控制装置、通信方法以及程序 | |
US20170093689A1 (en) | Protocol independent multicast register optimization | |
WO2007005347A1 (en) | Apparatus and method for segmenting a communication network | |
CN108289061B (zh) | 基于sdn的业务链拓扑系统 | |
CN100550849C (zh) | 分组传送控制方法与系统 | |
CN100486207C (zh) | 三层交换中ip组播精确端口转发的方法 | |
CN104579894A (zh) | 分布式虚拟交换机系统的IGMP Snooping实现方法及装置 | |
CN108028801A (zh) | 一种基于sdn的arp实现方法及装置 | |
CN105075196A (zh) | 控制器、通信系统、路径切换方法和程序 | |
CN104426762A (zh) | 一种传输、接收元数据的方法、开放流逻辑交换机 | |
CN111970201A (zh) | 一种多芯片级联的转发系统及转发控制方法 | |
WO2021164245A1 (zh) | 负载分担的方法、第一网络设备 | |
CN101267396B (zh) | 一种组播路由下游接口列表实现装置和方法 | |
CN104995879A (zh) | 通信系统、通信方法、控制装置、控制装置控制方法和程序 | |
CN114697300A (zh) | 一种高时效通信系统的数据组播实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201120 |
|
RJ01 | Rejection of invention patent application after publication |