CN102938739B - 深度报文检查方法与装置 - Google Patents
深度报文检查方法与装置 Download PDFInfo
- Publication number
- CN102938739B CN102938739B CN201210486607.6A CN201210486607A CN102938739B CN 102938739 B CN102938739 B CN 102938739B CN 201210486607 A CN201210486607 A CN 201210486607A CN 102938739 B CN102938739 B CN 102938739B
- Authority
- CN
- China
- Prior art keywords
- message
- service node
- detection device
- deep
- feature
- 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.)
- Active
Links
Abstract
本发明实施例提供一种深度报文检查方法与装置,方法包括:深度报文检查装置接收转发面装置转发的第一报文;深度报文检查装置根据第一报文中的传输控制协议以及网际协议族的应用层的第一特征以及第一特征与第一业务节点的第一对应关系确定第一业务节点;深度报文检查装置向第一业务节点发送第二报文,第二报文中包含第一报文的信息。上述技术方案改善了现有技术对报文的处理方式不够灵活的技术问题。
Description
技术领域
本发明涉及网关验证技术,尤其涉及一种深度报文检查方法与装置。
背景技术
深度报文检查(deep packet inspection,DPI)技术是一种流量检测技术。深度报文检查技术可以用于带宽管理和控制。深度报文检查技术应用地越来越广泛。随着网络安全威胁逐渐集中在OSI model(Open System Interconnectmodel,开放系统互联模型)的高层,网络安全技术需要了解报文的应用层的内容,才能进行有效的攻击防御。
现有技术中,业务节点中包含了报文检查模块以及业务处理模块。在需要对同一个报文进行多种业务处理并且不同的业务处理需要由不同的业务节点执行的情况下,需要预先确定处理顺序,报文根据预先确定的处理顺序,依次到达不同的业务节点进行业务处理。现有技术中对报文的分发方式不够灵活。
发明内容
本发明提供一种深度报文检查的方法与装置,以改善现有技术对报文的处理方式不够灵活的技术问题。
第一个方面,提供了一种深度报文检查方法,包括:
深度报文检查装置接收转发面装置转发的第一报文;
所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族的应用层的第一特征以及所述第一特征与第一业务节点的第一对应关系确定所述第一业务节点,所述第一业务节点能够对接收到的报文进行第一业务处理;和
所述深度报文检查装置向所述第一业务节点发送第二报文,所述第二报文中包含所述第一报文。
上述技术方案中,所述深度报文检查装置可以根据所述第一特征确定第一业务节点,并向所述第一业务节点发送所述第二报文。上述技术方案改善了现有技术对报文的处理方式不够灵活的技术问题。
在所述第一方面提供的所述深度报文检查方法的第一种可能的实现方式中,所述深度报文检查装置接收所述转发面装置转发的所述第一报文之后,以及所述深度报文检查装置向所述第一业务节点发送所述第二报文之前,所述方法还包括:
所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;
所述深度报文检查装置根据所述第一报文中的所述第一特征以及所述第一特征与所述第一业务节点的所述第一对应关系确定所述第一业务节点之后,所述深度报文检查装置根据所述第一报文中的所述第二特征以及所述第二特征与所述第二业务节点的所述第二对应关系确定所述第二业务节点之后,以及所述深度报文检查装置向所述第一业务节点发送所述第二报文之前,所述方法还包括:
所述深度报文检查装置将所述第一报文封装为所述第二报文,所述第二报文包括所述第二业务节点的标识,所述第二报文用于指示所述第一业务节点对所述第二报文进行所述第一业务处理后,根据所述第二报文中的所述第二业务节点的标识将所述第二报文转发至所述第二业务节点。
在所述第一方面提供的所述深度报文检查方法的第二种可能的实现方式中,所述第二报文为所述第一报文。
在所述第一方面提供的所述深度报文检查方法的第三种可能的实现方式中,所述深度报文检查装置接收所述转发面装置转发的所述第一报文之后,以及所述深度报文检查装置向所述第一业务节点发送所述第二报文之前,所述方法还包括:
所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;
所述深度报文检查装置根据所述第一报文中的所述第二特征以及所述第二特征与所述第二业务节点的所述第二对应关系确定所述第二业务节点之后,所述方法还包括:
所述深度报文检查装置向所述第二业务节点发送所述第二报文。
根据所述第一方面提供的所述深度报文检查方法、所述第一方面提供的所述深度报文检查方法的第一种可能的实现方式、所述深度报文检查方法的第二种可能的实现方式以及所述深度报文检查方法的第三种可能的实现方式,在所述第一方面提供的所述深度报文检查方法的第四种可能的实现方式中,所述第二报文用于使所述第一业务节点向所述转发面装置发送信令,所述信令用于使所述转发面装置丢弃第三报文,所述第三报文中的传输控制协议层以及网际协议族的数据链路层、网际协议层或者传输层中的字段与所述第一报文中的传输控制协议层以及网际协议族的数据链路层、网际协议层或者传输层中的对应字段相同。
根据所述第一方面提供的所述深度报文检查方法、所述第一方面提供的所述深度报文检查方法的第一种可能的实现方式、所述深度报文检查方法的第二种可能的实现方式、所述深度报文检查方法的第三种可能的实现方式以及所述第一方面提供的所述深度报文检查方法的第四种可能的实现方式,在所述第一方面提供的所述深度报文检查方法的第五种可能的实现方式中,所述深度报文检查装置接收所述转发面装置转发的所述第一报文之前,所述方法还包括:
所述深度报文检查装置接收所述第一业务节点发送的消息,所述消息包括所述第一特征以及所述第一业务节点的标识;和
所述深度报文检查装置根据所述消息中的所述第一特征以及所述第一业务节点的标识,生成所述第一对应关系。
第二方面,提供了一种深度报文检查装置,包括:
接收单元,用于接收转发面装置转发的第一报文;
第一确定单元,用于根据所述接收单元接收的所述第一报文中的传输控制协议以及网际协议族的应用层的第一特征以及所述第一特征与第一业务节点的第一对应关系确定所述第一业务节点,所述第一业务节点能够对接收到的报文进行第一业务处理;和
发送单元,用于向所述第一确定单元确定的所述第一业务节点发送第二报文,所述第二报文中包含所述第一报文。
上述技术方案中,所述深度报文检查装置可以根据所述第一特征确定第一业务节点,并向所述第一业务节点发送所述第二报文。上述技术方案改善了现有技术对报文的处理方式不够灵活的技术问题。
在所述第二方面提供的所述深度报文检查装置的第一种可能的实现方式中,还包括:
第二确定单元,用于根据所述接收单元接收的所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;以及
封装单元,用于将所述第一报文封装为所述第二报文,所述第二报文包括所述第二确定单元确定的所述第二业务节点的标识,所述第二报文用于指示所述第一业务节点对所述第二报文进行所述第一业务处理后,根据所述第二报文中的所述第二业务节点的标识将所述第二报文转发至所述第二业务节点。
在所述第二方面提供的所述深度报文检查装置的第二种可能的实现方式中,还包括:
第二确定单元,用于根据所述接收单元接收的所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;
所述发送单元还用于向所述第二确定单元确定的所述第二业务节点发送所述第二报文。
根据所述第二方面提供的所述深度报文检查装置、所述第二方面提供的所述深度报文检查装置的第一种可能的实现方式和所述第二方面提供的所述深度报文检查装置的第二种可能的实现方式,在所述第二方面提供的所述深度报文检查装置的第三种可能的实现方式中,所述接收单元还用于接收所述第一业务节点发送的消息,所述消息包括所述第一特征以及所述第一业务节点的标识;
所述装置还包括生成单元,所述生成单元用于根据所述消息中的所述第一特征以及所述第一业务节点的标识,生成所述第一对应关系。
第三方面,提供了一种深度报文检查装置,包括:接收器、发送器、至少一个处理器以及存储器,所述存储器用于存储计算机程序;
所述接收器用于接收转发面装置转发的第一报文;
所述至少一个处理器用于通过访问所述存储器中存储的所述计算机程序执行下述操作:
根据所述接收器接收的所述第一报文中的传输控制协议以及网际协议族的应用层的第一特征以及所述第一特征与第一业务节点的第一对应关系确定所述第一业务节点,所述第一业务节点能够对接收到的报文进行第一业务处理;
所述发送器用于向所述至少一个处理器确定的所述第一业务节点发送第二报文,所述第二报文中包含所述第一报文。
上述技术方案中,深度报文检查装置根据报文中的特征,将报文发送至与报文中的特征对应的业务节点,从而使得业务点能够对报文进行业务处理。与现有技术相比,上述技术方案对报文的分发方式比较灵活。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为根据本发明实施例提供的一种深度报文检查方法的流程示意图;
图2A为根据本发明实施例提供的一种深度报文检查方法的流程示意图;
图2B为根据本发明实施例提供的一种深度报文检查装置和业务节点分离的结构示意图;
图3为根据本发明实施例提供的一种深度报文检查装置的结构示意图;
图4为根据本发明实施例提供的一种深度报文检查装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例提供一种深度报文检查方法,该方法适用于本发明的深度报文检查装置和业务节点分离的网络架构,深度报文检查装置对从转发面装置发送的报文进行一次深度报文检查,并根据检测结果下发给各业务节点。
图1为根据本实施例提供的深度报文检查方法的流程示意图。所述方法的执行主体为深度报文检查装置。根据图1,所述方法包括:
102、深度报文检查装置接收转发面装置转发的第一报文。
所述转发面装置为能够根据转发表对接收到的报文进行转发的装置。
举例来说,所述转发面装置对报文进行转发时,可以对二层的报文进行转发,也可以对三层的报文进行转发。关于二层与三层,具体请参考OSImodel。
所述转发面装置,可以是交换机或者路由器。
在所述转发面装置是交换机的场景下,所述转发面装置具体可以是开放流交换机(OpenFlow Switch)。关于开放流交换机,请参考标准制定组织(Standard Setting Organization,SSO)开放网络基础(Open NetworkingFoundation,ONF)发布的《开放流交换机规范》版本1.0(OpenFlow SwitchSpecification 1.0)。
所述转发面装置可以具有两种转发模式,一种是流转发模式,另一种是包转发模式。
流转发是指转发面装置根据流表对报文进行转发。流表的一个表项中用于判断报文是否与流表的表项匹配的字段的个数为2个或者2个以上。举例来说,流表的一个表项中用于判断报文是否与流表的表项匹配的字段的个数可以是5个。5个字段可以分别是源网际协议(Internet Protocol,IP)地址、目的IP地址、源端口(Port)、目的端口以及协议(Protocol)。举例来说,用于判断报文是否与流表的表项匹配的字段可以是处于OSI model的数据链路(Data Link)层的字段,也可以是处于OSI model的IP层的字段。
包转发是指转发面装置根据包转发表对报文进行转发。包转发表的一个表项中用于判断报文是否与包转发表的表项匹配的字段的个数为1个。举例来说,包转发表的表项中用于判断报文是否与流表的表项匹配的字段可以目的IP地址,也可以是目的媒体访问控制(Media Access Control,MAC)协议地址。本领域的技术人员可以理解,包转发表可以是MAC表,也可以是路由表。
本领域的技术人员可以理解,开放流交换机可以根据接收到的报文中的源MAC协议地址以及用于接收报文的接口生成MAC表。MAC表生成后,开放流交换机可以根据MAC表进行包转发。
104、所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族(Transmission Control Protocol/Internet Protocol,TCP/IP)的应用层的第一特征以及所述第一特征与第一业务节点的第一对应关系确定所述第一业务节点,所述第一业务节点能够对接收到的报文进行第一业务处理。
举例来说,所述第一特征可以是HTTP(超文本传送协议,HypertextTransfer Protocol)对应的URL(Uniform/Universal Resource Locator,统一资源定位符)字段。所述第一特征也可以是其他字段。另外,所述第一特征也可以包括多个字段。字段可以是字符、数字或字符与数字的组合。
深度报文检查装置根据第一特征以及第一对应关系确定第一业务节点。第一对应关系可以是对应表中的第一表项。对应表可以预先存储在所述深度报文检查装置中。所述报文检查装置可以根据所述第一特征在所述对应表中查找包含所述第一特征的第一表项。第一表项可以包括所述第一特征以及所述第一业务节点的标识。所述第一业务节点的标识可以是所述第一业务节点的IP地址或者所述第一业务节点的MAC协议地址。
所述第一业务节点是网络设备。所述第一业务节点能够对接收到的报文进行业务处理。例如,所述第一业务节点可以是URL过滤服务器。所述第一业务节点也可以是提供共享内容的共享服务器。
106、所述深度报文检查装置向所述第一业务节点发送第二报文,所述第二报文中包含所述第一报文。
举例来说,如果深度报文检查装置在检测到该第一报文需要经过多个业务节点进行业务处理,所述深度报文检查装置可以在所述第一报文中封装所述多个业务节点的标识,从而获得第二报文。获得所述第二报文后,所述深度报文检查装置将所述第二报文发送至所述第一业务节点。如果所述深度报文检查装置检测到所述第一报文只需要第一业务节点进行业务处理,则所述深度报文检查装置可以直接向所述第一业务节点转发所述第一报文。也就是说,所述第二报文可以是所述第一报文。所述深度报文检查装置可以通过隧道向所述第一业务节点发送所述第二报文。
需要指出的是,所述第一对应关系可以预先通过命令行在所述深度报文检查装置中进行配置。所述第一对应关系也可以是所述深度报文检查装置根据所述第一业务节点发送的消息生成的。
可选地,在102之前,图1所示的方法还可以包括:
所述深度报文检查装置接收所述第一业务节点发送的消息,所述消息包括所述第一特征以及所述第一业务节点的标识;和
所述深度报文检查装置根据所述消息中的所述第一特征以及所述第一业务节点的标识,生成所述第一对应关系。
上述技术方案可以是所述第一业务节点在所述深度报文检查装置的注册过程。
根据上述深度报文检查方法,深度报文检查装置根据报文中的特征,将报文发送至与报文中的特征对应的业务节点,从而使得业务节点能够对报文进行业务处理。与现有技术相比,上述技术方案对报文的分发方式比较灵活。
可选地,如图2A所示,在图1所示的方法中,在102之后且在lO6之前,还可以包括:
步骤a:所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理。
步骤a可以在104之前,也可以在104之后。图2A中仅示出步骤a在104之后的例子。
所述第二特征可以是一个字段或多个字段。例如,所述第二特征可以是字符或数字或字符与数字的组合。所述深度报文检查装置可以从所述第一报文中获取所述第二特征。如果所述深度报文检查装置检查到所述第一报文具有上述第二特征时,就可以根据预先存储的所述第二特征与所述第二业务节点的第二对应关系确定所述第二业务节点。所述第二业务节点的标识可以是所述第二业务节点的IP地址或者MAC协议地址。所述第二业务节点是能够处理业务的节点。关于所述第二业务节点,请参考所述第一业务节点。
需要指出的,所述第二特征可以与所述第一特征相同,也可以与所述第一特征不同。当所述深度报文检查装置检查出所述第一报文需要按照预先设定的顺序经多个业务节点处理时,所述深度报文检查装置可以按照所述顺序在所述第一报文中封装所述多个业务节点的标识,以使每个业务节点在接收到所述封装了所述多个业务节点的标识的报文之后对所述封装了所述多个业务节点的标识的报文执行业务处理并发送给所述顺序指示的下一个业务节点。
可选地,如图2A所示,在图1所示的方法中,在102之后,且在步骤a之后,并在106之前,还可以包括:
步骤b:所述深度报文检查装置将所述第一报文封装为所述第二报文,所述第二报文包括所述第二业务节点的标识,所述第二报文用于指示所述第一业务节点对所述第二报文进行第一业务处理后,根据所述第二报文中的所述第二业务节点的标识将所述第二报文转发至所述第二业务节点。
举例来说,所述深度报文检查装置在检查出除了需要将所述第一报文发送到所述第一业务节点,还需要将处理后的所述第一报文发送到所述第二业务节点时,可以在所述第一报文中封装所述第二业务节点的标识,生成所述第二报文。所述第一业务节点处理完所述第二报文之后,可以根据所述第二报文中的所述第二业务节点的标识,将所述第二报文转发至所述第二业务节点进行处理。
可选地,图1所示的方法中,所述第二报文可以用于使所述第一业务节点向所述转发面装置发送信令,所述信令用于使所述转发面装置丢弃第三报文,所述第三报文中的传输控制协议层以及网际协议族的数据链路层、网际协议层或者传输层中的字段与所述第一报文中的传输控制协议层以及网际协议族的数据链路层、网际协议层或者传输层中的对应字段相同。
下面以图2B所示的网络架构进行举例说明。
参见图2B,网络架构中包括作为业务节点的两个服务器。所述两个服务器分别是URL过滤服务器211和Cache(高速缓存)服务器212,其所需要关心的第一特征均为HTTP(超文本传送协议,Hypertext Transfer Protocol)的URL字段,且将该信息预设在深度报文检查装置213中,以告知深度报文检查装置监控HTTP的URL字段。其中URL过滤服务器211对应的优先级信息为M,Cache服务器212对应的优先级信息为N,M和N均为整数且M<N,即URL过滤服务器211的优先级高于Cache服务器212。
首先,转发面装置214识别其所接收的报文流是否为需要送入深度报文检查装置213进行检查的第一报文流,即是否为需要送入应用层的第一报文流,具体可以根据上述描述的报文流的应用特征进行识别。当识别结果为是时,送入深度报文检查装置213中进行检查。深度报文检查装置213判断第一报文是否包含URL字段。当识别出第一报文包含URL字段时,从预设的对应中查找该待识别报文对应的各优先级信息M和N,并获取到所要经过的第一业务节点为URL过滤服务器211以及第二业务节点为Cache服务器212;当识别结果为否时,即并非深度报文检查装置213中预设的需要关心的报文流时,将该第一报文身份标识码发送到转发面装置214中,并通知转发面装置214后续不用再将与该第一报文具有相同的应用特征的报文流发送到深度报文检查装置213。第一报文身份标识码可以是报文中携带的由源地址、目的地址、源端口号、目的端口号、协议类型构成的五元素。
接着,深度报文检查装置213将该第一报文进行封装,形成包括Cache服务器212标识的第二报文,并将该第一报文发送到URL过滤服务器211中,URL过滤服务器211提取第一报文流中的URL字段,并将该URL字段在黑白名单中进行查找。如果发现该URL字段在白名单中,则将该第一报文流发送至Cache服务器212,还可以通知转发面装置214后续直接将该第一报文送入URL过滤服务器211中,以减轻深度报文检查装置213的负担;如果发现该URL字段在黑名单中,则丢弃该第一报文,并向转发面装置214发送信令,告知转发面装置214丢弃与第一报文TCP/IP字段相同的第三报文,同时也会告知深度报文检查装置213丢弃其尚未发送的该第二报文。
然后,当第一报文到达Cache服务器212之后,根据URL字段进行查找,如果该URL字段包含在本地Cache服务器中,则从Cache服务器中读取请求的内容。例如采用重定向机制或代理机制,具体操作为现有技术,在此不再赘述。
这样,通过上述流程,深度报文检查装置213只需要对包含URL字段的第一报文进行一次检查即可,并且通过业务节点的反馈及时识别哪些报文不需要再进行检查,减轻了深度报文检查装置213的负担。
可选地,图1所示的方法中,在102之后且在106之前,所述方法还可以包括:
步骤c:所述深度报文检查装置213根据所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理。
在步骤c之后,所述方法还可以包括:
步骤d:所述深度报文检查装置213向所述第二业务节点发送所述第二报文。
当深度报文检查装置213检查出需要将该第一报文同时发送到第一业务节点和第二业务节点时,可以按照步骤c和步骤d进行发送。
图3为本发明实施例提供的一种深度报文检查装置的结构示意图。所述装置可以用于执行图1所示的方法。参见图3,所述深度报文检查装置300包括:接收单元301、第一确定单元302和发送单元303。
所述接收单元301用于接收转发面装置310转发的第一报文。
举例来说,所述接收单元301可以是接收器。
所述转发面装置310为能够根据转发表对接收到的报文进行转发的装置。
举例来说,所述转发面装置310对报文进行转发时,可以对二层的报文进行转发,也可以对三层的报文进行转发。关于二层与三层,具体请参考OSImodel。
所述转发面装置310,可以是交换机或者路由器。
在所述转发面装置310是交换机的场景下,所述转发面装置310具体可以是开放流交换机。关于开放流交换机,请参考标准制定组织ONF发布的《开放流交换机规范》版本1.0。
所述转发面装置310可以具有两种转发模式,一种是流转发模式,另一种是包转发模式。
流转发是指转发面装置310根据流表对报文进行转发。流表的一个表项中用于判断报文是否与流表的表项匹配的字段的个数为2个或者2个以上。举例来说,流表的一个表项中用于判断报文是否与流表的表项匹配的字段的个数可以是5个。5个字段可以分别是源IP地址、目的IP地址、源端口、目的端口以及协议。举例来说,用于判断报文是否与流表的表项匹配的字段可以是处于OSI model的数据链路层的字段,也可以是处于OSI model的IP层的字段。
包转发是指转发面装置310根据包转发表对报文进行转发。包转发表的一个表项中用于判断报文是否与包转发表的表项匹配的字段的个数为1个。举例来说,包转发表的表项中用于判断报文是否与流表的表项匹配的字段可以目的IP地址,也可以是目的MAC协议地址。本领域的技术人员可以理解,包转发表可以是MAC表,也可以是路由表。
本领域的技术人员可以理解,开放流交换机可以根据接收到的报文中的源MAC协议地址以及用于接收报文的接口生成MAC表。MAC表生成后,开放流交换机可以根据MAC表进行包转发。
所述第一确定单元302,用于根据所述接收单元301接收的所述第一报文中的TCP/IP的应用层的第一特征以及所述第一特征与第一业务节点的第一对应关系确定所述第一业务节点。所述第一业务节点能够对接收到的报文进行第一业务处理。
举例来说,所述第一确定单元302可以是网络处理器(network processor,NP)。
举例来说,所述第一特征可以是HTTP对应的URL字段。所述第一特征也可以是其他字段。另外,所述第一特征也可以包括多个字段。字段可以是字符、数字或字符与数字的组合。
深度报文检查装300根据第一特征以及第一对应关系确定第一业务节点。第一对应关系可以是对应表中的第一表项。对应表可以预先存储在所述深度报文检查装置300中。所述报文检查装置300可以根据所述第一特征在所述对应表中查找包含所述第一特征的第一表项。第一表项可以包括所述第一特征以及所述第一业务节点的标识。所述第一业务节点的标识可以是所述第一业务节点的IP地址或者所述第一业务节点的MAC协议地址。
所述第一业务节点是网络设备。所述第一业务节点能够对接收到的报文进行业务处理。例如,所述第一业务节点可以是URL过滤服务器。所述第一业务节点也可以是提供共享内容的共享服务器。
所述发送单元303,用于向所述第一确定单元302确定的所述第一业务节点发送第二报文,所述第二报文中包含所述第一报文。
举例来说,所述发送单元303可以是发送器。
举例来说,如果深度报文检查装置300在检测到该第一报文需要经过多个业务节点进行业务处理,所述深度报文检查装置300可以在所述第一报文中封装所述多个业务节点的标识,从而获得第二报文。获得所述第二报文后,所述深度报文检查装置300将所述第二报文发送至所述第一业务节点。如果所述深度报文检查装置300检测到所述第一报文只需要第一业务节点进行业务处理,则所述深度报文检查装置300可以直接向所述第一业务节点转发所述第一报文。也就是说,所述第二报文可以是所述第一报文。所述深度报文检查装置300可以通过隧道向所述第一业务节点发送所述第二报文。
上述技术方案中,所述深度报文检查装置300可以根据所述第一特征确定第一业务节点,并向所述第一业务节点发送所述第二报文。上述技术方案改善了现有技术对报文的处理方式不够灵活的技术问题。
可选地,如图4所示,图3所示的深度报文检查装置300还可以包括第二确定单元401和封装单元402。
所述第二确定单元401用于根据所述接收单元301接收的所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理。
所述封装单元402用于将所述第一报文封装为所述第二报文,所述第二报文包括所述第二确定单元401确定的所述第二业务节点的标识,所述第二报文用于指示所述第一业务节点对所述第二报文进行所述第一业务处理后,根据所述第二报文中的所述第二业务节点的标识将所述第二报文转发至所述第二业务节点。
可选地,图4所示的装置中,第二确定单元401可以用于根据所述接收单元接收301的所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理。
所述发送单元303还用于向所述第二确定单元401确定的所述第二业务节点发送所述第二报文。
本领域的技术人员可以理解,向所述第二业务节点发送所述第二报文的操作还可以由单独设置的与发送单元303不同的另外一个发送单元进行操作。
可选地,图3所示的深度报文检查装置300还可以包括生成单元403。所述接收单元301还用于接收所述第一业务节点发送的消息,所述消息包括所述第一特征以及所述第一业务节点的标识。
所述生成单元403用于根据所述消息中的所述第一特征以及所述第一业务节点的标识,生成所述第一对应关系。
本发明实施例还提供一种深度报文检查装置。可以用于执行图1所示的方法。所述装置包括:接收器、发送器、至少一个处理器以及存储器,所述存储器用于存储计算机程序。
所述接收器用于接收转发面装置转发的第一报文。
所述至少一个处理器用于通过访问所述存储器中存储的所述计算机程序执行下述操作:
根据所述接收器接收的所述第一报文中的传输控制协议以及网际协议族的应用层的第一特征以及所述第一特征与第一业务节点的第一对应关系确定所述第一业务节点,所述第一业务节点能够对接收到的报文进行第一业务处理。
所述发送器用于向所述至少一个处理器确定的所述第一业务节点发送第二报文,所述第二报文中包含所述第一报文。
可选地,该深度报文检查装置的处理器通过读取所述存储器中存储的计算机程序,还可以实现下述操作:
所述深度报文检查装置接收所述转发面装置转发的所述第一报文之后,以及所述深度报文检查装置向所述第一业务节点发送所述第二报文之前,所述方法还包括:
所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;
所述深度报文检查装置根据所述第一报文中的所述第一特征以及所述第一特征与所述第一业务节点的所述第一对应关系确定所述第一业务节点之后,所述深度报文检查装置根据所述第一报文中的所述第二特征以及所述第二特征与所述第二业务节点的所述第二对应关系确定所述第二业务节点之后,以及所述深度报文检查装置向所述第一业务节点发送所述第二报文之前,所述方法还包括:
所述深度报文检查装置将所述第一报文封装为所述第二报文,所述第二报文包括所述第二业务节点的标识,所述第二报文用于指示所述第一业务节点对所述第二报文进行第一业务处理后,根据所述第二报文中的所述第二业务节点的标识将所述第二报文转发至所述第二业务节点。
可选地,第二报文可以是第一报文。
可选地,该深度报文检查装置的处理器通过读取所述存储器中存储的计算机程序,还可以实现下述操作:
所述深度报文检查装置接收所述转发面装置转发的所述第一报文之后,以及所述深度报文检查装置向所述第一业务节点发送所述第二报文之前,所述方法还包括:
所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;
所述深度报文检查装置根据所述第一报文中的所述第二特征以及所述第二特征与所述第二业务节点的所述第二对应关系确定所述第二业务节点之后,所述方法还包括:
所述深度报文检查装置向所述第二业务节点发送所述第二报文。
其中,第二报文用于使所述第一业务节点向所述转发面装置发送信令,所述信令用于使所述转发面装置丢弃第三报文,所述第三报文中的传输控制协议层以及网际协议族的数据链路层、网际协议层或者传输层中的字段与所述第一报文中的传输控制协议层以及网际协议族的数据链路层、网际协议层或者传输层中的对应字段相同。
可选地,该深度报文检查装置的处理器通过读取所述存储器中存储的计算机程序,还可以实现下述操作:
所述深度报文检查装置接收所述转发面装置转发的所述第一报文之前,所述方法还包括:
所述深度报文检查装置接收所述第一业务节点发送的消息,所述消息包括所述第一特征以及所述第一业务节点的标识;和
所述深度报文检查装置根据所述消息中的所述第一特征以及所述第一业务节点的标识,生成所述第一对应关系。
上述技术方案中,所述深度报文检查装置可以根据所述第一特征确定第一业务节点,并向所述第一业务节点发送所述第二报文。上述技术方案改善了现有技术对报文的处理方式不够灵活的技术问题。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文缩写为ROM,英文全称为Read-Only Memory)、随机存取存储器(英文缩写为RAM,英文全称为Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (11)
1.一种深度报文检查方法,其特征在于,包括:
深度报文检查装置接收转发面装置转发的第一报文;
所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族的应用层的第一特征以及所述第一特征与第一业务节点的第一对应关系确定所述第一业务节点,所述第一业务节点能够对接收到的报文进行第一业务处理;和
所述深度报文检查装置向所述第一业务节点发送第二报文,所述第二报文中包含所述第一报文;其中,所述深度报文检查装置通过隧道向所述第一业务节点发送所述第二报文。
2.根据权利要求1所述的方法,其特征在于,所述深度报文检查装置接收所述转发面装置转发的所述第一报文之后,以及所述深度报文检查装置向所述第一业务节点发送所述第二报文之前,所述方法还包括:
所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;
所述深度报文检查装置根据所述第一报文中的所述第一特征以及所述第一特征与所述第一业务节点的所述第一对应关系确定所述第一业务节点之后,所述深度报文检查装置根据所述第一报文中的所述第二特征以及所述第二特征与所述第二业务节点的所述第二对应关系确定所述第二业务节点之后,以及所述深度报文检查装置向所述第一业务节点发送所述第二报文之前,所述方法还包括:
所述深度报文检查装置将所述第一报文封装为所述第二报文,所述第二报文包括所述第二业务节点的标识,所述第二报文用于指示所述第一业务节点对所述第二报文进行所述第一业务处理后,根据所述第二报文中的所述第二业务节点的标识将所述第二报文转发至所述第二业务节点。
3.根据权利要求1所述的方法,其特征在于,所述第二报文为所述第一报文。
4.根据权利要求1所述的方法,其特征在于,所述深度报文检查装置接收所述转发面装置转发的所述第一报文之后,以及所述深度报文检查装置向所述第一业务节点发送所述第二报文之前,所述方法还包括:
所述深度报文检查装置根据所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;
所述深度报文检查装置根据所述第一报文中的所述第二特征以及所述第二特征与所述第二业务节点的所述第二对应关系确定所述第二业务节点之后,所述方法还包括:
所述深度报文检查装置向所述第二业务节点发送所述第二报文。
5.根据权利要求1至4中任一所述的方法,其特征在于,所述第二报文用于使所述第一业务节点向所述转发面装置发送信令,所述信令用于使所述转发面装置丢弃第三报文,所述第三报文中的传输控制协议层以及网际协议族的数据链路层、网际协议层或者传输层中的字段与所述第一报文中的传输控制协议层以及网际协议族的数据链路层、网际协议层或者传输层中的对应字段相同。
6.根据权利要求1至4中任一所述的方法,其特征在于,
所述深度报文检查装置接收所述转发面装置转发的所述第一报文之前,所述方法还包括:
所述深度报文检查装置接收所述第一业务节点发送的消息,所述消息包括所述第一特征以及所述第一业务节点的标识;和
所述深度报文检查装置根据所述消息中的所述第一特征以及所述第一业务节点的标识,生成所述第一对应关系。
7.根据权利要求5所述的方法,其特征在于,
所述深度报文检查装置接收所述转发面装置转发的所述第一报文之前,所述方法还包括:
所述深度报文检查装置接收所述第一业务节点发送的消息,所述消息包括所述第一特征以及所述第一业务节点的标识;和
所述深度报文检查装置根据所述消息中的所述第一特征以及所述第一业务节点的标识,生成所述第一对应关系。
8.一种深度报文检查装置,其特征在于,包括:
接收单元,用于接收转发面装置转发的第一报文;
第一确定单元,用于根据所述接收单元接收的所述第一报文中的传输控制协议以及网际协议族的应用层的第一特征以及所述第一特征与第一业务节点的第一对应关系确定所述第一业务节点,所述第一业务节点能够对接收到的报文进行第一业务处理;和
发送单元,用于向所述第一确定单元确定的所述第一业务节点发送第二报文,所述第二报文中包含所述第一报文;其中所述发送单元通过隧道向所述第一业务节点发送所述第二报文。
9.根据权利要求8所述的装置,其特征在于,还包括:
第二确定单元,用于根据所述接收单元接收的所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;以及
封装单元,用于将所述第一报文封装为所述第二报文,所述第二报文包括所述第二确定单元确定的所述第二业务节点的标识,所述第二报文用于指示所述第一业务节点对所述第二报文进行所述第一业务处理后,根据所述第二报文中的所述第二业务节点的标识将所述第二报文发送至所述第二业务节点。
10.根据权利要求8所述的装置,其特征在于,还包括:
第二确定单元,用于根据所述接收单元接收的所述第一报文中的传输控制协议以及网际协议族的应用层的第二特征以及所述第二特征与第二业务节点的第二对应关系确定所述第二业务节点,所述第二业务节点能够对接收到的报文进行第二业务处理;
所述发送单元还用于向所述第二确定单元确定的所述第二业务节点发送所述第二报文。
11.根据权利要求8至10中任一所述的装置,其特征在于,所述接收单元还用于接收所述第一业务节点发送的消息,所述消息包括所述第一特征以及所述第一业务节点的标识;
所述装置还包括生成单元,所述生成单元用于根据所述消息中的所述第一特征以及所述第一业务节点的标识,生成所述第一对应关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210486607.6A CN102938739B (zh) | 2012-11-26 | 2012-11-26 | 深度报文检查方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210486607.6A CN102938739B (zh) | 2012-11-26 | 2012-11-26 | 深度报文检查方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102938739A CN102938739A (zh) | 2013-02-20 |
CN102938739B true CN102938739B (zh) | 2016-08-24 |
Family
ID=47697609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210486607.6A Active CN102938739B (zh) | 2012-11-26 | 2012-11-26 | 深度报文检查方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102938739B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110138618B (zh) * | 2013-12-31 | 2021-10-26 | 华为技术有限公司 | 一种报文处理方法、装置及系统 |
CN106406825A (zh) * | 2015-07-27 | 2017-02-15 | 中兴通讯股份有限公司 | 一种命令行的处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101534248A (zh) * | 2009-04-14 | 2009-09-16 | 华为技术有限公司 | 深度报文识别方法和系统及业务板 |
CN101984598A (zh) * | 2010-11-04 | 2011-03-09 | 成都市华为赛门铁克科技有限公司 | 一种报文转向的方法和深度包检测设备 |
CN102075566A (zh) * | 2010-12-24 | 2011-05-25 | 华为技术有限公司 | 业务的分流处理方法、通信设备及网络系统 |
CN102739549A (zh) * | 2012-07-13 | 2012-10-17 | 华为技术有限公司 | 接收报文的方法、发送报文的方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101854335A (zh) * | 2009-03-30 | 2010-10-06 | 华为技术有限公司 | 一种过滤的方法、系统及网络设备 |
CN101715182B (zh) * | 2009-11-30 | 2012-11-21 | 中国移动通信集团浙江有限公司 | 一种流量控制方法、系统和设备 |
CN102045363B (zh) * | 2010-12-31 | 2013-10-09 | 华为数字技术(成都)有限公司 | 网络流量特征识别规则的建立方法、识别控制方法及装置 |
-
2012
- 2012-11-26 CN CN201210486607.6A patent/CN102938739B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101534248A (zh) * | 2009-04-14 | 2009-09-16 | 华为技术有限公司 | 深度报文识别方法和系统及业务板 |
CN101984598A (zh) * | 2010-11-04 | 2011-03-09 | 成都市华为赛门铁克科技有限公司 | 一种报文转向的方法和深度包检测设备 |
CN102075566A (zh) * | 2010-12-24 | 2011-05-25 | 华为技术有限公司 | 业务的分流处理方法、通信设备及网络系统 |
CN102739549A (zh) * | 2012-07-13 | 2012-10-17 | 华为技术有限公司 | 接收报文的方法、发送报文的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102938739A (zh) | 2013-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10027626B2 (en) | Method for providing authoritative application-based routing and an improved application firewall | |
CN102055674B (zh) | Ip报文及基于该ip报文的信息处理方法及装置 | |
CN100425025C (zh) | 应用服务器安全法与网络安全法的安全系统与方法 | |
US10091102B2 (en) | Tunnel sub-interface using IP header field | |
CN106664261A (zh) | 一种配置流表项的方法、装置和系统 | |
CN105939239B (zh) | 虚拟网卡的数据传输方法及装置 | |
CN108092934A (zh) | 安全服务系统及方法 | |
CN107078957A (zh) | 通信网络中的网络服务功能的链接 | |
US20070079366A1 (en) | Stateless bi-directional proxy | |
CN102301663A (zh) | 一种报文处理方法及相关设备 | |
EP3720075B1 (en) | Data transmission method and virtual switch | |
US7333430B2 (en) | Systems and methods for passing network traffic data | |
CN104852840A (zh) | 一种控制虚拟机之间互访的方法及装置 | |
CN105591834A (zh) | Vxlan中的流量监控方法和装置 | |
CN110381006A (zh) | 报文处理方法、装置、存储介质及处理器 | |
CN112929200A (zh) | 一种面向sdn多控制器的异常检测方法 | |
CN105812257A (zh) | 业务链路由管理系统及其使用方法 | |
CN102938739B (zh) | 深度报文检查方法与装置 | |
CN101605093A (zh) | 利用IP Option实现信息透传的方法 | |
CN106254252A (zh) | 一种Flow spec路由的下发方法和装置 | |
CN105323234A (zh) | 业务节点能力处理方法、装置、业务分类器及业务控制器 | |
TWI714969B (zh) | 封包轉送方法與裝置 | |
Siddiqui et al. | Self-reliant detection of route leaks in inter-domain routing | |
Singh | Implementing Cisco Networking Solutions: Configure, implement, and manage complex network designs | |
CN105721313B (zh) | 数据传输方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |