一种统一资源定位符的匹配方法

文档序号:7601401阅读:167来源:国知局
专利名称:一种统一资源定位符的匹配方法
技术领域
本发明涉及数据匹配技术,尤指一种统一资源定位符的匹配方法。
背景技术
互联网和移动通信技术的发展推动着无线数据业务的进一步发展,各种无线数据业务应运而生,包括短消息系统服务(SMS),多媒体短消息服务(MMS),采用无线应用协议(WAP)的数据业务,通用分组无线业务(GPRS),以及移动定位服务等等。
目前,无线数据业务作为高增值性业务受到运营商的极大关注。但是,当前对无线数据业务的计费模式较为简单,或根据数据流量计算,或根据数据传输的时长计算,这些计费模式都无法适应无线数据业务的飞速发展。为了整合无线数据业务的运营方案,谋求更大的业务利润,运营商需要发展更为合理的计费模式。在这点上,内容计费(CBB)能够更好地满足运营商的计费需求。CBB的含义是计费系统根据用户所进行的不同数据业务执行不同的收费标准。实现CBB的关键步骤是系统需要判断网络上传输的用户数据包属于何种业务类型。这意味着,传输用户数据包的网络上需要有能判断数据业务类型的网络设备,由该网络设备通过解析用户的上下行数据包分辨出用户数据包的业务类型。对用户数据包的解析涉及网络通信七层协议中的层三、层四以及层七这三个协议层的内容。其中,层三是网络层,完成的是对用户数据包的IP地址解析;层四是传输层,完成的是对用户数据包的端口解析;层七是应用层,完成的是对用户数据包的统一资源定位符(URL)的解析。其中,URL由字符组成。根据协议规定,URL具有特定的格式,不同的URL格式段用分隔符隔开表示不同的内容,本申请中将URL的每个格式段称为不同的URL子项。比如在“http://www.sina.com.cn”中,“http”是该URL的schema子项,“www.sina.com.cn”是该URL的host子项。由于协议用格式的形式给URL赋予了不同的内容含义,故不能将URL看成简单的字符串。
为实现上述层七解析,即对用户数据包URL进行解析,需要在用于解析URL的网络设备上预先设置URL过滤条件,每个URL过滤条件对应一种数据业务类型;当用户数据包传到该网络设备时,网络设备根据用户数据包URL与URL过滤条件的匹配情况判断该用户数据包的业务类型。这里,所述用户数据包URL是指网络设备获取的用户数据包所携带的URL。
上述用于判断用户数据包URL和URL过滤条件是否匹配的网络设备可以是GPRS网关支持节点(GGSN),也可以是WAP网关,或者是网络数据传输过程中的任何一个网络设备。
现有技术中,判断用户数据包URL与URL过滤条件是否匹配的方法如下假设网络设备预先设置的URL过滤条件分别为A1和A2;该网络设备接收到用户数据包后,将该用户数据包URL和A1、A2分别进行字符串比较,如果用户数据包URL和A1完全相等,则该网络设备判定该用户数据包URL和A1匹配,即该用户数据包属于A1对应的业务类型;如果用户数据包URL和A2相等,则该网络设备判定该用户数据包URL和A2匹配,即该用户数据包属于A2对应的业务类型;最后,该网络设备将匹配结果,即用户数据包的业务类型,上报给计费系统,计费系统上设置有对不同业务类型的计费标准,最终完成基于内容的计费。
但是,现有技术中采用的URL匹配方法将URL处理成简单的字符串,采用字符串完全匹配的方法对URL进行解析,这种URL匹配方法没有很好的利用URL项被赋予的内容含义,所以无法满足CBB的灵活计费需求。

