The invention discloses a TCAM based data stream recognition processing device, relates to the technical field of data stream recognition, including KEY module, TCAM search module, a judging module and result processing module search results. The invention adopts the flexible group KEY, information extraction field flexible combination into a variety of KEY to be identified from the data stream, using KEY components to find TCAM entry, search results of independent judgment or cascade judgment, every KEY corresponds to the TCAM index, according to the TCAM index to get the corresponding behavior of each index the behavior of KEY, corresponding to all of the data stream to recognize the priority of judgment, the highest priority processing output. The invention can realize flexible group KEY and improve the utilization ratio of TCAM resources. The invention discloses a data stream identification and processing method based on TCAM.
【技术实现步骤摘要】
一种基于TCAM的数据流识别处理装置、系统和方法
本专利技术涉及数据流识别
,具体涉及一种基于TCAM的数据流识别处理装置、系统和方法。
技术介绍
随着通信的发展,通信网中基于包的业务流量已经占据了主流。通信网也从适应于TDM(TimeDivisionMultiplexing)通信的通信网转换为更适用于包通信的通信网。目前,在基于包通信技术中以太网技术和基于TCP/IP(协议的技术占据主流,基于这两种技术的网络设备(例如各种二层交换机、三层交换机、路由器、网关设备、PTN(PacketTransportNetwork)设备等)在通信的核心层、汇聚层、接入层都有大量应用,SDN技术和SDN设备也在迅速发展中。这类设备中大多都有流识别和处理功能。流定义为一组具有同样特征的报文,这些特征可以是数据包的协议字段,例如以太网协议的目的MAC(MediaAccessControl)地址(后文简写为DMAC)、源MAC地址(后文简写为SMAC)、VLAN(VirtualLocalAccessNetwork)域、以太网类型域(EtherType);IP(InternetProtocol)协议定义的IP源地址(以下简写为SIP)、目的地址(以下简写为DIP)、IPProtocol等;也可以是数据包的输入端口、输出端口信息(例如数据流的输入端口),还可以是数据流内部处理信息(例如输出端口,改变后的数据包协议字段等)等。流识别就是根据这些字段识别出定义的流,流处理是对识别后的流指定处理行为,例如ACL(AccessControlList)(丢弃数据包)功能,指定数据包的转 ...
【技术保护点】
一种基于TCAM的数据流识别处理装置,其特征在于:包括组KEY模块,TCAM查找模块,查找结果判断模块和结果处理模块,其中:组KEY模块用于根据数据流识别需求按照组KEY配置进行组KEY,所述组KEY配置中设定了多种KEY的组成配置,每种KEY的组成配置包括每种KEY所用的信息字段和是否要按照信息字段组成有效KEY;对于需要根据信息字段组成有效KEY的,根据组KEY配置从待识别的数据流的各信息字段中选择生成每种KEY所用的信息字段,按照组KEY方法组成待识别的数据流的KEY,KEY中包含KEY的种类字段和信息字段,并输出KEY有效指示;对于不需要根据信息字段组成有效KEY的,直接输出KEY无效指示;将待识别的数据流的KEY均发送到TCAM查找模块;TCAM查找模块用于对组KEY模块输出的KEY进行TCAM条目查找,TCAM查找模块中包含根据数据流识别需求生成的TCAM条目,每个条目包含KEY的种类字段和KEY的信息字段;TCAM查找模块接收组KEY模块组成的待识别的数据流的KEY,将待识别的数据流的有效KEY分别输入TCAM条目查找是否有匹配项,对于无效KEY直接输出查找不匹配,将待识 ...
【技术特征摘要】
1.一种基于TCAM的数据流识别处理装置,其特征在于:包括组KEY模块,TCAM查找模块,查找结果判断模块和结果处理模块,其中:组KEY模块用于根据数据流识别需求按照组KEY配置进行组KEY,所述组KEY配置中设定了多种KEY的组成配置,每种KEY的组成配置包括每种KEY所用的信息字段和是否要按照信息字段组成有效KEY;对于需要根据信息字段组成有效KEY的,根据组KEY配置从待识别的数据流的各信息字段中选择生成每种KEY所用的信息字段,按照组KEY方法组成待识别的数据流的KEY,KEY中包含KEY的种类字段和信息字段,并输出KEY有效指示;对于不需要根据信息字段组成有效KEY的,直接输出KEY无效指示;将待识别的数据流的KEY均发送到TCAM查找模块;TCAM查找模块用于对组KEY模块输出的KEY进行TCAM条目查找,TCAM查找模块中包含根据数据流识别需求生成的TCAM条目,每个条目包含KEY的种类字段和KEY的信息字段;TCAM查找模块接收组KEY模块组成的待识别的数据流的KEY,将待识别的数据流的有效KEY分别输入TCAM条目查找是否有匹配项,对于无效KEY直接输出查找不匹配,将待识别的数据流的所有KEY对应的查找结果输出到查找结果判断模块,查找结果包括每个KEY对每个TCAM条目是否匹配;查找结果判断模块用于根据数据流识别需求生成的对应的查找判断配置判断出查找的匹配项,查找判断配置包括对每种KEY对应的查找结果进行单独判断或级联判断的配置;接收TCAM查找模块送入的待识别的数据流的KEY的所有查找结果,根据查找判断配置判断待识别的数据流的KEY的查找结果是否有匹配项,若存在,将所有匹配的TCAM条目的索引发送到匹配结果处理模块;结果处理模块用于根据数据流识别需求生成的与TCAM条目的各索引对应的处理行为配置得到对数据流的处理结果,所述处理行为配置包括与TCAM条目各索引对应的各处理行为以及各处理行为的优先级;接收查找结果判断模块送入的所有匹配TCAM条目的索引,使用各匹配TCAM条目的索引分别查找对应的处理行为配置得到各索引对应的各处理行为以及各处理行为的优先级,输出与待识别的数据流的所有KEY对应的各处理行为中优先级最高的处理行为。2.如权利要求1所述的一种基于TCAM的数据流识别处理装置,其特征在于:若数据流识别需求的某一个信息组的宽度小于TCAM的宽度,将该信息组配置成一种KEY,若需识别的数据流的某一个信息组的宽度大于TCAM的宽度,将该信息组配置成两种或两种以上的KEY。3.如权利要求2所述的一种基于TCAM的数据流识别处理装置,其特征在于:若数据流识别需求中的某信息组对应一种KEY,则查找结果判断模块判断是否有匹配项时只对待识别数据流中该种KEY对应的查找结果独立判断;若数据流识别需求中的某信息组对应两种或两种以上的KEY,则查找结果判断模块判断是否有匹配项时需对待识别数据流中与信息组对应的两种或两种以上的KEY对应的查找结果级联判断。4.如权利要求1所述的一种基于TCAM的数据流识别处理装置,其特征在于:每个KEY的组成为{key_id,key_pkt_info},key_id是KEY的种类字段,key_pkt_info是信息字段;每个KEY的组KEY配置为{key_valid,key_sel[n-1:0]};key_valid为‘1’表示要进行组KEY,否则不进行组KEY,key_sel的每个比特表示是否要选择相应的pkt_info进行组KEY;每个KEY的组KEY过程如下:步骤1:生成key_id和key_pkt_info:key_id[k-1:0]根据组KEY配置的条目号生成,宽度为k比特;key_pkt_info[s-k-1:0]为全‘0’,宽度为s-k;步骤2:采用移位的方法,根据key_sel[n-1:0]生成key_pkt_info[s-k-1:0]:首先判断key_sel[n-1],为‘1’时,将pkt_info(n-1)替换到key_pkt_info的低位,为‘0’时key_pkt_info不变;然后判断key_sel[n-2],为‘1’时,先将key_pkt_info左移信号pkt_info(n-2)的位宽,然后将pkt_info(n-2)替换到key_pkt_info的低位,为‘0’时key_pkt_info不变;依次进行其它比特的判断,当所有比特判断完得到key_pkt_info,在判断过程中自动将key_pkt_info裁剪为s-k比特。5.如权利要求1所述的一种基于TCAM的数据流识别处理装置,其特征在于:所述TCAM查找模块输出的查找结果信息包括{key0_hit_rslt,key1_hit_rslt,…,key(m-1)_hit_rslt},其中,key0_hit_rslt表示KEY0的查找结果,其它KEY结果类推,每个查找结果都是一个数组,数组的0比特对应第0个TCAM条目的判断结果,‘1’表示配置,其余比特类推。6.如权利要求5所述的一种基于TCAM的数据流识别处理装置,其特征在于:若查找判断配置为独立判断,则仅对该KEY的查找结果是否有匹配项进行独立判断;若查找判断配置为级联判断,则根据查找判断配置对需要进行级联判断的KEY的查找结果进行级联判断;具体过程如下:查找结果判断模块中包含一个查找判断配置数据库,包含每种KEY对应的查找判断配置;查找判断配置包括多个查处判断配置条目,每个查找判断配置条...
【专利技术属性】
技术研发人员:杨彦波,张艳,匡可,
申请(专利权)人:烽火通信科技股份有限公司,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。