掌桥专利:专业的专利平台
掌桥专利
首页

一种家庭智能网关

文献发布时间:2023-06-19 19:28:50


一种家庭智能网关

技术领域

本申请涉及通信技术领域,尤其涉及一种家庭智能网关。

背景技术

路由器是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。

路由器与多个设备终端连接,对于学生而言,一方面网上海量的学习资源可以帮助他们更好地进行科学文化知识的学习,疫情期间网课更是走进了大众视野。另一方面网络上也充斥着大量劣质内容,一旦触碰,必定成为阻碍其身心健康发展的不利因素。因此,如何高效、安全的使用网络已经成为当代家长们急切关心的问题。

发明内容

本申请提供了一种家庭智能网关,以提高对局域网内各设备终端的上网规则控制。

为了解决上述技术问题,本申请实施例公开了如下技术方案:

本申请实施例公开了一种家庭智能网关,包括:存储器,用于接收并存储控制数据,形成至少一条组记录,所述组记录包括:成员信息数据、定时器、URL过滤规则和执行标记字段;所述执行标记字段包括成功标记和失败标记;

iptbles表,用于限定所述终端设备的的网关配置规则,所述终端设备与所述家庭智能网关通信连接;

执行模块,获取系统当前时间,读取所述存储器存储的所述组记录,如果所述当前时间在所述组记录对应的定时器的时间段内,且所述组记录中对应的执行标记字段与所述成功标记不一致,则添加所述组记录对应的URL过滤规则,并将所述组记录中对应的执行标记字段修改以为成功标记;

如果所述当前时间不在所述组记录对应的定时器的时间段内,且所述组记录中对应的执行标记字段与所述失败标记不一致,则删除所述组记录对应的URL过滤规则,并将所述组记录中对应的执行标记字段修改为失败标记;

否则,不进行URL过滤规则的添加或删除。

有益效果:

本申请实施例提供了一种家庭智能网关,包括:存储器,用于接收并存储控制数据,形成至少一条组记录,所述组记录包括:成员信息数据、定时器、URL过滤规则和执行标记字段;所述执行标记字段包括成功标记和失败标记。执行模块,获取系统当前时间,读取所述存储器存储的所述组记录,如果所述当前时间在所述组记录对应的定时器的时间段内,且所述组记录中对应的执行标记字段与所述成功标记不一致,则添加所述组记录对应的URL过滤规则,并将所述组记录中对应的执行标记字段修改以为成功标记;如果所述当前时间不在所述组记录对应的定时器的时间段内,且所述组记录中对应的执行标记字段与所述失败标记不一致,则删除iptbles表中所述组记录对应的URL过滤规则,并将所述组记录中对应的执行标记字段修改为失败标记;否则,不进行URL过滤规则的添加或删除。本申请可实现不同时段,不同设备对不同网站的访问限制。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

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

图1为本申请实施例提供的一种家庭智能网关应用场景;

图2为本申请实施例提供的一种路由器结构示意图;

图3为本申请实施例提供的一种CPU示意图;

图4为本申请示例的一种分组界面显示示意图;

图5为本申请示例的一种上网规则界面显示示意图;

图6为本申请示例的一种组记录数据结构示意图;

图7为本申请示例的一种路由器分组控制流程示意图

图8为本申请示例的一种执行模块的执行流程示意图;

图9为本申请示例的另一种执行模块的执行流程示意图;

图10为本申请示出的当前时间判定方法。

具体实施方式

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

图1为本申请实施例提供的一种家庭智能网关应用场景。如图1所示,用户终端100提出访问信息。家庭智能网关包括路由器200,根据路由、桥或其他业务规则,选择报文路径,与外部服务器300连接。

外部服务器300对访问信息进行回应,发出响应信息。路由器200接收响应信息,并将响应信息转发至用户终端。

图2为本申请实施例提供的一种路由器结构示意图。如图2中所示,路由器包括:交换芯片和CPU。其中:交换芯片设有以太网端口和级联端口。以太网端口包括若干lan端口或wan端口,或若干lan端口、wan端口。在本申请示例中路由器设有第一lan端口、第二lan端口、第三lan端口,与用户终端连接,wan端口与广域网通信设备连接。用户终端可以是手机、电脑等上网设备。在本申请中为方便介绍,以下第一lan端口简称port1、第二lan端口简称port2、第三lan端口简称port3和wan端口简称port4。

