专利名称:一种路由模式下控制上网终端数量的方法、系统和网关的制作方法
技术领域:
本发明涉及网络技术,尤其涉及一种路由模式下控制上网终端数量 的方法、系统和网关。
背景技术:
家庭网络是指家庭内部或者小型办公场所以有线或无线方式连接多 个设备形成的网络,具有网络接入、安全控制、应用适配和应用终端管 理等基本功能。通过家庭网络可以实现公用网络功能和服务在家庭内部 的延伸、以及家庭内部不同设备之间的信息流通和资源共享,提供语 音、数据、视频、控制类等多种业务。家庭网关是家庭网络和外部网络的接口单元,提供数据转发、家庭内部联网、QoS、安全、地址管理、维护管理等功能,可以提供网络接 入和特定应用功能。家庭网关连接外部线路可使用ADSL 2+、 VDSL2、以太网接口、 PON接口等不同的物理接口形式,访问外部网络可采用路由、桥接不 同的模式及PPPoE、 DHCP、静态IP等不同的拨号方式。为了细分市场,精确控制用户的使用行为,合理有效地利用资源, 运营商需要了解和控制每个家庭网关下可连接的用户上网终端的数量。 桥接模式下,用户上网终端的数量控制可以很方便地在局端通过限制桥 接的对话(session)数目来实现。但在路由模式下,上网终端的数量控 制却很难在局端实现。发明内容有鉴于此,本发明要解决的技术问题是提供一种在路由模式下的控 制上网终端数量的方法和系统,可以限制路由模式下上网终端的数量。
本发明提供一种在路由模式下的控制上网终端的方法,包括 在网关中设置最大上网终端数;当所述网关确定接收到的网络访问请求来自新的终端时,确定当前 上网终端数;当所述网关确定所述当前上网终端数大于或等于所述最大上网终端 数时,拒绝所述网络访问请求。其中,可以通过局端的网关管理系统在网关中设置最大上网终端数。该方法还包括在所述网关中维护当前上网终端列表,当所述网关允许来自新的终 端的网络访问请求后,将所述新的终端的硬件地址加入所述当前上网终 端列表。其中,网关确定所述阿络请求来自新的终端的步骤包括 所述网关通过分析所述网络请求获得对应的硬件地址; 所述终端判断所述对应的硬件地址是否在所述当前上网终端列表 中,如果不在,则确定所述网络请求来自新的终端。 而确定当前上网终端数的步骤包括统计所述当前上网终端列表中的硬件地址数,并确定为所述当前上 网终端数。进一步,该方法还包括当将所述新的终端的硬件地址加入所述当前上网终端列表时,所述 网关为所述新的终端设置对应的定时器;当所述当前上网终端列表中的上网终端通过所述网关上网时,所述 网关将对应的定时器清零;当所述定时器超时时,所述网关从所述当前上网终端列表中删除与 所述定时器对应的终端的硬件地址。进一步,该方法还包括步骤所述网关产生终端属性列表,所述终端属性列表中包括终端的硬件 地址和类型;
在所述网关中设置指定类型的最大上网终端数;指定类型的终端,确定指定类型的当前上网终端数;当所述网关确定所述指定类型的当前上网终端数大于或等于所述指定类型的最大上网终端数时,拒绝所述网络访问请求。本发明提供一种在路由模式下的控制上网终端的系统,包括 网关管理系统,用于下发设置消息,消息中包含最大上网终端数; 网关,用于接收来自所述网关管理系统的所述设置消息,并设置所述最大上网终端数;当确定接收到的网络访问请求来自新的终端时,确定当前上网终端数;当确定所述当前上网终端数大于或等于所述最大上网终端数时,拒绝所述网络访问请求。 进一步,所述网关包括数据存储模块,用于存储所述最大上网终端数和当前上网终端列表;消息接收模块,用于接收来自所述网关管理系统的所述设置消息, 并将所述最大上网终端数存储在所述数据存储模块;终端控制模块,用于分析接收到的网络访问请求,当确定所述网络 访问请求来自新的终端时,确定当前上网终端数;判断所述当前上网终 端数是否大于或等于所述最大上网终端数时,如果是,拒绝所述网络访 问请求,否则,允许所述网络访问请求,并将所述新的终端加入所述当 前上网终端列表。所述网关还可以包括定时器管理模块,用于为所述当前上网终端设置定时器,当定时器 超时时,将与所述超时的定时器对应的终端从所述当前上网终端列表中 删除。进一步,所述设置消息中还包括与所述最大上网终端数对应的指定 类型;所述系统还包括属性列表生成模块,用于获得终端的类型,将所述 终端的类型存储在所述终端属性列表中;
所述数据存储模块,还用于存储所述指定类型和包含终端的类型的终端属性列表;所述终端控制模块,还用于根据所述终端属性列表,确定所述指定 类型的当前上网终端数,判断所述指定类型的当前上网终端数是否大于 或等于所述指定类型的最大上网终端数时,如果是,拒绝所述网络访问 请求,否则,允许所述网络访问请求,并将所述新的终端加入所述当前 上网终端列表。本发明还提供一种可用于上面的方法和系统的网关,包括 数据存储模块,用于存储最大上网终端数和当前上网终端列表; 消息接收模块,用于接收设置消息,所述消息中包括所述最大上网 终端数,将所述最大上网终端数存储在所述数据存储模块;终端控制模块,用于分析接收到的网络访问请求,当确定所述网络 访问请求来自新的终端时,确定当前上网终端数;判断所述当前上网终 端数是否大于或等于所述最大上网终端数时,如果是,拒绝所述网络访 问请求,否则,允许所述网络访问请求,并将所述新的终端加入所述当 前上网终端列表。其中,所述当前上网终端列表中包括所述当前上网终端的硬件地址;所述终端控制模块,用于通过分析接收到的网络访问请求来获得对 应的硬件地址,判断所述对应的硬件地址是否在所述当前上网终端列表 中,如果不在,则确定所述网络请求来自新的终端;统计所述当前上网 终端列表中的硬件地址数,确定为所述当前上网终端数。进一步,所述网关还包括定时器管理模块,用于为所述当前上网终端设置定时器,当定时器 超时时,将与所述超时的定时器对应的终端从所述当前上网终端列表中 删除。进一步,所述网关还包括属性列表生成模块,用于获得终端的类 型,将所述终端的类型存储在所述数据存储模块中的终端属性列表中; 所述数据存储模块,还用于存储与所述最大上网终端数对应的指定类型,并存储所述终端属性列表;所述终端控制^^莫块,还用于根据所述终端属性列表,确定所述指定 类型的当前上网终端数,判断所述指定类型的当前上网终端数是否大于 或等于所述指定类型的最大上网终端数时,如果是,拒绝所述网络访问 请求,否则,允许所述网络访问请求,并将所述新的终端加入所述当前 上网终端列表。其中,所述指定类型包括但不限于计算机、机顶盒、摄像头、电话 机等。本发明提供的在路由模式下的控制上网终端数量的方法和系统,在 网关中设置最大上网终端数,由网关分析网络访问请求,获得当前上网 终端的数量,在大于或等于最大上网终端数的时候,拒绝新的终端的网 络访问请求,从而控制了上网终端的数量,限制路由模式下上网终端的 数量。进一步,通过为上网终端设定定时器,解决了上网终端的更新问题。进一步,通过对终端的类型的分析,可以对不同类型的上网终端的 数量分别进行控制,从而实现差异化服务。
图1为示出根据本发明的路由模式下控制上网终端数量的方法的一 个实施例的流程图;图2为示出根据本发明的方法的一个实施例中网关管理系统向家庭 网关下发最大上网终端数的流程图;图3为示出根据本发明的方法的控制上网应用终端数量的流程图;图4为示出根据本发明的路由模式下控制上网终端数的系统的应用 的示意图;图5为示出根据本发明的系统的一个实施例的网关的方框图。
具体实施例方式
下面参照附图和优选实施例对本发明进行详细的描述。 图1为示出根据本发明的路由模式下控制上网终端数量的方法的一 个实施例的流程图。如图1所示,在步骤101,由局端的网关管理系统向网关下发最大上网终端数,在网关中设置最大上网终端数。网关管理系统和网关可以通过TR069进行通信。在步骤103,网关截获终端发出的网络访问请求,通过分析网络访 问请求,获得对应终端的硬件地址,即MAC (介质访问控制)地址。 在网关中存储当前上网终端列表,列表中包括当前上网终端的硬件地 址。网关比较该硬件地址和当前上网终端列表中存储的硬件地址是否都 不相同,如果不是,则该网络访问请求由上网终端发出,网关转发该网 络访问请求,如果是,则该硬件地址为新的请求上网的终端的硬件地 址,网关通过计算当前上网终端列表中的硬件地址数来获得当前上网终 端数。在步骤105,网关判断当前上网终端数是否大于或者等于最大上网 终端数,如果是,则执行步骤107,否则,执行步骤109。在步骤107,网关拒绝该网络访问请求,流程结束。在步骤109,网关允许该网络访问请求,将该网络访问请求中包含 的硬件地址添加到网关的当前上网终端列表中。根据本发明的路由模式下控制上网终端数量的方法的一个实施例, 在网关中为每个上网终端设定定时器,当上网终端通过网关上网时,网 关清零该上网终端的定时器,并重新开始计时,以保证所述上网终端在 持续上网时不会从当前上网终端列表中删除,当上网终端长期空闲时, 其对应的定时器将超时,在网关中的当前上网终端列表中删除该终端对 应的硬件地址,拒绝该终端随后的网络访问请求。通过这样的方式,可 以解决上网终端的更新问题。图2为示出根据本发明的方法的一个实施例中网关管理系统向家庭 网关下发最大上网终端数的流程图。如图2所示,在步骤201,网关管理系统向家庭网关发起CONNECTIONREQUST,请求建立连接;在步骤203,家庭网关回应网关管理系统请求,连接建立;在步骤205,家庭网关向网关管理系统上报设备基本信息,请求网关管理系统的后续操作;在步骤207,网关管理系统调用SetTerminalNumber方法,在家庭网关设置最大上网终端数;在步骤209,家庭网关回应SetTerminalNumberResponse,最大上网终端数下发结束;在步骤211,网关管理系统通知家庭网关下发完成,断开连接。 图3为示出根据本发明的方法的控制上网应用终端数量的流程图。 如图3所示,在步骤301,由局端的网关管理系统向网关下发最大上网应用终端数,在网关中设置最大上网应用终端数。在步骤303,网关获得家庭网络中终端的硬件地址和类型。具体的实现将在稍后详细描述。终端的类型可以划分为应用终端(如机顶盒)和计算机终端,将终端的硬件地址和类型存储在网关的终端属性列表中。在步骤305,网关截获终端发出的网络访问请求,通过分析网络访 问请求获得网络访问请求中的硬件地址。在网关中存储当前上网终端列 表,列表中包括当前上网应用终端的硬件地址。网关比较该硬件地址和 当前上网终端列表中存储的硬件地址是否都不相同,如果不是,则该网 络访问请求由当前上网应用终端发出,网关转发该网络访问请求,如果 是,则该硬件地址为新的请求上网的终端的硬件地址,根据终端属性列 表获得该新的终端的类型。网关统计当前上网终端列表中上网应用终端 的硬件地址的数量作为当前上网应用终端数。在步骤307,网关判断当前上网应用终端数是否大于或者等于最大 上网应用终端数,如果是,则拒绝该网络访问请求,否则,允许该网络 访问请求,并在当前上网终端列表中存储该新的应用终端的硬件地址。在路由模式下,家庭网络中终端的IP地址由网关分配,分配的方 式包括DHCP和静态IP方式。下面分别针对DHCP和静态IP方式详
细描述网关获得家庭网络中终端的硬件地址和类型的实现。对于DHCP方式,网关启用DHCP服务器,终端一和网关建立物 理连接,就向网关发送DHCP请求,网关通过分析终端发送的DHCP DISCOVER数据包来获得终端的硬件地址和类型。数据包中6字节 的"源MAC"字段是终端的硬件地址。数据包尾部option字段的子 option60字段中包括标识终端类型的Field type项,与之相对应的field value就是终端的类型。Field type项的内容和含义在制造时按照确定的 规范定义,如定义数值l代表终端类型,数值2代表终端的生产商,数 值3代表终端型号。当家庭网关收到用户终端发来的DHCP DISCOVER数据包,在分析数据包中DHCP数据部分的option60数据 段时,如果Field type域中的数值为1,则其对应的field value域的内 容即为终端的类型,如"PC"、 "STB"等。对于使用静态IP连接网关的终端,当该终端和网关建立连接时, 不会发送DHCP请求,而是发送查询网关的ARP数据包,家庭网关收 到一个未进行DHCP请求的终端发来的ARP数据包,就可确认该终端 使用了静态IP,并把其终端类型视为计算机终端。本领域的技术人员可以理解,通过上述的方式,本发明提供的路由 模式下控制上网终端数量的方法,可以对终端的网络访问请求根据不同 的终端类型分别或者单独进行数量控制。对终端区分计算机终端和应用 终端,对不同的业务控制不同的终端数量,从而实现差异化服务,满足 运营商的业务需求。图4为示出根据本发明的路由模式下控制上网终端数的系统的应用 的示意图。如图4所示,本发明的控制系统的应用场景包括家庭网络、公共网 络、公共网络资源、运营商业务平台和家庭网关管理系统。家庭网关管理系统,是家庭网关业务的部署和控制平台,也是家庭 网关设备的远程管理平台。家庭网关管理系统向家庭网关下发设置消 息,该设置消息中包含最大上网终端数。家庭网关管理系统和家庭网关 使用TR069进行管理通讯。
家庭网络由家庭网关、计算机终端和应用终端组成。应用终端是使用某种具体应用所需要的设备,如使用IPTV业务所用的机顶盒、使用 监控业务所用的摄像头等。家庭网关是家庭网络和外部网络的接口,是计算机终端和应用终端 访问外部网络的通道。家庭网关接收来自家庭网关管理系统的设置消 息,并设置和保存最大上网终端数;接收并分析网络访问请求,当确定 接收到的网络访问请求来自新的终端时,确定当前上网终端数;判断当 前上网终端数是否大于或等于所述最大上网终端数,如果是,则拒绝该 网络访问请求,否则,允许该网络访问请求。公共网络,主要指互联网。公共网络资源,就是指互联网资源。运营商业务平台,是运营商所提供的业务的支撑及管理平台,如 IPTV平台等。图5为示出根据本发明的控制上网终端数的系统的一个实施例的网 关的方框图。如图5所示,该网关包括消息接收模块501、数据存储模块502、 和终端控制模块503。其中,消息接收模块501,用于接收来自网关管理系统的设置消 息,设置消息中包含最大上网终端数,将最大上网终端数存储在数据存 储模块502;数据存储模块502,用于存储最大上网终端数和当前上网终端列 表,当前上网终端列表中包含当前上网终端的硬件地址;终端控制模块503,用于接收网络访问请求,分析接收到的网络访 问请求,获得对应的硬件地址,判断该对应的硬件地址是否在当前上网 终端列表中,如果不在,则确定该网络请求来自新的终端,否则,确定 该网络请求来自已经允许上网的终端,允许该网络访问请求。当确定该 网络访问请求来自新的终端时,通过统计当前上网终端列表中硬件地址 数,确定当前上网终端数;判断所述当前上网终端数是否大于或等于所 述最大上网终端数时,如果是,拒绝所述网络访问请求,否则,允许所 述网络访问请求,并将该新的终端的硬件地址加入当前上网终端列表。根据本发明的控制上网终端数的系统的另 一个实施例,网关还包括定时器管理模块,用于为新的允许上网的终端设置定时器,当一个定时器超时时,将与该超时的定时器对应的上网终端从当前上网终端列表中删除,并拒绝该终端的网络访问请求。根据本发明的控制上网终端数的系统的另 一个实施例,网关还包括属性列表生成模块,用于获得终端的类型,将获得的终端的类型存储在数据存储模块中的终端属性列表中,该终端属性列表中包含终端的硬件地址和类型。数据存储模块,用于存储最大上网终端数和指定的类型,以及当前 上网终端列表和终端属性列表。终端控制模块,还用于根据终端属性列表,确定所述指定类型的当 前上网终端数,判断所述指定类型的当前上网终端数是否大于或等于所 述指定类型的最大上网终端数时,如果是,拒绝所述网络访问请求,否 则,允许所述网络访问请求,并将所述新的终端加入所述当前上网终端 列表。其中,指定类型可以是计算机、机顶盒、摄像头、电话机等。 虽然在上面的实施例中只介绍了对一种类型的终端进行上网控制, 但是本领域的技术人员可以了解,本发明的控制上网终端数量的系统可 以同时对多种类型的终端进行上网控制。本发明提供的在路由模式下的控制上网终端数量的方法和系统,首 先在网关中设置最大上网终端数,然后由网关分析网络访问请求,获得 当前上网终端的数量,在大于或等于最大上网终端数的时候,拒绝新的 终端的网络访问请求,从而控制了上网终端的数量。进一步,通过为上 网终端设定定时器,解决了上网终端的更新问题。进一步,通过对终端 的类型的分析,可以对不同类型的上网终端的数量分别进行控制,从而 实现差异化服务。本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的 或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技
术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理 和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适 于特定用途的带有各种修改的各种实施例。
权利要求
1. 一种路由;f莫式下控制上网终端数量的方法,其特征在于,包括步a,在网关中设置最大上网终端数;b,当所述网关确定接收到的网络访问请求来自新的终端时,确定 当前上网终端数;c,当所述网关确定所述当前上网终端数大于或等于所述最大上网 终端数时,拒绝所述网络访问请求。
2. 如权利要求l所述的方法,其特征在于,所述步骤a包括 通过局端的网关管理系统在所述网关中设置最大上网终端数。
3. 如权利要求1或2所述的方法,其特征在于,包括 在所述网关中维护当前上网终端列表,当所述网关允许来自新的终端的网络访问请求后,将所述新的终端的硬件地址加入所述当前上网终 端列表。
4. 如权利要求3所述的方法,其特征在于,所述网关确定所述网 络请求来自新的终端的步骤包括所述网关通过分析所述网络请求获得对应的硬件地址; 所述终端判断所述对应的硬件地址是否在所述当前上网终端列表 中,如果不在,则确定所述网络请求来自新的终端。
5. 如权利要求4所述的方法,其特征在于,所述确定当前上网终 端数的步骤包括统计所述当前上网终端列表中的硬件地址数,并确定为所述当前上 网终端数。
6. 如权利要求3所述的方法,其特征在于,包括当将所述新的终端的硬件地址加入所述当前上网终端列表时,所述 网关为所述新的终端^:置对应的定时器;当所述上网终端通过所述网关上网时,所述网关清零与所述上网终 端对应的定时器;当所述定时器超时时,所述网关从所述当前上网终端列表中删除与 所述定时器对应的终端的硬件地址。
7. 如权利要求3所述的方法,其特征在于所述网关产生终端属性列表,所述终端属性列表中包括终端的硬件 地址和类型;所述步骤a包括在所述网关中设置指定类型的最大上网终端数;所述步骤b中,所述网关还根据所述终端属性列表确定所述网络 访问请求来自新的指定类型的终端,确定指定类型的当前上网终端数;所述步骤c中,当所述网关确定所述指定类型的当前上网终端数大 于或等于所述指定类型的最大上网终端数时,拒绝所述网络访问请求。
8. 如权利要求7所述的方法,其特征在于,所述网关产生所述终 端属性列表步骤包括所述网关通过分析DHCP DISCOVER数据包和/或ARP数据包获 得终端的硬件地址和类型,并保存在所述终端属性列表中。
9. 如权利要求7所述的方法,其特征在于,所述指定类型为计算 机、机顶盒、摄像头或电话机。
10. 如权利要求2所述的方法,其特征在于,所述步骤a所述包括所述网络管理系统向所述网关发起连接请求,和所述网关建立连接;所述网关管理系统通过方法调用在所述网关设置最大上网终端数。
11. 一种路由模式下控制上网终端数量的系统,其特征在于,包括网关管理系统,用于下发设置消息,消息中包含最大上网终端数;网关,用于接收来自所述网关管理系统的所述设置消息,并设置所述最大上网终端数;当确定接收到的网络访问请求来自新的终端时,确 定当前上网终端数;当确定所述当前上网终端数大于或等于所述最大上 网终端数时,拒绝所述网络访问请求。
12. 如权利要求ll所述的系统,其特征在于,所述网关包括 数据存储模块,用于存储所述最大上网终端数和当前上网终端列表;消息接收模块,用于接收来自所述网关管理系统的所述设置消息, 并将所述最大上网终端数存储在所述数据存储模块;终端控制模块,用于分析接收到的网络访问请求,当确定所述网络 访问请求来自新的终端时,确定当前上网终端数;判断所述当前上网终 端数是否大于或等于所述最大上网终端数时,如果是,拒绝所述网络访 问请求,否则,允许所述网络访问请求,并将所述新的终端加入所述当 前上网终端列表。
13. 如权利要求12所述的系统,其特征在于,所述网关还包括 定时器管理模块,用于为所述当前上网终端设置定时器,当定时器超时时,将与所述超时的定时器对应的终端从所述当前上网终端列表中 删除。
14. 如权利要求12所述的系统,其特征在于,所述设置消息中还 包括与所述最大上网终端数对应的指定类型;所述系统还包括属性列表生成模块,用于获得终端的类型,将所述 终端的类型存储在所述终端属性列表中;所述数据存储模块,还用于存储所述指定类型和包含终端的类型的 终端属性列表;所述终端控制模块,还用于根据所述终端属性列表,确定所述指定 类型的当前上网终端数,判断所述指定类型的当前上网终端数是否大于 或等于所述指定类型的最大上网终端数时,如果是,拒绝所述网络访问 请求,否则,允许所述网络访问请求,并将所述新的终端加入所述当前 上网终端列表。
15. —种网关,其特征在于,包括数据存储模块,用于存储最大上网终端数和当前上网终端列表; 消息接收模块,用于接收设置消息,所述消息中包括所述最大上网 终端数,将所述最大上网终端数存储在所述数据存储模块;终端控制模块,用于分析接收到的网络访问请求,当确定所述网络访问请求来自新的终端时,确定当前上网终端数;判断所述当前上网终 端数是否大于或等于所述最大上网终端数时,如果是,拒绝所述网络访 问请求,否则,允许所述网络访问请求,并将所述新的终端加入所述当 前上网终端列表。
16. 如权利要求15所述的网关,其特征在于,所述当前上网终端 列表中包括所述当前上网终端的硬件地址;所述终端控制模块,用于通过分析接收到的网络访问请求来获得对 应的硬件地址,判断所述对应的硬件地址是否在所述当前上网终端列表 中,如果不在,则确定所述网络请求来自新的终端。
17. 如权利要求16所述的网关,其特征在于,所述终端控制模 块,用于统计所述当前上网终端列表中的硬件地址数,确定为所述当前 上网终端数。
18. 如权利要求15所述的网关,其特征在于,还包括 定时器管理模块,用于为所述当前上网终端设置定时器,当定时器超时时,将与所述超时的定时器对应的终端从所述当前上网终端列表中 删除。
19. 如权利要求15或16所述的网关,其特征在于 所述网关还包括属性列表生成模块,用于获得终端的类型,将所述终端的类型存储在所述数据存储模块中的终端属性列表中;所述数据存储模块,还用于存储与所述最大上网终端数对应的指定 类型,并存储所述终端属性列表;所述终端控制模块,还用于根据所述终端属性列表,确定所述指定 类型的当前上网终端数,判断所述指定类型的当前上网终端数是否大于 或等于所述指定类型的最大上网终端数时,如果是,拒绝所述网络访问 请求,否则,允许所述网络访问请求,并将所述新的终端加入所述当前 上网终端列表。
20. 如权利要求19所述的网关,其特征在于,所述指定类型为计 算机、机顶盒、摄像头或电话机。
全文摘要
本发明公开一种在路由模式下控制上网终端的数量的方法、系统和网关。所述方法包括在网关中设置最大上网终端数;当所述网关确定接收到的网络访问请求来自新的终端时,确定当前上网终端数;当所述网关确定所述当前上网终端数大于或等于所述最大上网终端数时,拒绝所述网络访问请求。通过在网关中设置最大上网终端数,然后由网关分析网络访问请求,在当前上网终端的数量大于或等于最大上网终端数的时候,拒绝新的终端的网络访问请求,从而控制了上网终端的数量。
文档编号H04L12/56GK101146047SQ20071016656
公开日2008年3月19日 申请日期2007年11月6日 优先权日2007年11月6日
发明者赵伟峰 申请人:中国电信股份有限公司