发明内容
有鉴于此,本发明的主要目的在于提供一种统一资源定位符的匹配方法,根据网络基于内容的计费需求灵活设置匹配条件,使匹配结果与URL内容更加相关,提高内容计费的精细度,且该方法完成的匹配符合协议规定。
为达到上述目的,本发明的技术方案具体是这样实现的一种统一资源定位符的匹配方法,其特征在于,网络设备设置URL过滤条件,该方法包括以下步骤a.网络设备接收经过自身传输的用户数据包URL;b.所述网络设备根据协议规定的格式拆分用户数据包URL和URL过滤条件,获得用户数据包URL以及URL过滤条件的URL子项;c.网络设备比较URL过滤条件和用户数据包URL的相同类型子项,得出匹配结果。
进一步地,步骤b中对URL过滤条件和用户数据包URL这两组URL进行一一对应的子项拆分。
较佳地,步骤b中所述的子项拆分为网络设备在设置URL过滤条件时就完成对URL过滤条件的子项拆分,或者网络设备获取用户数据包URL后对用户数据包URL和URL过滤条件同时进行拆分。
较佳地,该方法进一步包括网络设备设置URL子项的比较先后顺序。
较佳地,该方法进一步包括网络设备设置URL子项的比较模糊度。
进一步地,所述比较模糊度为比较URL子项时是否区分大小写,或是否支持通配符,或是否支持包含关系,或是否支持域名和IP地址对应关系。
较佳地,该方法进一步包括网络设备将匹配结果上报计费系统。
所述网络设备为GPRS网关支持节点或无线应用协议网关。
进一步地,所述网络设备上设置有用于拆分和匹配URL的URL匹配模块。
由上述技术方案可见,本发明的这种统一资源定位符的匹配方法对用户数据包URL和URL过滤条件进行拆分,利用拆分获得的URL子项进行子项匹配,最终获得匹配结果。该方法对URL进行的拆分符合协议规定,从而使拆分获得的URL子项格式清晰,便于在URL匹配中更好地体现URL内容。在对URL子项匹配时,网络设备根据计费需要设置匹配条件。比如网络设备设置不同类型URL子项的重要程度,对于重要程度高的URL子项,网络设备先进行匹配判断;对于重要程度低的URL子项,网络设备后进行匹配判断或者不进行匹配判断。本发明这种对URL先进行拆分然后匹配的方法简单易行,计费系统也容易根据网络设备上报的匹配结果获得细微的数据内容信息,提高内容计费的精细度,使整个网络更好地实现基于内容的计费。该方法能够方便地应用于网络设备,从而为运营商创造更多的额外价值。


