一种基于UDF识别未知隧道报文的方法与流程

文档序号:19730021发布日期:2020-01-18 03:50阅读:586来源:国知局
一种基于UDF识别未知隧道报文的方法与流程

本发明属于隧道报文识别技术领域,具体涉及一种基于udf识别未知隧道报文的方法。



背景技术:

随着互联网业务高速发展,运营商在互联网骨干网上广泛采用了网络行为分析系统,其业务模块主要分为:网络游戏分析、在线视频分析、voip(voiceoverinternetprotocol,一种由ip网络传送话音的技术服务)监测分析、p2p(点对点)监测分析以及邮件检测分析等。另外随着金融网络规模的日益剧增,基于网络旁路部署的安全设备及流量分析设备也在逐渐增多。

在同时部署两个或以上的旁路监听设备之时不仅增加了核心交换机的性能开销,且不能满足各种安全设备灵活部署的需求。此外后端分析设备dpi(深度报文解析技术)还希望对捕获的流量进行裁剪,只关心部分流量,从而提高后端分析效率,这些信息的采集需要采用分流设备tap来实现。tap设备需要支持隧道剥离、基于隧道内层信息负载分担、同源同宿、报文截断等功能。

区别于格式相对固定的ip报文,gtp(generaldatatransferplatform,通用数据传输平台)、pppoe(pppoverethernet,以太网上的点对点协议)等未知隧道报文格式存在较大差异。一般的网络芯片并不能原生的识别解析出这类报文,这也是目前tap应用的痛点。以gtp报文为例,tap应用中需要识别gtp报文,解析gtp报文信息,识别出控制报文、数据报文。tap设备还要取出gtp隧道内层的数据信息,需要支持基于内层teid(隧道端点标识符)字段做限速;需要支持acl(访问控制列表)基于内层ip等字段信息做过滤;需要支持基于teid、内层ip等字段做负载分担。

现有asic通信芯片不支持解析未知隧道报文内层信息,一般通过acl访问列表过滤出未知隧道报文重定向到cpu,通过cpu解析未知隧道的内层信息,再做进一步的处理。但是,由于tap网络中需要处理的未知隧道报文较多,会冲击cpu,导致cpu占用率太高,影响其他业务。另外cpu本身处理未知隧道报文的性能不高,远低于asic的速率,无法实现线速处理。现有有通过在tap设备上额外加fpga(field-programmablegatearray,现场可编程门阵列)来解析未知隧道报文,但是额外加一个fpga,会导致整个tap设备成本增加。

因此,针对上述技术问题,有必要提供一种基于udf识别未知隧道报文的方法。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于udf识别未知隧道报文的方法。

为了实现上述目的,本发明一实施例提供的技术方案如下:

一种基于udf识别未知隧道报文的方法,所述方法包括:根据报文的外层信息类型字段,查找udfcam表,来匹配未知隧道报文,若匹配到,则再通过查找udfcam表取出所述报文任意位置的数据。

一实施例中,预先在asic芯片中配置多条用于匹配未知隧道报文的所述udfcam表。

一实施例中,若匹配到,所述udf取出报文的多段数据,每段数据位于报文的任意位置。

一实施例中,所述数据作为acl的关键字过滤报文。

一实施例中,所述数据参与链路聚合的哈希选路算法做负载分担。

一实施例中,所述数据支持掩码配置。

一实施例中,所述未知隧道报文包括gtp报文。

一实施例中,根据udp端口号查找udfcam表,来匹配gtp报文。

一实施例中,设置多段偏移量从gtp报文中相应取出多段数据。

一实施例中,通过acl再匹配所述多段数据,将gtp报文定向到一个链路聚合组,同时配置使用所述多段数据参与哈希算法选择链路聚合出口成员。

本发明具有以下有益效果:通过利用udf功能匹配未知隧道报文,实现报文的灵活处理,且还可以利用udf取出的字段做负载分担、acl过滤报文等,不依赖于cpu、fpga,降低成本。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明方法的流程示意图;

图2是本发明实施例的原理示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

本发明所揭示的一种基于udf识别未知隧道报文的方法,主要应用于对网络数据进行流量监控、安全分析要求较高的tap环境,如对未知隧道gtp报文分析的应用场景。

如图1所示,本发明所揭示的一种基于udf识别未知隧道报文的方法,包括以下步骤:

s1,根据报文的外层信息类型字段,查找udfcam表,来匹配未知隧道报文。

具体地,本实施例中,考虑到实际应用需求,预先在asic中放置了32条udfcam表,用于匹配未知隧道报文。即报文进入asic芯片后,根据报文的外层信息类型字段,查找udfcam表,通过udf关键字来匹配未知隧道报文。

s2,若匹配到,再通过查找udfcam表取出所述报文任意位置的数据。

具体地,利用udf设置多个偏移量,根据每个偏移量,从未知隧道报文中取出相应位置的数据,每个数据可以是报文的任意位置处的。如利用udf设置4个偏移量,分别是偏移0:32bits,偏移1:32bits,偏移2:32bits,偏移3:32bits,即从报文的四个位置处分别取一段数据,每段数据长度为32bits,共128bits,每段32bits数据可以是报文的任意位置。

被取出来的数据可以作为acl的关键字过滤报文,也可以参与linkagghash(链路聚合哈希)选路算法做链路负载分担等。另外,优选的,这4段32bits数据支持掩码配置。

结合图2所示,下面以一具体实施例来说明本发明的具体工作原理:

gtp协议报文通过udp(userdatagramprotocol,用户数据报协议)或者tcp(transmissioncontrolprotocol,传输控制协议)承载,目前有两个版本,本实施例以version1为例,即以未知隧道报文gtpv1报文为例:

gtp可以分解成三种独立的协议,gtp-c、gtp-u及gtp',这三种协议可以通过udp端口号来区分不同的gtp报文类型。其中,gtp-c报文的udp端口号是2123,gtp-u报文的udp端口号是2152,gtp'登记的udp/tcp端口号是3386。

udf根据udp端口号来匹配gtp报文,设置4段偏移量取出的teid或者内层的ip等信息。通过acl再匹配4段偏移量信息,把gtp报文重定向到一个linkagg组,同时配置使用这4段偏移量信息参与hash算法选择linkagg出口成员实现负载分担。

由以上技术方案可以看出,本发明具有以下优点:

本发明实现tap(testaccesspoint,分流器)设备通过udf就可以线速的处理未知隧道报文,不必依赖fpga增加成本。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。

为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本说明书一个或多个实施例的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1