级联端口包括第一级联端口简称port5和第二级联端口简称port6。CPU包括:第一主端口和第二主端口,CPU内设置级联加速模块,根据路由器内报文流向,配置级联端口与主端口的连接方式。第一主端口cport1与第一级联端口port5连接,第二主端口port2与第二级联端口port6连接。CPU记录该级联关系表。

在本申请中第一级联端口port5为lan级联端口;第二级联端口port6为wan级联端口。

CPU内预设以太网端口的port-vlan关系表,其中,port指交换芯片的以太网端口,端口数量与产品形态有关,在本申请中以太网端口有4个,分别为port1、port2、port3、port4。

以太网端口接收报文,给该报文添加vlan标记字段,用于区分端口。CPU处理标记后的报文,根据port-vlan关系表对报文进行端口识别,并剥除或修改报文中的vlan标记字段,实现以太网端口之间的安全、绑定等高级功能。CPU内还设有iptables表,用于记录各用户终端对应的MAC地址及信息过滤规则。

图3为本申请实施例提供的一种CPU示意图。为了实现不同时段,不同设备对不同网站的访问限制,本申请提供的路由器,其CPU接收控制器的控制数据,并将控制数据存储于存储器中。控制数据包括多条组记录,其中组记录包括:成员信息数据、规则数据和执行标记字段。执行模块以定时轮询的方式从存储器中读取记录,并通过当前时间与执行标记字段,确定当前时间实现对组记录中成员上网规则的控制。

存储器内设置多个组数据链表,组数据链表中包括:成员信息数据域、规则数据域和执行标记字段域。成员信息数据域用于存储成员信息数据,规则数据域用于存储规则数据,执行标记字段域用于存储执行标记字段。因此,组记录包括:成员信息数据、规则数据和执行标记字段。图4为本申请示例的一种分组界面显示示意图;图5为本申请示例的一种上网规则界面显示示意图;图6为本申请示例的一种组记录数据结构示意图。如图4、图5和图6所示,组记录包括:成员信息数据、规则数据和执行标记字段。

用户通过在控制器如图4和图5的界面中输入分组和上网规则数据,实现组记录的控制数据。控制数据在存储器中以链表形式存在。

其中:成员信息数据包括组成员的MAC地址,组成员可能是1个,也可以是2个或多个。可根据实际需要将具有相同上网规则的成员设置为一组。

规则数据包括:定时器和URL过滤规则。定时器用于限定某一URL过滤规则对应的时间,包括:重复日期字段和时间段字段。重复日期可以周或月为周期进行重复设置。

根据日常工作或生活需要,通常以周为周期进行重复日期的设置。

时间段字段用于限定24H内的规则时间段。为方便使用,简化程序,时间段字段数据为空时,代表24H可用。

URL过滤规则为URL黑白名单,同一时刻黑白名单不可同时存在,同一时刻,某一网址不可既存在于黑名单又存在于白名单中。为方便使用,简化程序,URL过滤规则的数据域为空时,代表所有URL均可通过。

执行标记字段包括:代表规则生效的成功标记,代表规则未生效的失败标记。其中成功标记可以是TRUE、T或其他标记,失败标记可以是FLASE、F或其他标记。

图7为本申请示例的一种路由器分组控制流程示意图。如图7中所示,执行模块获取系统当前时间,读取存储器存储的组数据链表,根据当前时间及组数据链表中对应的URL过滤规则,修改网关配置规则。具体的,包括:

获取系统当前时间,设置为比对时间,包括:周期时间刻度以及每日时间刻度,如周期时间刻度可以为年、月、日或周几。每日时间刻度即为当前的时段刻度。

使用iptbles命令,将iptbles表中的网关配置规则修改为与当前时间对应的URL过滤规则一致,并修改网关配置规则与URL过滤规则一致的组记录对应的执行标记字段。

图8为本申请示例的执行模块的执行流程示意图。使用iptbles命令,将网关配置规则修改为与当前时间对应的URL过滤规则一致,并修改网关配置规则与URL过滤规则一致的组记录对应的执行标记字段还包括:

