一种基于可编程交换机的数据名预处理方法及系统技术方案

技术编号:41689415 阅读:21 留言:0更新日期:2024-06-14 15:39
本发明专利技术公开了一种基于可编程交换机的数据名预处理方法及系统,其中,方法包括以下步骤:根据特定格式从数据名中提取出组件,并根据组件长度保存到特定的包头向量PHV中;从提取的组件中过滤筛选出长度异常的组件;对长度有效的组件执行查找匹配操作;匹配完成后,根据查询结果记录单组件规则、记录组件编码或标识Invalid组件;每种长度的PHV中至多保存着一个组件,如果某个长度不止一个组件,则该长度的剩余组件将在数据包通过回环端口重新进入流水线时处理。本发明专利技术利用可编程交换机加速组件预处理操作,后续的组件化多模式匹配模块则部署在服务器端。相比于完全服务器部署方案,本发明专利技术性能更好,可以提升系统吞吐量。

【技术实现步骤摘要】

本专利技术涉及可编程交换机、多模式匹配、数据包转发等,尤其涉及一种基于可编程交换机的数据名预处理方法法及系统。


技术介绍

1、多模式匹配是以数据内容为中心的网络应用的核心功能模块,分为模糊匹配和精确匹配两种类型。在实际应用中,通常采用两阶段匹配的方案,即首先使用精确匹配的方式匹配规则的部分内容,其目的在于快速筛选出潜在的规则,然后采用模糊匹配的方式从这些规则中找出最终匹配结果。在传统互联网中,多模式匹配的处理对象通常是url,而在以数据内容为中心的新型互联网中则是数据名。数据名和url在结构上存在相似之处,即二者均存在明显的层次化组件化的特点。和其他常用的匹配方式相比,例如前缀匹配、最长前缀匹配和精确匹配,多模式匹配的计算复杂性更高,因此基于软件实现的多模式匹配算法的性能难以适配如今日益增长的链路带宽,需要借助硬件加速技术的帮助。可编程交换机作为一种新型网络设备,不仅具备线速数据包转发能力,还具备一定的可编程性,足以满足常见的路由转发和包分类处理需求。然而,与配备了通用cpu的服务器相比,可编程交换机的规则容量有限,同时灵活性仍显不足,但将两者结合起来组成本文档来自技高网...

【技术保护点】

1.一种基于可编程交换机的数据名预处理方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的方法,其特征在于,所述特定格式为TLV格式;其中,Type字段包括组件的类型和序号,Length字段保存组件的长度,Vector字段保存组件的具体内容。

3.根据权利要求1所述的方法,其特征在于,对长度有效的组件执行查找匹配操作步骤,包括:匹配所有组件的长度字段,为每种长度提取至多一个组件;每种长度维护一张三态内容寻址存储器TCAM表,利用TCAM表支持优先级匹配的特点,实现“每种长度至多提取一个组件”的功能。

4.根据权利要求3所述的方法,其特征在于,对长...

【技术特征摘要】

1.一种基于可编程交换机的数据名预处理方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的方法,其特征在于,所述特定格式为tlv格式;其中,type字段包括组件的类型和序号,length字段保存组件的长度,vector字段保存组件的具体内容。

3.根据权利要求1所述的方法,其特征在于,对长度有效的组件执行查找匹配操作步骤,包括:匹配所有组件的长度字段,为每种长度提取至多一个组件;每种长度维护一张三态内容寻址存储器tcam表,利用tcam表支持优先级匹配的特点,实现“每种长度至多提取一个组件”的功能。

4.根据权利要求3所述的方法,其特征在于,对长度有效的组件执行查找匹配操作时需要两个数据,分别是组件内容本身,以及组件对应的id;分长度组件匹配由两张哈希表完成:第一张表是preprocesstable-4b,该表匹配组件内容,保存着组件的编码信息、是否存在可匹配的单组件规则的信息和是否是invalid组件的信息;第二张表是handletable-4b,匹配组件id,并根据id指示的组件相对位置设置组件编码和无效组件比特位图,以及记录与该组件对应的单组件规则id。

5.根据权利要求1所述的方法,其特征在于,对于异常长度的组件过滤采用双哈希表完成,第一张哈希表是lenchecktable0,该表匹配组件长度,并返回该长度是否为有效长度的信息;第二张表是invalidlenhandletable0,当组件长度无效时,该表根据组件id设置invalid bitmap。

【专利技术属性】
技术研发人员:许可李彦彪谢高岗张大方
申请(专利权)人:中国科学院计算机网络信息中心
类型:发明
国别省市:

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

1