图1为本发明一个较佳实施例的URL匹配流程图。
具体实施例方式
本发明的核心思想是网络设备设置URL过滤条件并获取用户数据包URL;然后,网络设备根据协议规定分别拆分所设置的URL过滤条件和所获取的用户数据包URL,分别获得两组URL的子项;最后,网络设备将URL过滤条件和用户数据包URL这两组URL的相同类型子项进行比较,得出匹配结果。
这里,所述用户数据包URL是指传送到网络设备的用户数据包所携带的URL。所述两组URL的相同类型子项是指两组URL中属于相同URL格式段的URL子项。
为使本发明的目的、技术方案及优点更加清楚明白,以下举实施例,对本发明进一步详细说明。
本发明中,为了实现对网络传输的数据基于内容计费,可以在用于判断用户数据包URL和URL过滤条件是否匹配的网络设备上设置URL匹配模块,从而使该网络设备得出的匹配结果与现有技术相比更好地体现基于内容匹配的特点,最终使计费系统能利用该匹配结果更好实现基于内容计费。
上述设置URL匹配模块的网络设备可以是GPRS网关支持节点(GGSN),或者WAP网关等网络数据传输过程中的网络设备。
如图1所示,网络设备上设置的URL匹配模块的工作过程如下步骤101URL匹配模块设置URL过滤条件。
由于网络数据内容多样,URL匹配模块可以根据需要灵活设置URL过滤条件。比如URL匹配模块设置“http://www.sina.com.cn”,“http://www.google.com”,“http://www.263.net”,“http://www.yahoo.com”,“http://www.baidu.com”,“http://www.tom.com”为URL过滤条件。也就是说,URL匹配模块可以根据需要设置任意不同的过滤条件,并根据不同的URL过滤条件对用户数据包的业务类型分别进行判断,再依据判断结果计费。
步骤102当网络上的某一用户数据包传输至包含URL匹配模块的网络设备时,URL匹配模块获取该用户数据包URL。
步骤103URL匹配模块根据标准协议规定拆分URL过滤条件和用户数据包URL,分别获得两组URL的子项。
下面以RFC1738协议为例对根据协议拆分URL进行详细说明。RFC1738协议对URL格式的定义是<schema>:<schema-specific-part>,其中<schema-specific-part>的格式可以进一步定义为//<user>:<password>@<host>:<port>/<url-path>。对于具有完整<schema>://<user>:<password>@<host>:<port>/<url-path>格式的URL,可以拆分出schema子项、user子项、password子项、host子项、port子项,以及path子项。RFC1738协议包括HTTP协议类型,FTP协议类型等。协议规定,HTTP协议类型的URL没有user子项和password子项。
进一步以HTTP协议类型的URL“http://www.263.net/path/page.html”为例,说明子项拆分的具体步骤。该URL可以是URL过滤条件,也可以是用户数据包URL。
首先,查找URL中的分隔符“://”,“://”之前的字符串就是URL的schema子项。本例中schema子项是“http”。如果没有分隔符“://”,则schema子项默认是“http”。
其次,查找分隔符“://”和分隔符“/”之间的内容,得到字符串“www.263.net”。分隔符“://”和分隔符“/”之间的内容包括host子项和port子项,URL匹配模块在分隔符“://”和分隔符“/”之间查找分隔符“:”,分隔符“:”之前的内容是host子项,分隔符“:”之后的内容是port子项。本例中没有分隔符“:”,所以该URL只有host子项“www.263.net”,本例中port子项采用http协议的默认端口。
最后,查找分隔符“/”之后的内容,该部分内容就是path子项。本例中path子项是“path/page.html”。
经过上述子项拆分的过程,http://www.263.net/path/page.html拆分成三个子项,分别是schema子项“http”,host子项“www.263.net”,以及path子项“path/page.html”。
对于其它协议类型,比如FTP协议,URL匹配模块也是根据相关协议规定进行子项拆分,拆分方法与HTTP协议的URL拆分方法类似,此处不赘述。
在实际应用中,由于URL匹配模块需要对URL过滤条件和用户数据包URL拆分获得的子项进行匹配操作,所以对URL的拆分不仅要根据协议规定,还要使URL过滤条件和用户数据包URL拆分获得的子项能够一一对应。假设URL过滤条件为“http://www.huawei.com.cn/news/index.shtml”,用户数据包URL为“http://www.huawei.com.cn/about/index.shtml”。URL过滤条件拆分得到schema子项“http”,host子项“www.huawei.com.cn”,以及path子项“news/index.shtml”,则用户数据包URL也拆分获得schema子项“http”、host子项“www.huawei.com.cn”,以及path子项“about/index.shtml”,即两个URL拆分获得的子项一一对应。如果用户数据包URL为“www.huawei.com.cn/about/index.shtml”,则拆分获得host子项“www.huawei.com.cn”和path子项“about/index.shtml”,而schema子项设置为默认值“http”。
在子项拆分时,URL匹配模块可以设置不同类型URL子项的重要程度,重要程度较低的URL子项可以不进行子项拆分。
对于URL过滤条件的拆分,URL匹配模块可以在设置URL过滤条件时就对相应的URL进行子项拆分,也可以在需要用URL过滤条件对用户数据包URL进行匹配时,才对URL过滤条件进行子项拆分。
步骤104URL匹配模块将URL过滤条件和用户数据包URL拆分所获得的两组URL的相同类型子项进行比较,得出匹配结果。
所述两组URL的相同类型子项是指两组URL中属于相同URL格式段的URL子项。
URL匹配模块可以设置子项比较的策略,子项比较的策略包括但不限于以下方式首先,如步骤103所述,URL匹配模块可以为URL子项设置重要程度。URL匹配模块可以在子项拆分前设置URL子项的重要程度,对于重要程度低的URL子项类型可以不进行子项拆分;URL匹配模块也可以在子项拆分后设置URL子项的重要程度。URL匹配模块还可以根据URL子项的重要程度决定子项比较的先后顺序。
其次,在对某个URL子项进行比较时,URL匹配模块可以设置比较模糊度。比较模糊度包括但不限于以下几种方式(1)子项比较时是否区分大小写;(2)子项比较时是否支持通配符;(3)子项比较时是否支持包含关系;(4)子项比较时是否支持域名和IP地址对应关系。
下面结合步骤103中使用过的例子说明URL匹配模块如何通过设置重要程度对URL子项进行比较。
本例中,URL过滤条件为“http://www.huawei.com.cn/news/index.shtml”,用户数据包URL为“http://www.huawei.com.cn/about/index.shtml”。
对于URL匹配模块在子项拆分后设置URL子项重要程度的方式,本例中根据步骤103获得的子项拆分结果如下URL过滤条件拆分得到schema子项“http”,host子项“www.huawei.com.cn”,以及path子项“news/index.shtml”;用户数据包URL拆分得到schema子项“http”,host子项“www.huawei.com.cn”,以及path子项“about/index.shtml”。然后,URL匹配模块设置schema子项的重要程度最高,host子项的重要程度其次,path子项的重要程度最低。根据设置的重要程度,URL匹配模块先比较schema子项,然后比较host子项,最后比较path子项。
对于URL匹配模块在子项拆分前设置URL子项重要程度的方式,重要程度低的子项在步骤103中可以不进行子项拆分。本例中,URL匹配模块设置schema子项的重要程度最高,host子项的重要程度其次,path子项的重要程度最低。URL匹配模块只比较两个URL的schema子项,得出匹配结果。本例中两个URL的schema子项相同,所以URL匹配模块判定本例中用户数据包URL属于该URL过滤条件对应的业务类型,计费系统根据该URL过滤条件的收费标准对该用户数据包URL进行费用结算。此时,URL匹配模块可以不拆分两个URL对应的host子项和path子项。
在对某个URL子项进行比较时,URL匹配模块根据所设置的比较模糊度得出匹配结果。
(1)URL匹配模块可以设置子项比较时区分大小写或不区分大小写。比如两个URL的path子项分别是“path/page.html”和“Path/page.html”,对于区分大小写的情况,URL匹配模块判定这两个URL子项不匹配;对于不区分大小写的情况,URL匹配模块则判定这两个URL子项匹配。
(2)URL匹配模块可以设置子项比较时支持通配符或不支持通配符。通配符提供的是用一个名称指定字符的便捷方式,最常用的通配符是“*”和“?”。比如两个URL子项分别是“path/page.html”和“path/*.*”,对于支持通配符的情况,URL匹配模块判定这两个URL子项匹配,对于不支持通配符的情况,URL匹配模块则判定这两个URL子项不匹配。
(3)URL匹配模块可以设置子项比较时支持包含关系或不支持包含关系。比如对于支持包含关系的情况,如果用户数据包URL的某个子项包含URL过滤条件的对应子项,URL匹配模块判定这两个URL子项匹配。
(4)URL匹配模块可以设置子项比较时支持域名和IP地址对应关系或不支持域名和IP地址对应关系。比如对于支持域名和IP地址对应关系的情况,假设具有对应关系的域名和IP地址分别是“www.sina.com.cn”和“202.11.232.112”,则URL匹配模块判定这两个URL子项匹配。
上述几种比较模糊度还可以叠加使用,比如比较模糊度可以是区分大小写且支持通配符,或者不支持通配符但支持包含关系等。
URL匹配模块还可以对不同类型的URL子项采用不同的比较模糊度,比如对path子项采用支持通配符的比较模糊度,对schema子项采用不支持通配符的比较模糊度。再比如对host子项,URL匹配模块可以设置子项比较时支持域名和IP地址对应关系。如果两个host子项具有对应关系,URL匹配模块判定这两个host子项匹配。假设URL过滤条件的host子项为“www.sina.com.cn”,用户数据包URL的host子项为“202.11.232.112”,如果URL匹配模块设置“www.sina.com.cn”和“202.11.232.112”具有对应关系,则这两个host子项匹配。
采用本发明所述的URL匹配方法获得匹配结果后,URL匹配模块可以确定用户数据包URL的业务类型,并将用户数据包URL的业务类型上报计费系统,从而实现CBB的灵活计费。
本发明所述的方法还可以应用于防火墙中对第七层协议的访问控制技术中。
由上述的实施例可见,本发明的这种URL匹配方法根据协议规定对用户数据包URL和URL过滤条件进行子项拆分,使拆分获得的URL子项结构清晰,便于在URL匹配中更好地体现URL内容,适用于计费系统中基于内容进行计费,且这种子项拆分和匹配的方法简单易行,便于在网络设备上实现。
权利要求
1.一种统一资源定位符的匹配方法,其特征在于,网络设备设置URL过滤条件,该方法包括以下步骤a.网络设备接收经过自身传输的用户数据包URL;b.所述网络设备根据协议规定的格式拆分用户数据包URL和URL过滤条件,获得用户数据包URL以及URL过滤条件的URL子项;c.网络设备比较URL过滤条件和用户数据包URL的相同类型子项,得出匹配结果。
2.根据权利要求1所述的方法,其特征在于,步骤b中对URL过滤条件和用户数据包URL这两组URL进行一一对应的子项拆分。
3.根据权利要求1所述的方法,其特征在于,步骤b中所述的子项拆分为网络设备在设置URL过滤条件时就完成对URL过滤条件的子项拆分,或者网络设备获取用户数据包URL后对用户数据包URL和URL过滤条件同时进行拆分。
4.根据权利要求1所述的方法,其特征在于,该方法进一步包括网络设备设置URL子项的比较先后顺序。
5.根据权利要求1或4所述的方法,其特征在于,该方法进一步包括网络设备设置URL子项的比较模糊度。
6.根据权利要求5所述的方法,其特征在于,所述比较模糊度为比较URL子项时是否区分大小写,或是否支持通配符,或是否支持包含关系,或是否支持域名和IP地址对应关系。
7.根据权利要求1所述的方法,其特征在于,该方法进一步包括网络设备将匹配结果上报计费系统。
8.根据权利要求1、2、3、4或7所述的方法,其特征在于,所述网络设备为GPRS网关支持节点或无线应用协议网关。
9.根据权利要求8所述的方法,其特征在于,所述网络设备上设置有用于拆分和匹配URL的URL匹配模块。
全文摘要
本发明公开了一种统一资源定位符的匹配方法。该方法的过程包括网络设备设置URL过滤条件,并获取用户数据包URL;网络设备根据协议规定的格式拆分用户数据包URL和URL过滤条件,获得用户数据包URL以及URL过滤条件的URL子项;网络设备比较URL过滤条件和用户数据包URL的相同类型子项,得出匹配结果。本发明这种对URL先进行拆分然后匹配的方法简单易行,计费系统也容易根据网络设备上报的匹配结果获得细微的数据内容信息,提高内容计费的精细度,使整个网络更好地实现基于内容的计费。该方法能够方便地应用于网络设备,从而为运营商创造更多的额外价值。
文档编号H04L29/06GK1798147SQ200410103468
公开日2006年7月5日 申请日期2004年12月28日 优先权日2004年12月28日
发明者罗鹏, 田会霞 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1