如果当前时间在当前组记录中对应的定时器的时间段内,调取当前组记录中对应的执行标记字段。如果当前组记录中对应的执行标记字段不为成功标记,遍历当前组记录的成员MAC地址,使用iptbles命令将当前组记录中的成员MAC添加控制规则,使得iptbles表中的控制规则与当前组记录的控制规则一致,并将当前组记录的执行标记字段修改为成功标记。将在当前组记录中对应的定时器的时间段内的组成员的控制规则修改为与组记录的URL过滤规则一致。

如果当前时间与当前组记录中对应的定时器的时间段内,调取当前组记录中对应的执行标记字段。如果当前组记录中对应的执行标记字段为成功标记,进行下一条组记录的设置。

如果当前时间不在与当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段不为失败标记,则遍历当前组记录的成员MAC,使用iptbles命令删除iptbles表中对应成员的URL控制规则,并将当前组记录的执行标记字段修改为失败标记。将不在当前组记录中对应的定时器的时间段内的组成员的控制规则修删除。

如果当前时间不在与当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段为失败标记,进行下一条组记录的设置。

图9为本申请示例的另一种执行模块的执行流程示意图。如图9中所示,执行模块获取系统当前时间,读取存储器存储的组数据链表,根据当前时间及组数据链表中对应的URL过滤规则,修改网关配置规则。具体的,包括:

获取系统当前时间,设置为比对时间,包括:周期时间刻度以及每日时间刻度,如周期时间刻度可以为年、月、日或周几。每日时间刻度即为当前的时段刻度。

使用iptbles命令,将iptbles表中的网关配置规则修改为与当前时间对应的URL过滤规则一致,并修改网关配置规则与URL过滤规则一致的组记录对应的执行标记字段。

使用iptbles命令,将网关配置规则修改为与当前时间对应的URL过滤规则一致,并修改网关配置规则与URL过滤规则一致的组记录对应的执行标记字段还包括:获取当前组记录,如果当前组记录的成员信息数据域为空,则表明路由器相关联的设备终端已完成全部规则设置,不需要进行下一步。

如果当前组记录的成员信息数据域不为空,则将当前时间与当前组记录中对应的定时器进行比对。

如果当前时间在当前组记录中对应的定时器的时间段内,调取当前组记录中对应的执行标记字段。如果当前组记录中对应的执行标记字段为失败标记,遍历当前组记录的成员MAC地址,使用iptbles命令添加控制规则,并将当前组记录的执行标记字段修改为成功标记。

如果当前时间与当前组记录中对应的定时器的时间段内,调取当前组记录中对应的执行标记字段。如果当前组记录中对应的执行标记字段为成功标记,进行下一条组记录的设置。

如果当前时间不在与当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段不为失败标记,则遍历当前组记录的成员MAC,使用iptbles命令删除控制规则,并将当前组记录的执行标记字段修改为失败标记。

如果当前时间不在与当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段为失败标记,进行下一条组记录的设置。

图10为本申请示出的当前时间判定方法,当前时间不在与当前组记录中对应的定时器的时间段内包括:当前时间的周期时间刻度不在当前组记录的重复日期内,或当前时间的每日时间刻度不在当前组记录的时间段内。如:当前时间为周一、18:30。当前组记录的周期时间刻度、时间段为:周二、14:00-20:30,则当前时间不在与当前组记录中对应的定时器的时间段内。又如当前时间为周二、18:30。当前组记录的周期时间刻度、时间段为:周二、14:00-16:00,则当前时间不在与当前组记录中对应的定时器的时间段内。当前时间为周二、18:30。当前组记录的周期时间刻度、时间段为:周二、14:00-120:30,则当前时间在当前组记录中对应的定时器的时间段内。

为了实现对成员上网规则限定的及时性,执行模块设有预设周期,每隔一个预设周期,执行模块执行一次网关配置规则的修改。如:预设周期为60s,则执行模块执行一次网关配置规则的修改后,循环至获取系统当前时间,再次进行网关配置规则的修改。

本申请提供的路由器包括:存储器,用于存储至少一个组记录,组记录以链表形式进行存储,包括:成员信息数据、规则数据和执行标记字段。其中,成员信息数据包括组成员的MAC地址。规则数据包括:定时器和URL过滤规则。执行标记字段包括:代表规则生效的成功标记,代表规则未生效的失败标记。执行模块,间隔预设时间段内,获取系统当前时间,读取存储器存储的组数据链表,根据当前时间及组数据链表中对应的URL过滤规则,修改网关配置规则,并修改当前组记录的执行标记字段。

