CN106549815A - 用于网络中实时深度应用识别的设备和方法 - Google Patents
用于网络中实时深度应用识别的设备和方法 Download PDFInfo
- Publication number
- CN106549815A CN106549815A CN201510599159.4A CN201510599159A CN106549815A CN 106549815 A CN106549815 A CN 106549815A CN 201510599159 A CN201510599159 A CN 201510599159A CN 106549815 A CN106549815 A CN 106549815A
- Authority
- CN
- China
- Prior art keywords
- message
- application
- policy
- good application
- application identification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本申请公开了一种用于网络中实时深度应用识别的设备和方法。用于深度应用识别的设备包括至少一个深度应用识别传感器和深度应用识别控制器。所述至少一个深度应用识别传感器分布于网络中,每个传感器接收传入报文,识别传入报文中的应用信息,以及提供传出报文。所述深度应用识别控制器具有与所述至少一个深度应用识别传感器相连接的南向应用编程接口,从而所述深度应用识别控制器将策略规则推送至所述至少一个深度应用识别传感器,以及从所述至少一个深度识别传感器收集应用信息。通过从所述报文中的应用信息准确地识别应用,可以优化流量管理。
Description
技术领域
本发明涉及网络通信,更具体地,涉及用于网络中实时深度应用识别的设备和方法。
背景技术
互联网服务提供商(ISP)面临的挑战是兼顾网络传输效率和服务质量(QoS)。已经广泛地采用带宽的过度配置,以满足网络应用的需求。然而,网络应用的发展方向一直是增加的带宽消耗。诸如视频应用、点对点(P2P)应用等的新的网络应用近年来已经取得很大的成功。因此,ISP面临着针对新的应用扩展网络容量的巨大压力。网络流量与收益之间的不平衡或失配变得更大了。ISP已经难以基于“过度配置”来构建可以持续发展的网络。
当网络扩展投资的压力进一步增加时,需要采用智能网络流量管理。智能流量管理在网络层级识别用户和服务需求,进而通过智能资源调度提高网络传输效率。根据用于通信协议的层级参考模型,例如七层开放式系统互联,认为可以根据第3层协议信息和第4层端口信息识别网络应用。
然而,某些网络应用随机地改变其通信端口和协议,例如,诸如垃圾和蠕虫之类的应用伪装成广为人知的SMTP应用,其中使用动态端口。此外,某些网络应用迁移成基于网络的服务,具有相同的端口80,例如,基于网络的应用包括网页游戏、网页视频等。因此,协议信息和端口信息实际上不能用于指示网络应用的类型和带宽消耗。
在智能网络流量管理中,希望采用新的方法和设备来更准确和高效地识别网络应用。
发明内容
本发明的目的在于提供一种用于在网络中进行深度应用识别的方法和设备,其中通过报文中的应用信息识别网络应用,并且根据网络应用的带宽消耗优化流量管理。
根据本发明的一方面,提供一种用于网络中实时深度应用识别的设备,包括:至少一个深度应用识别传感器,分布于所述网络中;以及深度应用识别控制器,具有与所述至少一个深度应用识别传感器相连接的南向应用编程接口,其中,所述至少一个深度应用识别传感器中的每一个接收传入报文,识别与传入报文相关联的应用,以及在根据应用的带宽消耗优化流量管理之后提供传出报文,所述深度应用识别控制器通过所述南向应用编程接口,将策略规则推送至所述至少一个深度应用识别传感器。
优选地,所述深度应用识别控制器通过所述南向应用编程接口收集应用信息,并且具有北向应用编程接口,用于向上层应用提供网络状态和所述应用信息。
优选地,所述策略规则包括策略条件集和策略动作集,用于在满足所述策略条件集时执行所述策略动作集。
优选地,所述策略条件集中的至少一个策略条件包括匹配应用特征,该应用特征用于准确地识别所述应用。
优选地,所述策略动作集包括选自以下组中的至少一个动作:报文标记、报文修改、报文过滤、报文分类、报文复制以及报文信息提取,所述至少一个动作实时执行,并且影响和/或配置网络流量和网络资源。
优选地,所述上层应用为选自以下应用组的一种应用:网络规划应用、流量管理应用、按需提供服务应用和第三方应用。
优选地,所述深度应用识别控制器包括:应用支持功能实体,用于支持所述北向应用编程接口,并且通过所述北向编程接口从所述上层应用接收指令;策略业务流程功能实体,用于根据来自所述上层应用的所述指令产生深度应用识别策略规则;以及深度应用识别传感器抽象功能实体,用于支持开放式北向应用编程接口。
优选地,所述至少一个深度应用识别传感器包括策略信息库,并且在从所述深度应用识别控制器接收新的策略规则之后,修改后策略信息库中的本地策略规则。
优选地,所述至少一个深度应用识别传感器中的每一个,针对所述传入报文执行两阶段策略识别处理,包括策略条件的评估阶段和策略动作的执行阶段。
优选地,所述设备还包括用于所述评估阶段的扫描单元和分析单元以及用于执行阶段的策略动作单元,所述扫描单元用于扫描所述传入报文以收集所述应用信息,所述分析单元用于分析所述报文从而将所述应用信息与策略条件相关联,所述策略动作单元用于根据关联的策略条件针对所述报文执行策略动作。
优选地,所述至少一个深度应用识别传感器中的每一个,包括报文调度器和至少一个深度识别引擎单元。
优选地,所述深度应用识别引擎中的每一个,包括扫描单元和分析单元,所述扫描单元用于扫描所述传入报文以收集所述应用信息,所述分析单元用于分析所述报文从而将所述应用信息与策略条件相关联,所述包括策略动作单元,所述策略动作单元用于根据关联的策略条件针对所述报文执行策略动作。
优选地,所述报文调度器接收多个传入报文,并且根据负载均衡算法,将所述多个传入报文全部分配给所述深度应用识别引擎单元中的一个引擎单元。
优选地,所述报文调度器接收多个传入报文,并且根据负载均衡算法,将所述多个传入报文全部分配给所述深度应用识别引擎单元中的相应一个引擎单元。
优选地,所述至少一个深度应用传感器中的每一个,具有数据通道机制和控制通道机制,所述数据通道机制为传入报文经由扫描单元、分析单元和策略动作单元的流动,所述控制通道机制由所述多核处理器建立,与所述扫描单元、所述分析单元和所述策略动作单元形成接口,从而控制报文在所述深度应用识别引擎中的流动。
根据本发明的另一方面,提供一种用于网络中实时深度应用识别的方法,包括:将至少一个深度应用识别传感器分布于所述网络中;通过深度应用识别控制器的南向应用编程接口,将所述至少一个深度应用识别传感器与所述深度应用识别控制器相连接;通过所述南向应用编程接口,从所述深度应用识别控制器向所述至少一个深度应用识别传感器推送策略规则;采用所述至少一个深度应用识别传感器的相应一个,识别与传入报文相关联的应用;以及在根据所述应用的带宽消耗优化流量管理之后,采用所述至少一个深度应用识别传感器中的相应一个提供传出报文。
优选地,所述方法还包括通过所述南向应用编程接口收集应用信息,以及通过所述深度应用识别控制器的北向应用编程接口,所述深度应用识别控制器向上层应用提供网络状态和所述应用信息。
优选地,识别与所述传入报文相关联的应用的步骤包括:匹配应用特征,所述应用特征用于准确识别所述应用。
优选地,在识别与所述传入报文相关联的应用的步骤之后,所述方法还包括在满足策略组时执行策略动作组。
优选地,所述策略动作集包括选自以下组中的至少一个动作:报文标记、报文修改、报文过滤、报文分类、报文复制以及报文信息提取,所述至少一个动作实时执行,并且影响和/或配置网络流量和网络资源。
优选地,所述方法还包括在从所述深度应用识别控制器接收新的策略规则之后,修改后策略信息库中的本地策略规则。
优选地,识别应用的步骤包括:执行两阶段策略识别处理,包括策略条件的评估阶段和策略动作的执行阶段。
优选地,所述评估阶段包括扫描所述传入报文以收集所述应用信息,分析所述报文从而将所述应用信息与策略条件相关联,所述执行阶段包括根据关联的策略条件针对所述报文执行策略动作。
优选地,所述方法还包括所述在识别与所述传入报文相关联的应用之前,至少一个深度应用识别传感器中的相应一个接收所述传入报文。
优选地,在识别与所述传入报文相关联的应用之前,还包括接收多个传入报文,并且根据负载均衡算法,采用报文调度器将所述多个传入报文全部分配给所述深度应用识别引擎单元中的一个引擎单元。
优选地,在识别与所述传入报文相关联的应用之前,还包括接收多个传入报文,并且根据负载均衡算法,采用报文调度器将所述多个传入报文全部分配给所述深度应用识别引擎单元中的相应一个引擎单元。
根据本发明,所述用于网络中深度应用识别的设备通过从报文中的应用信息准确地识别应用,优化网络的流量管理。基于深度应用识别技术的不断发展的智能网络支持以下特征:通过报文的应用信息,例如通过应用特征,准确地识别应用;针对用户的服务订阅的自指定和网络资源,提供按需服务;基于智能深度应用识别和流量调度,进行网络规划和流量管理;应用抽象和请求第三方应用提供商。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:
图1为根据本发明的实施例的深度应用识别设备的架构的示意图。
图2为根据本发明的实施例的深度应用识别传感器的示意图。
图3为根据本发明的实施例的深度应用识别传感器的策略信息库的示意图。
图4为根据本发明的实施例的深度应用识别传感器中的两阶段深度应用识别处理的示意图。
图5为根据本发明的实施例的深度应用识别控制器的功能实体示意图。
图6为根据本发明的第一实施例的深度应用识别传感器中的深度应用识别引擎的示意图。
图7为根据本发明的第二实施例的深度应用识别传感器中的深度应用识别引擎的示意图。
图8为根据本发明的第三实施例的深度应用识别传感器中的深度应用识别引擎的示意图。
图9为根据本发明的实施例的采用多核处理器实现的转发引擎的硬件架构的示意图。
图10为根据本发明的实施例的深度应用识别方法的流程图。
图11是根据本发明的实施例的采用多核处理器实现的深度应用识别引擎的示意图。
具体实施方式
以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。
在说明书全文中,术语“应用”可以是任意的应用协议类型(例如,IP应用协议的ITU-T H.264视频,或者会话发起协议SIP)、应用类型的服务用户例程(例如,VoIP、VoLTE、VoIMS、VoNGN和VoP2P)、或者应用中的嵌入应用(例如,SIP或HTTP信息的体元素中的应用内容)。例如,应用类型的服务用户例程包括“语音分组应用”、“语音分组的提供商专用应用”。可以通过以下方式识别应用:扫描报文中的特定标识符,例如位字段、位模式、应用特征或正则表达式,作为“应用级条件”,即所有上述层级的应用的公共特性。
术语“应用特征”通常指识别应用和定义是否应当执行策略动作组的必要状态和/或必要条件的表示。应用特征也已知是策略条件的一部分。例如,应用特征在蠕虫的报文内容中可以是数字签名“worm Redcode I”,在视频流中的报文内容中可以是数字签名“MPEG 4”。相应地,策略条件将为匹配数字签名“worm Redcode I”,或者匹配数字签名“MPEG 4”。
图1为根据本发明的实施例的深度应用识别(DAA)设备100的架构的示意图。DAA设备100包括多个DAA传感器110和DAA控制器120。多个DAA传感器110分布于网络中。每个DAA传感器110接收报文,并且在识别与报文关联的网络应用之后发送报文。DAA控制器120具有开放式南向应用编程接口(API),与多个DAA传感器110相连接。通过开放式南向API,DAA控制器120将策略规则推送至相应的DAA传感器110,以指示多个DAA传感器110的动作,此外,通过开放式南向应用编程接口,DAA控制器120从多个DAA传感器110收集应用信息。
优选地,DAA控制器120可以具有开放式北向API,用于向上层应用提供网络状态和应用信息。上层应用例如执行网络规划、流量管理、按需提供服务、第三方应用等等。
图2为根据本发明的实施例的DAA传感器110的示意图。DAA传感器110包括DAA策略信息库(DAA-PIB),并且执行两阶段深度应用识别处理。在从DAA控制器120接收到策略规则时,DAA传感器110修改DAA-PIB中的本地策略规则。因而,DAA传感器110的实际行为可以实时修改。
在DAA-PIB中存储策略规则。多个策略规则决定了DAA传感器110的实际行为。策略规则包括两个主要部分:策略条件集和策略动作集,如图3所示。当应用策略规则时,策略条件集与策略动作集相关联。
策略条件在网络通信中是本领域技术人员公知的。然而,本文所述的策略条件与已知的策略条件不同之处在于至少一个策略条件包含应用特征,从而可以准确地识别与传入报文相关联的应用。
策略条件必须包含应用层级的条件,并且可以包含诸如状态条件之类的其他选项。可选地,策略条件可以包括状态条件、流描述符或流级条件、应用描述符或应用级条件。状态条件包括服务条件的网络评级(例如,报文通道中的经验性阻塞),或者网络元素状态(例如,DPI-FE的本地过载条件)。流描述符或流级条件包括报文内容(头部字段)、报文的特性(例如MPLS标签的序号)、或者报文处理(例如,DPI-FE的输出接口)。应用描述符或应用级条件包括报文内容(应用头部字段和应用负载)。如上所述,策略条件可以是数字签名与报文内容中的数字签名相匹配。
两阶段深度应用识别处理包括:策略条件的评估阶段和策略动作的执行阶段。如图4所示,在应用策略条件的评估阶段,连续采用扫描单元111和分析单元112处理传入报文。然后,在策略动作的执行阶段,采用策略动作单元处理报文,并且输出为传出报文。策略动作用于定义在符合策略条件时,执行哪种策略动作以实现策略规则。策略动作包括报文标记、报文修改、报文过滤、报文分类、报文复制、提取应用信息等。
扫描单元111针对传入报文,实时检查策略条件。策略规则的范围可以覆盖由节点转发的整个实时报文流量,或者限于特定的报文流。例如,报文流可以是应用例程之间的端对端会话的主题。例如,在IP应用的情形下,端对端会话可以包括基于HTTP、RTSP、SIP、FTP等的会话。通常,会话专用策略规则的实现称为会话相关策略,这与会话无关策略相反。会话无关策略与策略实现节点的整个流量会聚的策略规则相关。在本申请中,流和会话的概念并非特定的,因为这与所示的高级功能模型不相关。
分析单元112进一步执行策略条件的实时验证。分析单元112以与扫描单元111组成流水线的方式工作,在扫描单元111初始筛选每个报文之后进一步处理。例如,扫描功能可以将传入报文与特定的应用(例如IP应用)相关联,然后分析功能可以提供报文的特定应用实时评估。扫描单元111和分析单元112划分的一般原则与串行和/或层级策略执行概念相关,例如为了满足实时性能目的。
在执行阶段,在实时扫描和分析之后,如果满足策略条件,则对报文执行策略行为,以实现策略规则。策略行为包括:报文标记、报文修改、报文过滤、报文分类、报文复制以及应用信息提取,所述策略行为实时执行,并且影响和/或配置网络流量和网络资源。
根据本发明的DAA传感器110,即使应用的报文包含混淆的协议信息和端口信号,通过匹配报文内容中的签名“worm Redcode I’”,仍然可以检测蠕虫,通过匹配报文内容中的签名“MPEG 4’”,仍然可以检测视频流。因而,可以实现在持续发展的智能应用和服务识别网络中使用的细粒度流量管理。
图5为根据本发明的实施例的DAA控制器120的功能实体示意图。DAA控制器120包括应用支持功能实体、策略业务流程功能实体、以及DAA传感器抽象功能实体。
应用支持功能实体支持开放式北向API,使得DAA控制器110从上层应用接收指令,并且通过开放式北向API向上层应用提供网络状态和应用信息。策略业务流程功能实体根据来自所述上层应用的所述指令产生深度应用识别策略规则。DAA传感器抽象功能实体支持开放式南向API,使得DAA控制器110通过开放式南向API向多个DAA传感器110推送策略规则,以及通过开放式南向API从DAA传感器110收集应用信息。
上层应用例如执行网络规划、流量优化、提供按需服务等,指示DAA控制器120以产生策略规则。上层应用的主要作用是实时DAA决策。DAA策略管理典型地是通用策略管理实体的一部分,该通用策略管理实体还用于类似“遗留”的IP报文策略规则的非策略规则的管理。上层应用典型地在地理位置上远离网络元件。来自DAA传感器110的反馈信息可能向DAA控制器120发出警报,并且进一步向上层应用发出警报。
图6为根据本发明的第一实施例的DAA传感器中的DAA引擎212的示意图。DAA引擎212的基本流量模型具有单个外部接口和单个输出接口。DAA引擎212执行所有的报文通道处理功能,并且是DAA设备的子部件和核心部分。DAA引擎212可以在内部实现为分布式系统,例如由一系列链接的处理元件组成。例如,示例功能模型表示三个处理阶段,称为“DAA扫描”、“DAA分析”和“DAA动作执行”(缩写分别为DAA-ScF、DAA-AnF和DAA-AcEF)。
图7为根据本发明的第二实施例的DAA传感器中的DAA引擎312的示意图。DAA引擎312的扩展流量模型具有单个外部接口和内部的并行机制。DAA引擎312具有报文调度器和第一至第K个DAA引擎单元。每个引擎单元可以具有与图6所示的DAA引擎212相同的功能模型,即包括三个实时处理阶段,DAA-ScF、DAA-AnF和DAA-AcEF。报文调度器接收多个传入报文,并且将传入报文分配给相应的一个DAA引擎单元。例如,报文调度器可以简单地执行负载均衡算法(即仅仅基于DAA引擎服务器的预估负载状态进行调度),或者执行任意类型的调度方法。因而,DAA引擎312由于多个选定的报文流的离线处理而具有高的处理能力。
图8为根据本发明的第三实施例的DAA传感器中的DAA引擎412的示意图。DAA引擎412的扩展流量模型具有多个外部接口和内部的并行机制。DAA引擎412可以位于网络核心层级,具有多个物理接口。DAA引擎412具有报文调度器和第一至第K个DAA引擎单元。每个引擎单元可以具有与图6所示的DAA引擎212相同的功能模型,即包括三个实时处理阶段,DAA-ScF、DAA-AnF和DAA-AcEF。报文调度器接收多个传入报文,并且将每个传入报文分配给各个DAA引擎单元。例如,报文调度器可以简单地执行负载均衡算法(即仅仅基于DAA引擎服务器的预估负载状态进行调度),或者执行任意类型的调度方法。通常要求所有的引擎单元(即第一至第K个引擎单元)应当连接至所有的传入报文接口(即第一至第N个传入报文接口)。报文调度器可能需要执行N至K报文切换交换功能。因而,DAA引擎412由于多个选定的报文流的离线处理而具有高的处理能力。
图9为根据本发明的实施例的采用多核处理器实现的转发引擎(缩写为F-引擎)的硬件架构的示意图。本文中的F-引擎例如是用于实现图1所示的DAA设备100的嵌入式系统。F-引擎DAA-1的整个系统包括电源板、系统主板和显示板。电源板将交流电转换成直流电,并且向整个系统提供3.3V、5V和12V的稳定直流电力。显示板提供设备操作提示信息,包括电源信号指示、POS(STM-6)接口信号指示,以及32个10/100/1000M以太网接口指示。
硬件架构主要包括多核处理器(即转发引擎)。例如,多核处理器可以是购自Cavium网络公司的CN68XX多核处理器。CN68XX多核处理器包括高达32个MIPS 64位处理器内核,内核频率高达1.5GHz,在单个芯片中实现高达96.0GOPS。该多核处理器支持硬件报文处理加速,硬件工作排队、调度、排序和同步,以及硬件TCP加速、包括校验和定时。该多核处理器支持硬件正则表达式加速引擎,其线路速率性能高达40Gbps。下文将参照CN68XX多核处理器来进行描述。本领域的技术人员可以理解,可以使用其他类型的多核处理器,只要这些处理器具有部分或全部相同的功能即可。
多核处理器具有单个参考时钟信号(PLL_REF_CLK),该参考时钟信号馈入三个锁相环PLL(即内核PLL、协处理器PLL和DDR PLL),从而向芯片的其他部分提供时钟信号。每个锁相环PLL具有自己的一组PLL_REF_CLK倍增器,从而允许每个锁相环PLL产生自身的频率。
多核处理器的CPU内核是全功能的高性能MIPS 64位整型实体。这些内核直接支持工业标准的C/C++以及其他的编程环境。这些内核和多核处理器的片上系统符合所有必要的需求,包括传输后备缓冲器TLB,用于启动和运行全功能的操作系统。这些内核特征允许多核处理器的富特性利用,并且对于简化编程任务也是必要的。多核处理器具有“数据面”应用所需的高性能,同时避免了在某些竞争的“数据面”处理器中存在的代码/数据量限制。多核处理器包括除了MIPS 64位整型指令之外的许多内核指令。这些内核指令包括用于加速报文处理、安全处理和存储器/缓存处理的指令。在多核处理器上执行大量的硬件加速,然而,CPU内核引导复杂的高层级应用特定的处理。
共享主内存(通过二级缓存和DRAM实现)是多核处理器中的批量传输的主要通信载体。I/O设备和协处理器通过DMA方式访问该存储器,以传送报文和其他数据。多核处理器的二级缓存由所有的CPU内核共享,硬件设备通过DMA方式访问指令/数据。二级缓存可以分区,并且可以基于逐次引用(reference-by-reference)旁路。I/O设备可以通过DMA方式访问二级存储器的数据。针对所有的直接内存访问DMA和其他内核访问,多核处理器的硬件总是维持二级缓存和CPU-内核-数据-缓存的一致性。
采用软件和芯片配置可以将内核分成执行不同的功能。例如,某些内核可以运行操作系统,而其他内核执行数据面功能,或者,不同的内核可以执行数据面服务的不同部分。
多核处理器具有内联硬件(in-line hardware),使得内核可以不再执行所有的数据移动、许多公共报文解析功能和其他重要的计算功能。内联硬件可以使得内核完全不执行这些工作。
多核处理器的内联报文处理硬件单元在内核接收报文之前至少完成以下一些任务:分配DRAM缓存以保存报文字节;按照对上层级软件便利的格式,通过DMA操作将报文的数据发送到DRAM缓存中,这些格式可以是免费的内核软件;解析第2层或第3层IP报文;针对每个传入报文检查常见异常条件,例如,第4层TCP/UDP检验和检查;通过可编程7元组分类(7-tuple classification),执行可选的互斥操作(mutualexclusion);通过直接内存访问(DMA)从选定的输出队列收集报文发送命令,以及清空可用的的队列空间;通过DMA从二级缓存/DRAM收集报文的数据,其中存在多种模式用于收集非邻接的报文数据;产生TCP/UDP校验和,其中仅仅读出一次二级缓存/DRAM,就可以同时计算校验和和发送报文;以及清空DRAM缓存。
多核处理器具有直接由硬件实现的一些必要的动作能力。硬件实现了8个独立的输入工作队列。内联输入报文处理硬件可以采用逐个端口配置的缺省值、DSA/VLAN优先级和IP区分服务值(IP Diffserv value),将报文分类成8个工作队列之一。该系统也可以逐个报文选择工作队列。内联输入报文处理硬件可以在缓存和提供至内核之前舍弃输入报文。硬件执行随机早期舍弃(RED)算法和阈值算法以决定何时或是否舍弃输入报文。RED之类的算法可以针对8个QoS层级的每一个差异化配置,阈值算法可以针对不同的端口差异化配置。每个输出端口可以配置为具有多个队列。可以将队列配置为具有不同的优先级。硬件执行静态优先级以及加权轮循调度。
在多核处理器上通过内核软件执行其余的动作功能。例如,硬件从不决定丢弃传出报文,这总是由软件实现。
SDRAM单元最高支持512M字节。尽管访问SDRAM的速度相对较低,但SDRAM具有大的存储空间和便宜的价格。因此,SDRAM可以用于存储具有大容量的数据结构(如报文、路由表等等),在系统运行时存储操作代码等。SDRAM单元解码命令、读写数据、检测命令等等。
SDRAM单元可以提供用于多种设备的通用总线接口。这些设备包括最高达8M字节的SSRAM、FLASH或E-PROM以及其他内部存储器(如CAM)、加密设备,以及MAC或PHY设备的控件状态接口。访问SRAM的速度相对较快。然而,SRAM具有较小的存储空间,主要用于存储需要快速访问的数据结构,例如查找表和缓冲区描述符。多核处理器可以访问SRAM。外部接口可以包括32人命关天数据总线、19位地址总线和控制信号。总线的工作频率是多核处理器的内核频率的一半。
与SDRAM接口相比,由SRAM提供的内部存储器的访问延迟较小且速度较快。SRAM主要用于提供查找表,以及在网络处理器移动数据时使用。在本实施例中,SRAM主要用于存储队列描述符和报文描述符。
PCI和以太网接口用于在移植操作系统时下载操作系统、执行配置管理、错误管理、本地盘的性能管理、系统测试等等。此外,PCI和以太网接口还承担服务流管理和提供诸如特殊信令的服务。串行端口承担对本地盘的在线配置,用于调试和网络管理。
采用多核处理器实现图1的DAA设备10。当报文到达接口时,报文进入网络层级的“输入队列”缓冲通道,然后顺序通过DAA扫描单元、分析单元和策略动作单元,参见图6所示的示例性功能模型,其中示出了三个实时处理阶段:DAA-ScF、DAA-AnF和DAA-AcEF。
图10为根据本发明的实施例的深度应用识别方法的流程图。该方法包括:在步骤S01,将多个深度应用识别传感器分布于所述网络中;通在步骤S02,过深度应用识别控制器的南向应用编程接口,将所述多个深度应用识别传感器与所述深度应用识别控制器相连接;在步骤S03,通过所述南向应用编程接口,从所述深度应用识别控制器向所述多个深度应用识别传感器推送策略规则;在步骤S04,采用所述多个深度应用识别传感器的相应一个,识别与传入报文相关联的应用;在步骤S05,在根据所述应用的带宽消耗优化流量管理之后,采用所述多个深度应用识别传感器中的相应一个提供传出报文。
优选地,所述方法还包括通过所述南向应用编程接口收集应用信息,以及通过所述深度应用识别控制器的北向应用编程接口,所述深度刘小溪和识别控制器向上层应用提供网络状态和所述应用信息。
优选地,识别与所述传入报文相关联的应用的步骤包括:匹配应用特征,所述应用特征用于准确识别所述应用。
优选地,在识别与所述传入报文相关联的应用的步骤之后,所述方法还包括在满足策略组时执行策略动作组。
优选地,所述策略动作集包括选自以下组中的至少一个动作:报文标记、报文修改、报文过滤、报文分类、报文复制以及报文信息提取,所述至少一个动作实时执行,并且影响和/或配置网络流量和网络资源。
优选地,所述方法还包括在从所述深度应用识别控制器接收新的策略规则之后,修改后策略信息库中的本地策略规则。
优选地,识别应用的步骤包括:执行两阶段策略识别处理,包括策略条件的评估阶段和策略动作的执行阶段。
优选地,所述评估阶段包括扫描和分析单元,所述扫描单元用于扫描所述传入报文以收集所述应用信息,所述分析单元用于分析所述报文从而将所述应用信息与策略条件相关联,所述执行阶段包括策略动作单元,所述策略动作单元用于根据关联的策略条件针对所述报文执行策略动作。
优选地,该方法还包括所述在识别与所述传入报文相关联的应用之前,多个深度应用识别传感器中的相应一个接收所述传入报文。
优选地,在识别与所述传入报文相关联的应用之前,还包括接收多个传入报文,并且根据负载均衡算法,采用报文调度器将所述多个传入报文全部分配给所述深度应用识别引擎单元中的一个引擎单元。
优选地,在识别与所述传入报文相关联的应用之前,还包括接收多个传入报文,并且根据负载均衡算法,采用报文调度器将所述多个传入报文全部分配给所述深度应用识别引擎单元中的相应一个引擎单元。
图11是根据本发明的实施例的采用多核处理器实现的DAA引擎的示意图。此处的DAA引擎例如是用于实现图6所示基本流量模型的DAA引擎212的嵌入式系统。在嵌入式系统中建立DAA-PIB。通过控制总线执行功能单元的互动和配置。一方面,多核处理器通过内核实现快速通道处理功能。另一方面,多核处理器通过选定的内核实现控制面和管理面的功能。数据通道机制是传入报文流经DAA扫描单元、分析单元和策略动作单元。通过多核处理器建立控制通道机制,从而与DAA扫描单元、分析单元和策略动作单元形成接口,以控制报文在DAA引擎212中的流动。传入报文经过DAA引擎212的操作,然后输出到内部通道,流入输出队列,从而再次回到网络中。
本领域技术人员应该明白,在上述的实施例中描述了采用多核处理器实现的的硬件架构。多核处理器由于包含内联硬件用于执行部分的处理功能,因而是优选的。然而,本发明不限于此。DAA引擎212可以通过软件、硬件或软硬件结合实现,软件包括JAVA、C/C++/C#、SQL等各种编程语言编码程序,硬件逻辑组件可包括:现场可编程的门阵列(FPGA)、程序和应用专用集成电路(PASIC/ASIC)、程序和应用专用标准产品(((PSSP/ASSP)))、片上系统(SOC)、以及复杂的可编程逻辑设备(CPLD)。软硬件结合则通过两方面组合和优化实现预定的功能。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。因此,倘若本发明的这些改动和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (17)
1.一种用于网络中实时深度应用识别的设备,包括:至少一个深度应用识别传感器,分布于所述网络中;以及深度应用识别控制器,具有与所述至少一个深度应用识别传感器相连接的南向应用编程接口,其中,所述至少一个深度应用识别传感器中的每一个接收传入报文,识别与传入报文相关联的应用,以及在根据应用的带宽消耗优化流量管理之后提供传出报文,所述深度应用识别控制器通过所述南向应用编程接口,将策略规则推送至所述至少一个深度应用识别传感器。
2.根据权利要求1所述的设备,其中所述深度应用识别控制器通过所述南向应用编程接口收集应用信息,并且具有北向应用编程接口,用于向上层应用提供网络状态和所述应用信息。
3.根据权利要求2所述的设备,其中,所述策略规则包括策略条件集和策略动作集,用于在满足所述策略条件集时执行所述策略动作集。
4.根据权利要求3所述的设备,其中,所述策略条件集中的至少一个策略条件包括匹配应用特征,该应用特征用于准确地识别所述应用。
5.根据权利要求3所述的设备,其中,所述策略动作集包括选自以下组中的至少一个动作:报文标记、报文修改、报文过滤、报文分类、报文复制以及报文信息提取,所述至少一个动作实时执行,并且影响和/或配置网络流量和网络资源。
6.根据权利要求3所述的设备,其中,所述深度应用识别控制器包括:应用支持功能实体,用于支持所述北向应用编程接口,并且通过所述北向编程接口从所述上层应用接收指令;策略业务流程功能实体,用于所述指令从所述上层应用产生深度应用识别策略规则;以及深度应用识别传感器抽象功能实体,用于支持开放式北向应用编程接口。
7.根据权利要求3所述的设备,其中所述至少一个深度应用识别传感器包括策略信息库,并且在从所述深度应用识别控制器接收新的策略规则之后,修改后策略信息库中的本地策略规则。
8.根据权利要求3所述的设备,其中,所述至少一个深度应用识别传感器中的每一个,针对所述传入报文执行两阶段策略识别处理,包括策略条件的评估阶段和策略动作的执行阶段。
9.根据权利要求8所述的设备,还包括用于所述评估阶段的扫描单元和分析单元以及用于执行阶段的策略动作单元,所述扫描单元用于扫描所述传入报文以收集所述应用信息,所述分析单元用于分析所述报文从而将所述应用信息与策略条件相关联,所述策略动作单元用于根据关联的策略条件针对所述报文执行策略动作。
10.根据权利要求3所述的设备,其中,所述至少一个深度应用识别传感器中的每一个,包括报文调度器和至少一个深度识别引擎单元。
11.根据权利要求10所述的设备,其中,所述深度应用识别引擎单元中的每一个,包括:扫描单元,用于扫描所述传入报文以收集应用信息;分析单元,用于分析所述传入报文,从而将所述应用信息与策略条件相关联;以及策略动作单元,用于根据所述关联的策略条件执行策略动作。
12.一种用于网络中实时深度应用识别的方法,包括:将至少一个深度应用识别传感器分布于所述网络中;通过深度应用识别控制器的南向应用编程接口,将所述至少一个深度应用识别传感器与所述深度应用识别控制器相连接;通过所述南向应用编程接口,从所述深度应用识别控制器向所述至少一个深度应用识别传感器推送策略规则;采用所述至少一个深度应用识别传感器的相应一个,识别与传入报文相关联的应用;以及在根据所述应用的带宽消耗优化流量管理之后,采用所述至少一个深度应用识别传感器中的相应一个提供传出报文。
13.根据权利要求12所述的方法,还包括通过所述南向应用编程接口收集应用信息,以及通过所述深度应用识别控制器的北向应用编程接口,所述深度应用识别控制器向上层应用提供网络状态和所述应用信息。
14.根据权利要求12所述的方法,其中,识别与所述传入报文相关联的应用的步骤包括:匹配应用特征,所述应用特征用于准确识别所述应用。
15.根据权利要求12所述的方法,在识别与所述传入报文相关联的应用的步骤之后,还包括在满足策略组时执行策略动作组。
16.根据权利要求15所述的方法,其中,所述策略动作集包括选自以下组中的至少一个动作:报文标记、报文修改、报文过滤、报文分类、报文复制以及报文信息提取,所述至少一个动作实时执行,并且影响和/或配置网络流量和网络资源。
17.根据权利要求12所述的方法,还包括在从所述深度应用识别控制器接收新的策略规则之后,修改后策略信息库中的本地策略规则。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510599159.4A CN106549815B (zh) | 2015-09-17 | 2015-09-17 | 用于网络中实时深度应用识别的设备和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510599159.4A CN106549815B (zh) | 2015-09-17 | 2015-09-17 | 用于网络中实时深度应用识别的设备和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106549815A true CN106549815A (zh) | 2017-03-29 |
CN106549815B CN106549815B (zh) | 2020-05-05 |
Family
ID=58362511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510599159.4A Active CN106549815B (zh) | 2015-09-17 | 2015-09-17 | 用于网络中实时深度应用识别的设备和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106549815B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110098970A (zh) * | 2018-01-30 | 2019-08-06 | 江苏博智软件科技股份有限公司 | 一种基于多框架的高性能协议还原模块 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1921457A (zh) * | 2006-09-18 | 2007-02-28 | 杭州华为三康技术有限公司 | 一种网络设备和基于多核处理器的报文转发方法 |
CN101350781A (zh) * | 2008-07-31 | 2009-01-21 | 成都市华为赛门铁克科技有限公司 | 一种流量监控的方法、设备和系统 |
CN101562560A (zh) * | 2008-04-18 | 2009-10-21 | 北京启明星辰信息技术股份有限公司 | 一种通用流量控制方法及系统 |
CN101729308A (zh) * | 2009-06-01 | 2010-06-09 | 中兴通讯股份有限公司 | 一种策略控制的方法和装置 |
CN102209032A (zh) * | 2011-05-24 | 2011-10-05 | 北京网康科技有限公司 | 一种用户自定义的应用识别方法及其设备 |
US8111692B2 (en) * | 2007-05-31 | 2012-02-07 | Embarq Holdings Company Llc | System and method for modifying network traffic |
-
2015
- 2015-09-17 CN CN201510599159.4A patent/CN106549815B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1921457A (zh) * | 2006-09-18 | 2007-02-28 | 杭州华为三康技术有限公司 | 一种网络设备和基于多核处理器的报文转发方法 |
US8111692B2 (en) * | 2007-05-31 | 2012-02-07 | Embarq Holdings Company Llc | System and method for modifying network traffic |
CN101562560A (zh) * | 2008-04-18 | 2009-10-21 | 北京启明星辰信息技术股份有限公司 | 一种通用流量控制方法及系统 |
CN101350781A (zh) * | 2008-07-31 | 2009-01-21 | 成都市华为赛门铁克科技有限公司 | 一种流量监控的方法、设备和系统 |
CN101729308A (zh) * | 2009-06-01 | 2010-06-09 | 中兴通讯股份有限公司 | 一种策略控制的方法和装置 |
CN102209032A (zh) * | 2011-05-24 | 2011-10-05 | 北京网康科技有限公司 | 一种用户自定义的应用识别方法及其设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110098970A (zh) * | 2018-01-30 | 2019-08-06 | 江苏博智软件科技股份有限公司 | 一种基于多框架的高性能协议还原模块 |
Also Published As
Publication number | Publication date |
---|---|
CN106549815B (zh) | 2020-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11375250B2 (en) | Dynamic load balancing for video analytics pipelines | |
CN105721535B (zh) | 用于对服务功能链中的服务功能进行并行处理的计算设备、方法以及机器可读存储介质 | |
CN105308916B (zh) | 多媒体传输网络中用于控制媒体传递的方法和装置 | |
US9531777B2 (en) | Distributing intelligence across networks | |
DE102020132078A1 (de) | Ressourcenzuteilung basierend auf anwendbarem service level agreement | |
CN110249596A (zh) | 用于saas应用的基于qos的分类和优先级排序的学习技巧 | |
WO2016054992A1 (zh) | 网络数据采集系统及方法 | |
Yap et al. | Scheduling packets over multiple interfaces while respecting user preferences | |
US20130100803A1 (en) | Application based bandwidth control for communication networks | |
Riccobene et al. | Automated generation of VNF deployment rules using infrastructure affinity characterization | |
Du et al. | Application specific mobile edge computing through network softwarization | |
CN115865836A (zh) | 使用网络设备的内容注入 | |
CN103780501A (zh) | 一种不可分小波支持向量机的对等网络流量识别方法 | |
WO2018149228A1 (zh) | 报文发送方法及装置 | |
Mondal et al. | A dynamic network traffic classifier using supervised ML for a Docker-based SDN network | |
Wong et al. | Container deployment strategy for edge networking | |
CN104363187A (zh) | 一种物联网网关资源响应方法和装置 | |
CN107357740B (zh) | 一种序列化器自动配置方法、装置及分布式缓存系统 | |
CN106549815A (zh) | 用于网络中实时深度应用识别的设备和方法 | |
US20220007382A1 (en) | Model-assisted deep reinforcement learning based scheduling in wireless networks | |
CN103747488B (zh) | 载波均衡的方法、装置及系统 | |
CN110956349B (zh) | 服务质量分析方法、系统、装置、服务器及电子设备 | |
US20240012459A1 (en) | Renewable energy allocation to hardware devices | |
Bagley et al. | Live video transmission over data distribution service with existing low-power platforms | |
US20240073143A1 (en) | In-network computation and control of network congestion based on in-network computation delays |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |