发明名称 一种流表查找方法和装置
摘要 本发明公开了一种流表查找方法和装置,所述方法在芯片内部缓存中设置预查找表,采用该预查找表记录关键字及其Index的对应关系,记录时只记录关键字的部分字段称为Flow值。关键字的Flow值在预查找表的记录位置与关键字对应的流表表项在Hash桶中的记录位置相应。在为报文查找所需流表表项时,可以根据对报文关键字进行Hash运算得到的Index以及与报文关键字匹配的Flow值在预查找表表项中位置,确定所需流表表项在外部缓存中的记录位置,然后只需要访问外部缓存一次,即可得到所需的流表表项,从而达到快速查找的目的。
申请公布号 CN101540723B 申请公布日期 2011.07.06
申请号 CN200910082268.3 申请日期 2009.04.20
申请人 杭州华三通信技术有限公司 发明人 王彬
分类号 H04L12/56(2006.01)I;G06F17/30(2006.01)I 主分类号 H04L12/56(2006.01)I
代理机构 北京德琦知识产权代理有限公司 11018 代理人 王一斌;王琦
主权项 一种流表查找方法,其特征在于,该方法包括:A、以报文特征信息为关键字,采用预设散列Hash函数建立关键字与Hash索引之间的对应关系;在设置于内部缓存的预查找表中,针对每个Hash索引顺序记录该Hash索引对应的各关键字的部分比特,所述部分比特称为流量特征Flow值;针对对应同一关键字的Flow值和Hash索引,根据Flow值在预查找表表项中的排序位置和Hash索引值,确定该关键字所属流表表项在外部缓存Hash桶中的记录位置,在所确定的记录位置上记录该关键字所属流表表项;B、查找流表时,采用所述预设Hash函数计算待处理报文中关键字key‑x的Hash索引,记为Index‑x;在所述预查找表中查找与Index‑x对应的、且与key‑x匹配的Flow值;根据该匹配的Flow值在预查找表表项中的排序位置和所述Index‑x确定所述key‑x所属流表表项的读取地址,从外部缓存中读取流表表项。
地址 310053 浙江省杭州市高新技术产业开发区之江科技工业园六和路310号华为杭州生产基地