一种基于分散流表的转发方法和装置制造方法及图纸

技术编号:39743590 阅读:10 留言:0更新日期:2023-12-17 23:43
本发明专利技术涉及分组交换领域,特别是涉及一种基于分散流表的转发方法和装置

【技术实现步骤摘要】
一种基于分散流表的转发方法和装置


[0001]本专利技术涉及分组交换领域,特别是涉及一种基于分散流表的转发方法和装置


技术介绍

[0002]在分组交换技术中,通常使用流表进行报文转发

流表常见于光线路终端
(optical line terminal
,简写为
OLT)
业务转发,也可用于其他转发

[0003]现有的转发架构中,交换芯片需要通过流表查找业务转发的虚端口

由于业务流可能会转发至任一芯片的任一虚端口,因此流表中需要保存全局所有芯片的所有虚端口信息,导致流表需要的存储空间较大,对于芯片的资源消耗也较大

[0004]并且,由于每个芯片都需要使用全局所有虚端口的信息,并且无法从其它芯片中获取相应信息,因此每个芯片中都需要存储一套包含全局所有芯片的所有虚端口信息的流表,无法使用多个芯片叠加存储,进一步造成了资源消耗增大

由于芯片存储容量的限制,导致虚端口的数量的设计是交换系统可以支持流分类的上限

并且,由于不同芯片间的流表不可叠加使用,流表的最大容量需要以存储空间最小的芯片为准进行设计,因此要求每芯片规格一致才没有木桶效应的短板

[0005]鉴于此,如何克服现有技术所存在的缺陷,解决现有技术中使用全局流表造成的存储浪费和支持流分类有限的现象,是本
待解决的问题


技术实现思路

[0006]针对现有技术的以上缺陷或改进需求,本专利技术解决了现有技术中使用全局流表造成的存储浪费和支持流分类有限的问题

[0007]本专利技术实施例采用如下技术方案:
[0008]第一方面,本专利技术提供了一种基于分散流表的转发方法,具体为:报文的入端口芯片根据报文的
mac
地址和转发域,在地址转发表中查找转发需使用的虚端口信息,将查找到的虚端口信息封装进私有转发头中,将封装后的私有转发头送入交换矩阵,其中,地址转发表中包含本地虚端口信息或学习到的虚端口信息;报文的目的芯片解析交换矩阵中的私有转发头,将私有转发头中的虚端口信息恢复到报文中,将报文发送出目的芯片上的目的端口;其中,当地址转发表中未找到报文的源
mac
信息时,报文的入端口芯片生成广播发送的地址同步消息,系统中所有芯片根据地址同步消息中封装的虚端口信息和物理端口信息进行地址转发表学习

[0009]优选的,所述报文的入端口芯片根据报文的
mac
地址和转发域,在地址转发表中查找转发需使用的虚端口信息,具体包括:对待转发的报文进行流分类得到流
id
,使用流
id
索引流分类表得到报文的转发域;将报文的转发域和
mac
地址作为地址转发表的查找关键字,在地址转发表中查找转发需使用的虚端口信息和物理芯片
id。
[0010]优选的,所述在地址转发表中查找转发需使用的虚端口信息,具体包括:以报文的
mac
地址和转发域作为查找关键字,在地址转发表中得到相应的查找结果;根据查找结果中
的封装信息字段,获取转发需使用的虚端口信息

[0011]优选的,所述将查找到的虚端口信息封装进私有转发头中,具体包括:在入端口芯片上生成私有转发头,将虚端口信息封装进私有转发头的封装信息中,并设置每个封装信息的封装
id
,其中,封装
id
用于在不同交换芯片间传递封装信息的
id
值,以便交换芯片获取所需的封装信息

[0012]优选的,所述将私有转发头中的虚端口信息恢复到报文中,具体包括:解析私有转发头中的虚端口信息,索引虚端口表,得到相应的封装信息,其中,封装信息包含虚端口信息;根据虚端口表,将包含虚端口信息的封装信息恢复到报文中

[0013]优选的,所述索引虚端口表,得到相应的封装信息,具体包括:获取虚端口表中的
gemport
,用于还原封装信息中
pon

gemport
;获取虚端口表中的
otagtpid
,用于还原封装信息中
pon
口外层
vlan
指示;获取虚端口表中的
itagtpid
,用于还原封装信息中
pon
口内层
vlan
指示

[0014]优选的,所述报文的入端口芯片解析报文的源芯片广播发送的地址同步消息,根据地址同步消息中封装的虚端口信息进行地址转发表学习,具体包括:报文的入端口芯片获取报文的转发域和源
mac
地址,并解析地址同步消息中需要学习的字段;根据报文的转发域和源
mac
地址,将需要学习的字段值写入本地的地址转发表

