本发明涉及通信技术领域,更具体的涉及一种家庭网络内容访问控制方法及装置。
背景技术:
现有的家庭网络内容访问控制通常是基于路由器自带的防火墙中的域名过滤功能,通过网络管理员逐条手动输入域名,来实现家庭网络对该域名的访问限制,因此,该方法只针对较少域名的情况比较适用,若有大量域名需要限制时,则给网络管理者增加了极大的负担。比如,屏蔽某一类型的网站时,家庭路由器则无法实现。
基于netfilter框架的内容过滤算法是目前网络内容访问限制的常用方案之一。其中,内容过滤算法主要通过关键词匹配、潜在语义索引、神经网络等方式,建立修正字词特征库,利用netfilter防火墙自带的安全功能包过滤功能,过滤网络数据包中的内容数据。netfilter架构就是在整个网络流程的若干位置放置检查点,检查点上登记处理函数对数据包进行处理。图1为现有技术中netfilter结构框架图,在该框架中,对于收到的每个数据包,都需要从a点进来,经过路由判决,若是发送给本机的就经过b点,然后往协议栈的上层继续传递;否则,若该数据包的目的地不是本机,那么就经过c点,然后顺着e点将该包发送出去。基于netfilter框架的内容过滤算法虽然有较高的过滤查准率和查全率,但是在过滤过程中需要消耗较多的计算和存储资源;该方法在过滤网络数据时,需要访问所有ip数据包中的数据。如果是明文数据可以直接扫描过滤,但是若遇到非明文数据(经过编码或压缩),还需要经过ip分片重组和协议还原才能进行扫描过滤。图2为现有技术对非明文数据的过滤方法流程图,对非明文数据的过滤方法不仅会消耗大量资源,还会增加网络时延。
综上所述,现有的家庭网络内容访问控制方法存在消耗大量资源,增加网络时延的问题。
技术实现要素:
本发明实施例提供一种家庭网络内容访问控制方法及装置,用以解决现有的家庭网络内容访问控制方法存在消耗大量资源,增加网络时延的问题。
本发明实施例提供一种家庭网络内容访问控制方法,包括:
获取待检测的设备对应的dns请求包,从所述dns请求包内解析出与所述dns请求包对应的域名地址;
在缓存区域内获取所述域名地址的标签,将所述域名地址的标签和所述设备的地址与限制列表进行匹配,若匹配成功,则确定所述域名地址为所述设备的限制访问内容。
优选地,所述将所述域名地址的标签和所述设备的地址与限制列表进行匹配之前,还包括:
若从所述缓存区域内没有获取所述域名地址的标签,则从网页http://domain.opendns.com/$内获取所述域名地址的标签,并将获取到的所述域名地址的标签存储到所述缓存区域内。
优选地,所述从所述dns请求包内解析出与所述dns请求包对应的域名地址,包括:
解析所述dns请求包,从所述dns请求包中提取请求的url并从所述url中解析出与所述dns请求包对应的域名地址。
优选地,所述将所述域名地址的标签和所述设备的地址与限制列表进行匹配之后,还包括:
若匹配不成功,将所述dns请求包返回至路由器。
优选地,所述获取待检测的设备发出的dns请求包之前,还包括:
与路由器之间建立连接,接收所述路由器设置的待监控的设备对应的所述dsn请求包。
本发明实施例还提供一种家庭网络内容访问控制装置,包括:
解析单元,用于获取待检测的设备发出的dns请求包,从所述dns请求包内解析出与所述dns请求包对应的域名地址;
匹配单元,用于在缓存区域内获取所述域名地址的标签,将所述域名地址的标签和所述设备的地址与限制列表进行匹配,若匹配成功,则确定所述域名地址为所述设备的限制访问内容。
优选地,所述匹配单元还用于:
若从所述缓存区域内没有获取所述域名地址的标签,则从网页http://domain.opendns.com/$内获取所述域名地址的标签,并将获取到的所述域名地址的标签存储到所述缓存区域内。
优选地,所述匹配单元具体用于:解析所述dns请求包,从所述dns请求包中提取请求的url并从所述url中解析出与所述dns请求包对应的域名地址。
优选地,所述匹配单元还用于:
若匹配不成功,将所述dns请求包返回至路由器。
优选地,所述解析单元还用于:
与路由器之间建立连接,接收所述路由器设置的待监控的设备对应的所述dsn请求包。
本发明实施例中,提供了一种家庭网络内容访问控制方法,包括:获取待检测的设备对应的dns请求包,从所述dns请求包内解析出与所述dns请求包对应的域名地址;在缓存区域内获取所述域名地址的标签,将所述域名地址的标签和所述设备的地址与限制列表进行匹配,若匹配成功,则确定所述域名地址为所述设备的限制访问内容。现有技术中,由于取得域名地址的标签的过程需要远程访问,会在网络中增加额外的时延,而在本方法中,将获得的域名地址的标签存储在存储库内,在将域名地址的标签和设备的地址与限制列表进行匹配时,可以先在本地缓存区域内的缓存数据进行匹配,从而减少了系统对网络时延的影响;进一步地,上述方法采用域名地址的标签的匹配方法来限制相关标签的网络访问,对资源消耗较少,反应速度快,对于网络管理者而言操作简单,只需要选择相应的标签即可,从而解决了现有的家庭网络内容访问控制方法存在消耗大量资源,增加网络时延的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中netfilter结构框架图;
图2为现有技术对非明文数据的过滤方法流程图;
图3为本发明实施例提供的一种家庭网络内容访问控制方法流程示意图;
图4为本发明实施例一提供的一种家庭网络内容访问控制方法流程示意图;
图5为本发明实施例提供的一种家庭网络内容访问控制装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图3为本发明实施例提供的一种家庭网络内容访问控制方法流程示意图,如图3所示,该方法包括以下步骤:
步骤301,获取待检测的设备对应的dns请求包,从所述dns请求包内解析出与所述dns请求包对应的域名地址;
步骤302,在缓存区域内获取所述域名地址的标签,将所述域名地址的标签和所述设备的地址与限制列表进行匹配,若匹配成功,则确定所述域名地址为所述设备的限制访问内容。
在步骤301之前,需要先将sdn(英文为:softwaredefinednetwork,中文为:软件定义网络)控制与路由器之间建立连接关系,在路由器和sdn控制器之间建立连接关系之后,sdn控制器可以对路由器的流表进行设备,以使路由器将需要监控的设备发出的dns请求包转发至sdn控制器。
在步骤301中,sdn控制器收到dns(英文为:domainnamesystem,中文为:域名系统)请求包,对收到的dns请求包进行解析,从dns请求包提取出url,然后从url(英文为:uniformresourcelocator,中文为:统一资源定位符)中解析出与请求包对应的域名地址。
在步骤302中,在缓存区域内获取域名地址的标签,将域名地址的标签和设备的地址与限制列表进行匹配。需要说明的是,存储区域一般都存储在本地,即不需要网络访问,即可以从缓存区域内获取域名地址的标签,该方法相对于现有技术中从网页内获取域名地址的标签,减少网络时延对系统的影响。
在本发明实施例中,若在缓存区域内获取域名地址的标签失败,则需要进入到特定的网址:http://domain.opendns.com/$,从上述网址内获取域名地址的标签。其中,特定的网址http://domain.opendns.com/$提供了上千万的域名的标签,比如,baidu.com的标签为searchengine(搜索引擎);taobao.com的标签为classifieds、ecommerce/shopping(分类信息,电子商务/购物)。从上述网址中获取域名地址的标签后,标签会自动存入本地缓存区域内。
在本发明实施例中,当从缓存区域内或相应的网址获取到域名地址的标签之后,需要将域名地址的标签和设备的地址与限制列表进行匹配,若匹配成功后,则可以确定该标签的域名地址在此设备上被限制访问,sdn控制器需要丢弃该dns请求包,从而可以实现此设备访问内容的功能。
进一步地,若匹配失败,则表明该标签的内容可以在此设备上访问,sdn不对该dns请求包做任何修改,直接将dns请求包回传至路由器。
将所述域名地址的标签和所述设备的地址与限制列表进行匹配,若匹配成功,则确定所述域名地址为所述设备的限制访问内容。
图4为本发明实施例一提供的一种家庭网络内容访问控制方法流程示意图,以下结合图4来具体介绍家庭网络内容访问控制方法的具体实现过程:
步骤401,将sdn控制器与路由器建立连接;其中,路由器与家庭终端连接。对路由器流表进行设置,将需要监控的设备发出的dns请求包转发到sdn控制器。
步骤402,控制器解析dns请求包。
步骤403,从数据包中提取出请求的url,然后从url中解析出域名地址。
步骤404,查询本地库,若查询到域名地址的标签,执行步骤406;若查询不到域名地址的标签,执行步骤405。
步骤405,访问http://domain.opendns.com/${域名地址},从页面上取得该域名的标签。http://domain.opendns.com提供了上千万的域名的标签(tags),比如:baidu.com(百度)的标签为searchengine(搜索引擎);taobao.com(淘宝)的标签为classifieds,ecommerce/shopping(分类信息,电子商务/购物)。网络管理员需要在限制列表中填入相应设备内容限制访问的标签。
步骤406,将取得的标签和设备地址与限制列表做匹配。如果匹配成功,则表明该标签的域名在此设备上被限制访问,执行步骤407;如果匹配失败则表明该标签的内容可以在此设备上访问,执行步骤408。
步骤407;sdn控制器丢弃该dns请求包,以实现限制此设备访问内容的功能。
步骤408:sdn不对该dns请求包做修改,直接回传给路由器。
基于同一发明构思,本发明实施例提供了一种家庭网络内容访问控制装置,由于该装置解决技术问题的原理与一种家庭网络内容访问控制方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。
图5为本发明实施例提供的一种家庭网络内容访问控制装置,如图5所述,该装置包括:解析单元501和匹配单元502。
解析单元501,用于获取待检测的设备发出的dns请求包,从所述dns请求包内解析出与所述dns请求包对应的域名地址;
匹配单元502,用于在缓存区域内获取所述域名地址的标签,将所述域名地址的标签和所述设备的地址与限制列表进行匹配,若匹配成功,则确定所述域名地址为所述设备的限制访问内容。
优选地,所述匹配单元502还用于:
若从所述缓存区域内没有获取所述域名地址的标签,则从网页http://domain.opendns.com/$内获取所述域名地址的标签,并将获取到的所述域名地址的标签存储到所述缓存区域内。
优选地,所述匹配单元502具体用于:解析所述dns请求包,从所述dns请求包中提取请求的url并从所述url中解析出与所述dns请求包对应的域名地址。
优选地,所述匹配单元502还用于:
若匹配不成功,将所述dns请求包返回至路由器。
优选地,所述解析单元501还用于:
与路由器之间建立连接,接收所述路由器设置的待监控的设备对应的所述dsn请求包。
应当理解,以上一种家庭网络内容访问控制装置包括的单元仅为根据该设备装置实现的功能进行的逻辑划分,实际应用中,可以进行上述单元的叠加或拆分。并且该实施例提供的一种家庭网络内容访问控制装置所实现的功能与上述实施例提供的一种家庭网络内容访问控制法一一对应,对于该装置所实现的更为详细的处理流程,在上述方法实施例一中已做详细描述,此处不再详细描述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。