[发明专利]包转发方法及现场可编程门阵列有效
申请号: | 201110447819.9 | 申请日: | 2011-12-26 |
公开(公告)号: | CN102404235A | 公开(公告)日: | 2012-04-04 |
发明(设计)人: | 罗彬 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 王一斌;王琦 |
地址: | 310053 浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 转发 方法 现场 可编程 门阵列 | ||
1.一种包转发方法,其特征在于,该方法包括:
对于三层转发设备的入接口,该设备的中央处理单元CPU下刷入接口信息表项到该设备的现场可编程门阵列FPGA中,该表项包括:入接口标识和入接口业务序列号;
对于三层转发设备的转发信息库FIB表项,该设备的CPU下刷FIB信息表项到该设备的FPGA中,该FIB信息表项包括:FIB索引、FIB序列号和FIB表项内容;
对于三层转发设备的出接口,该设备的CPU下刷出接口信息表项到该设备的FPGA中,该表项包括:出接口标识和出接口业务序列号;
当所述FPGA接收到业务流的首包时,将该包上送所述CPU进行业务处理和转发处理,所述CPU下刷上行流表项和下行流表项到所述FPGA,其中,上行流表项包括:包的五元组、入接口业务序列号、FIB索引、FIB序列号、入接口业务处理内容,下行流表项包括:包的五元组、出接口业务序列号和出接口业务处理内容;
当所述FPGA接收到业务流的后续包时,根据包的五元组查找对应的上行流表项,根据包的入接口标识查找对应的入接口信息表项,根据上行流表项中的FIB索引查找对应的FIB信息表项,若上行流表项和入接口信息表项中的入接口业务序列号相同、且上行流表项和FIB信息表项中的FIB序列号相同,则根据上行流表项中的入接口业务处理内容对包进行入接口业务处理,并根据包的五元组查找对应的下行流表项,根据FIB信息表项中的FIB表项内容的出接口标识查找到对应的出接口信息表项,若下行流表项和出接口信息表项中的出接口业务序列号相同,则根据下行流表项中的出接口业务处理内容对包进行出接口业务处理,根据FIB表项内容将包从出接口转发出去。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
当任一入接口的业务处理内容更新时,所述CPU根据该入接口标识在所述FPGA中查找对应的入接口信息表项,更新该表项中的入接口业务序列号;
当任一FIB表项的内容更新时,所述CPU根据该FIB表项的FIB索引在所述FPGA中查找对应的FIB信息表项,更新该表项中的FIB序列号和FIB表项内容;
当任一出接口的业务处理内容更新时,所述CPU根据该出接口标识在所述FPGA中查找对应的出接口信息表项,更新该表项中的出接口业务序列号。
3.根据权利要求1所述的方法,其特征在于,当所述FPGA接收到业务流的后续包时,所述FPGA根据上行流表项中的FIB索引查找对应的FIB信息表项之后进一步包括:
若上行流表项和入接口信息表项中的入接口业务序列号不同,和/或上行流表项和FIB信息表项中的FIB序列号不同,则FPGA将该包上送CPU进行业务处理和转发处理,CPU下刷上行流表项和下行流表项到FPGA,其中,上行流表项包括:包的五元组、入接口业务序列号、FIB索引、FIB序列号、入接口业务处理内容,下行流表项包括:包的五元组、出接口业务序列号和出接口业务处理内容。
4.根据权利要求1所述的方法,其特征在于,当所述FPGA接收到业务流的后续包时,所述FPGA根据FIB信息表项中的FIB表项内容中的出接口标识查找到对应的出接口信息表项之后进一步包括:
若下行流表项和出接口信息表项中的出接口业务序列号不同,则FPGA将该包上送CPU处理,同时根据FIB信息表项中的FIB表项内容中的出接口号,告知CPU该包的出接口号,CPU对该包进行出接口业务处理,并下刷下行流表项到FPGA,该下行流表项包括:包的五元组、出接口业务序列号和出接口业务处理内容。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110447819.9/1.html,转载请声明来源钻瓜专利网。