[0015]优选的,所述将需要学习的字段值写入本地的地址转发表,具体包括:将报文的转发域和
mac
地址作为地址转发表的查找关键字;其中,转发域用于匹配前置逻辑生成的二层转发域,
mac
地址由报文的源
mac
地址学习得到;将需要学习的字段作为相应查找关键字的查找结果写入地址转发表,并在查找结果的封装信息字段中写入学习到的虚端口信息

[0016]优选的,所述报文的入端口芯片解析报文的源芯片广播发送的地址同步消息,根据地址同步消息中封装的虚端口信息进行地址转发表学习之前,还包括:报文的源芯片将报文的源端口写入地址同步消息的源端口字段,用于向其它交换芯片广播需要学习的源端口;报文的源芯片将报文的源芯片写入地址同步消息的源芯片字段,用于向其它交换芯片广播需要学习的源芯片;报文的源芯片将报文的源芯片的流
id
写入地址同步消息的源头流
id
字段,用于向其它交换芯片广播需要学习的源芯片的流
id
;报文的源芯片根据报文的源端口

报文的源芯片和报文的源芯片的流
id
,生成地址同步消息,向其它芯片广播发送生成的地址同步消息

[0017]另一方面,本专利技术提供了一种基于分散流表的转发装置,具体为:包括至少一个处理器和存储器,所述至少一个处理器和存储器之间通过数据总线连接,所述存储器存储能被所述至少一个处理器执行的指令,所述指令在被所述处理器执行后,用于完成第一方面提供的基于分散流表的转发方法

[0018]与现有技术相比,本专利技术实施例的有益效果在于:通过本专利技术实施例中提供的转发方法,将转发目的虚端口
id(outl2if

)
封装在私有转发头信息中,并使用地址同步消息使每个芯片都能够学习到其它芯片中所保存的虚端口转发信息和物理芯片
id
,从而使每个芯片本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于分散流表的转发方法,其特征在于,具体包括:报文的入端口芯片根据报文的
mac
地址和转发域,在地址转发表中查找转发需使用的虚端口信息,将查找到的虚端口信息封装进私有转发头中,将封装后的私有转发头送入交换矩阵,其中,地址转发表中包含本地虚端口信息或学习到的虚端口信息;报文的目的芯片解析交换矩阵中的私有转发头,将私有转发头中的虚端口信息恢复到报文中,将报文发送出目的芯片上的目的端口;其中,当地址转发表中未找到报文的源
mac
信息时,报文的入端口芯片生成广播发送的地址同步消息,系统中所有芯片根据地址同步消息中封装的虚端口信息和物理端口信息进行地址转发表学习
。2.
根据权利要求1所述的基于分散流表的转发方法,其特征在于,所述报文的入端口芯片根据报文的
mac
地址和转发域,在地址转发表中查找转发需使用的虚端口信息,具体包括:对待转发的报文进行流分类得到流
id
,使用流
id
索引流分类表得到报文的转发域;将报文的转发域和
mac
地址作为地址转发表的查找关键字,在地址转发表中查找转发需使用的虚端口信息和物理芯片
id。3.
根据权利要求2所述的基于分散流表的转发方法,其特征在于,所述在地址转发表中查找转发需使用的虚端口信息,具体包括:以报文的
mac
地址和转发域作为查找关键字,在地址转发表中得到相应的查找结果;根据查找结果中的封装信息字段,获取转发需使用的虚端口信息
。4.
根据权利要求1所述的基于分散流表的转发方法,其特征在于,所述将查找到的虚端口信息封装进私有转发头中,具体包括:在入端口芯片上生成私有转发头,将虚端口信息封装进私有转发头的封装信息中,并设置每个封装信息的封装
id
,其中,封装
id
用于在不同交换芯片间传递封装信息的
id
值,以便交换芯片获取所需的封装信息
。5.
根据权利要求1所述的基于分散流表的转发方法,其特征在于,所述将私有转发头中的虚端口信息恢复到报文中,具体包括:解析私有转发头中的虚端口信息,索引虚端口表,得到相应的封装信息,其中,封装信息包含虚端口信息;根据虚端口表,将包含虚端口信息的封装信息恢复到报文中
。6.
根据权利要求5所述的基于分散流表的转发方法,其特征在于,所述索引虚端口表,得到相应的封装信息,具体包括:获取虚端口表中的
gemport
,用于还原封装信息中
pon

g...

【专利技术属性】
技术研发人员:邓作李国瑞詹阳
申请(专利权)人:武汉二进制半导体有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1