获取系统当前时间,当前时间包括:周期时间刻度以及每日时间刻度。获取当前组记录信息,如果当前组记录的成员信息数据域不为空,且当前时间在当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段不为失败标记,则遍历当前组记录的成员MAC地址,使用iptbles命令添加当前组记录的URL过滤规则,并将当前组记录的执行标记字段修改为成功标记。

如果当前组记录的成员信息数据域不为空,且当前时间在当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段为成功标记,获取下一条组记录。

如果当前组记录的成员信息数据域不为空,且当前时间不在当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段为失败标记,获取下一条组记录。

如果当前组记录的成员信息数据域不为空,且当前时间不在当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段不为失败标记,则遍历当前组记录的成员MAC,使用iptbles命令删除控制规则,并将当前组记录的执行标记字段修改为失败标记。

如果当前组记录的成员信息数据域为空,则进入循环。

系统开始运行时,新建iptables表,并进行初始化。iptbles是Linux内核集成的IP信息包过滤系统,包括:创建自定义链表、在指定位置插入规则、删除自定义链的规则。初始化的iptbles中对各个终端设备的设置为均可通行。

本申请提供了一种网关设备的分组控制方法,包括:

S01:配置多条组记录,并将其保存到数据库,记录以链表形式存储,每条组记录包含组成员信息数据、规则数据及记录执行flag。

其中:组成员信息记录每个控制组的MAC地址。

规则数据包括定时器描述(重复日期及时间段两个字段)及URL过滤规则描述(URL黑白名单):

定时器包含重复日期及时间段两个字段,重复日期项代表此条记录在每周的周几生效,可单选、多选;时间段项代表此条记录在一天内哪段时间生效,时间段为空,表示全天可用;

URL过滤规则即URL的黑白名单,同一时刻黑白名单不可同时存在,为空表示无规则,所有URL均可通过。

记录执行flag,用于标记iptables表的规则是否已生效。规则已生效置TRUE,未生效置FALSE,每条记录初始flag为FALSE。

S02:预设iptables表,并进行iptables表初始化。

S03:预设时间周期内,获取系统当前时间,包括:周期时间刻度以及每日时间刻度。

S04:获取当前组记录,如果当前组记录的成员信息数据域为空,则表明路由器相关联的设备终端已完成全部规则设置,不需要进行下一步,返回S03。

S05:如果当前组记录的成员信息数据域不为空,则将当前时间与当前组记录中对应的定时器进行比对。

S051:如果当前时间在当前组记录中对应的定时器的时间段内,调取当前组记录中对应的执行标记字段。如果当前组记录中对应的执行标记字段为失败标记,遍历当前组记录的成员MAC地址,使用iptbles命令添加当前组记录的URL过滤规则,并将当前组记录的执行标记字段修改为成功标记,返回S04进行下一条组记录的设置。

S052:如果当前时间与当前组记录中对应的定时器的时间段内,调取当前组记录中对应的执行标记字段。如果当前组记录中对应的执行标记字段为成功标记,返回S04进行下一条组记录的设置。

S053:如果当前时间不在与当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段不为失败标记,则遍历当前组记录的成员MAC,使用iptbles命令删除当前组记录的URL过滤规则,并将当前组记录的执行标记字段修改为失败标记,返回S04进行下一条组记录的设置。

S054:如果当前时间不在与当前组记录中对应的定时器的时间段内,且当前组记录中对应的执行标记字段为失败标记,返回S04进行下一条组记录的设置。

由于以上实施方式均是在其他方式之上引用结合进行说明,不同实施例之间均具有相同的部分,本说明书中各个实施例之间相同、相似的部分互相参见即可。在此不再详细阐述。

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

本领域技术人员在考虑说明书及实践这里发明的公开后,将容易想到本申请的其他实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求的内容指出。

以上所述的本申请实施方式并不构成对本申请保护范围的限定。

相关技术
  • 一种智能家庭网关系统及智能家庭网关
  • 一种智能家庭网关及基于智能家庭网关实现的按策略自动接入云服务的系统及其应用方法
技术分类

06120115920156