具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图2为根据本发明实施例的一种同轴网络中的终端注册方法流程图。如图2所示,该方法包括:
步骤S202,同轴线路终端CLT确定同轴网络单元CNU不合法;
步骤S204,CLT向CNU发送第一静默时间值,其中,CLT同一时刻向不同CNU发送的相同的第一静默时间值的数量不超过预设阈值;在实际应用时,上述预设阈值可以根据实际CLT的处理能力设定,在CLT的处理能力允许的情况下,CLT同一时刻向各个不同CNU分别发送一个不同(互不相等)的第一静默时间值。
步骤S206,CNU接收第一静默时间值,并在第一静默时间值指示的时间到达时,向CLT发送第一注册请求消息。
从上述实施例可以得出,上述实施例解决了相关技术中同轴网络中终端密集注册的防护问题,尤其是针对大量终端几乎在同一时刻发起注册或接入请求时对局端设备造成冲击的防护问题。上述实施例主要利用差别化的静默时间设置机制将终端的注册行为错开,以降低系统负荷,提高系统稳定性和安全性,从而缓解了CLT处理压力,进而达到了降低系统负荷,提高系统安全性的效果。
优选地,CLT确定CNU不合法之前,上述方法还可以包括:CNU向CLT发送第二注册请求消息;则CLT向CNU发送第一静默时间值可以包括:CLT向CNU发送第二注册请求消息的响应消息,该响应消息为拒绝注册消息,该拒绝注册消息中携带第一静默时间值。
优选地,CNU向CLT发送的第二注册请求消息之后,还可以包括以下处理:
(1)、CNU确定需要发送第三注册请求消息;
(2)、CNU从第二预设范围内选择一随机值作为CNU的第二静默时间值;
(3)、CNU在第二静默时间值指示的时间到达时,CNU向CLT发送第三注册请求消息。
优选地,如果CLT确定CNU合法,则上述方法还可以包括:CLT向CNU发送第二注册请求消息的响应消息,该响应消息为注册确认消息;以及CNU确定需要发送第三注册请求消息之前,还可以包括:CNU确定在发送第二注册请求消息之后的预定时间段内未接收到第二注册请求消息的响应消息。
优选地,CLT向CNU发送第一静默时间值之前,还可以包括:CLT从第一预设范围内选择一个随机值作为第一静默时间值。
为了更好地理解上述实施例,以下结合具体实例及相关附图详细说明。
实例1
本实例中,为便于理解,对CLT和CNU的处理流程分别进行说明,并且在本实例中,以CLT在同一时刻向各个CNU发送的每个静默时间值(第一静默时间值)不同为例进行说明。
图3为根据本发明实例的CNU注册过程中的CLT处理流程示意图。如图3所示,该处理流程包括:
步骤S302,CLT每隔一定间隔时间(如10秒)向所有的CNU广播一个发现信标(Discover Beacon)消息,并监听网络中的报文;其中,上述发现信标信息携带了CLT的设备标识符(Equipment Identification,简称为EI)、媒体接入控制(Media AccessControl,简称为MAC)地址等信息;
步骤S304,CLT收到CNU的注册请求消息;
步骤S306,判断该CNU是否为合法的CNU(在实际应用时,CNU的合法性判断基准可以根据实际需要具体确定如根据CNU的标识信息等,此处不再赘述),如果合法,则转入步骤S308,如果不合法,则转入步骤S312;
步骤S308,CLT记录CNU的设备注册信息,转入步骤S310;
步骤S310,给CNU回复一个确认消息(ACK)即回应ACK报文,CNU注册流程中CLT的处理逻辑结束,转入步骤S302;
步骤S312,CLT不记录CNU的设备注册信息,并生成一个随机静默时间值,其中,该随机静默时间值为一个合理范围内的随机值,比如1-300秒范围内的一个随机时间,转入步骤S314;
步骤S314,CLT直接给CNU回复一个拒绝消息(NACK)即NACK报文,其中,该NACK报文中包含了对CNU静默时间的设置值即上述随机静默时间值,转入步骤S302;
需要指出的是,图3所示实施例中的随机静默时间值相当于上述实施例中的第一静默时间值。
图4为根据本发明实例的CNU注册过程中的CNU处理流程示意图。如图4所示,该流程包括:
步骤S402,CNU上电初始化完成后,开始监听网络中的报文;
步骤S404,CNU收到来自CLT的广播报文;
步骤S406,CNU判断自己是否已经完成注册,如果已完成,CNU不再重复注册,转入步骤S424,如果没有完成注册,转入步骤S408;
步骤S408,CNU在自己的发送时隙中向CLT发出注册请求消息(Register_REQ),其中包含了CNU的设备标识符信息和MAC地址信息等。CNU同时启动一个定时器Req_Timer,等待CLT的回应报文,超时时间设置为本地变量T1,例如10秒。
步骤S410,CNU判断Req_Timer定时器是否超时,如果超时,转入步骤S418;如果未超时,转入步骤S412;
步骤S412,CNU收到CLT的回应报文,关闭Req_Timer定时器,
步骤S414,判断报文类别,如果是注册确认ACK消息,表示注册成功,转入步骤S424,如果是拒绝注册NACK消息,转入步骤S416;
步骤S416,CNU获取NACK消息中携带的静默时间值并写入本地变量T2,转入步骤S420;
步骤S418,CNU将本地变量T2的值设置为一个合理范围内的随机值(即随机生成静默时间,并设置T2),比如1-300秒范围内的一个随机时间;
步骤S420,CNU启动一个定时器Silence_Timer,超时时间为本地变量T2中的值;
步骤S422,Silence_Timer超时后关闭该定时器,并转入步骤S408。
步骤S424,流程结束。
在图4所示实施例的基础上,图5进一步说明了CNU注册过程中的内部状态机状态迁移条件和状态转换情况。如图5所示,具体包括:
(1)、当CNU上电初始化完成后,即进入等待状态;当CNU注册超时或者发出注册请求后收到拒绝回应报文(此处相当于拒绝注册NACK消息)时,也会进入等待状态。
(2)、在等待状态下首次收到来自于CLT的广播报文通知注册时,CNU进入注册状态,并发送注册请求报文;
(3)、在等待状态下由静默周期定时器(Silence_Timer)判断超时后,CNU也会重新发起注册请求操作而进入注册状态。
通过本实例可以看出。相比现有的同轴网络接入技术,本实例中,CLT给CNU回复拒绝消息时同时附带静默时间的随机值设置信息,使得不同的CNU尽量以不同的静默时间等待重发注册请求;当CNU的注册请求因为种种原因(可能是网络丢包,可能是CLT处理不过来等情形)没有得到CLT的回应时,CNU自身也提供了随机静默一段时间的等待机制。这样就从CLT和CNU两方面共同确保了CNU重复注册等待时间的差异化,最大程度上避免CNU密集注册高峰期的出现,极大的减轻了CLT的处理压力,增强系统的安全性。
图6为根据本发明实施例的同轴网络中的终端注册系统结构框图。如图6所示,该系统包括:包括:同轴线路终端CLT 60及同轴网络单元CNU 62,其中,
上述CLT 60包括:
判断模块602,用于判断CNU是否合法;
第一发送模块604,与判断模块602相连,用于在判断模块输出结果602为否的情况下,向CNU发送第一静默时间值,其中,该第一发送模块604同一时刻向不同CNU发送的相同的第一静默时间值的数量不超过预设阈值;
上述CNU 62包括:
接收模块620,用于接收第一静默时间值;
第二发送模块622,与接收模块620相连,用于在接收模块620接收的第一静默时间值指示的时间到达时,向CLT 60发送第一注册请求消息。
从上述实施例可以得出,上述实施例解决了相关技术中同轴网络中终端密集注册的防护问题,尤其是针对大量终端几乎在同一时刻发起注册或接入请求时对局端设备造成冲击的防护问题。上述实施例主要利用差别化的静默时间设置机制将终端的注册行为错开,以降低系统负荷,提高系统稳定性和安全性,从而缓解了CLT处理压力,进而达到了降低系统负荷,提高系统安全性的效果。
优选地,上述第二发送模块622,还用于向CLT 60发送第二注册请求消息;
则第一发送模块604,还用于向CNU 62发送第二注册请求消息的响应消息,该响应消息为拒绝注册消息,拒绝注册消息中携带第一静默时间值。
优选地,如图7所示,上述CNU 62还可以包括:确定模块624,用于确定需要发送第三注册请求消息;第一选择模块626,与确定模块624相连,用于从第二预设范围内选择一随机值作为CNU的第二静默时间值;
则上述第二发送模块622,与第一选择模块626相连,还用于在第二静默时间值指示的时间到达时,向CLT 60发送第三注册请求消息。
优选地,上述第一发送模块604,还用于在判断模块602输出结果为是的情况下,向CNU发送第二注册请求消息的响应消息,该响应消息为注册确认消息;以及上述确定模块624,还用于确定在发送第二注册请求消息之后的预定时间段内未接收到第二注册请求消息的响应消息。
优选地,如图7所示,上述CLT 60还可以包括:第二选择模块606,与第一发送模块604相连,用于从第一预设范围内选择一个随机值作为第一静默时间值。
为了更好地理解图6和图7所示实施例,以下结合具体实例及相关附图详细说明。
实例2
本实例提供一种同轴网络中的终端注册系统,来实现一种改进型的静默机制,通过差异化的静默时间设置,最大程度上错开终端注册的时间,缓解CLT的处理压力。如图8所示,该注册系统包括:CLT 80(相当于图6所示实施例中的CLT 60)及CNU82(相当于图6所示实施例中的CNU 62),其中,
上述CLT 80包括:
信息发送模块802,主要用于广播消息的循环发送,以及针对CNU注册信息的接受注册回应信息(ACK)或拒绝注册(NACK)回应消息的发送。
信息处理模块804,与信息发送模块802相连,主要用于CNU注册信息的判断与处理,包括CNU合法性的判断以及拒绝注册消息(NACK)中随机静默时间字段的设置操作。
上述CNU 82,包括:
信息接收模块822,主要用于接收CLT发来的广播消息,以及注册阶段的CLT回应消息(接受注册ACK或者拒绝注册NACK)
控制模块824,维护两个定时器,分别用于控制注册阶段的超时重传以及注册被拒绝后重新发起注册请求前的静默等待时间控制。其中无论是注册中的超时或者被拒绝,CNU都将进行一段随机时间长度的静默等待后才发起下一次注册请求,其中的区别仅在于前者的随机等待时间由CNU自己确定,而后者的等待时间来自于信息接收模块对于CLT NACK消息的解析结果。控制模块824实际控制了CNU内部的一个状态机的正常运转,CNU的在注册状态和等待状态之间的切换由控制模块824完成。
需要指出的是,本实例中的各个模块,在实现的功能上包括但不限于图6和图7所示实施例的各个模块所实现的功能,相对应的,在硬件上则可以包括但不限于图6和图7所示实施例的各个模块。
需要注意的是,上述终端中的各模块相关结合的优选工作方式具体可以上述方法实施例的描述,此处不再赘述。
综上所述,可以看出,上述实施例中,CLT针对非法CNU注册的情形,在回应NACK消息的同时,在该消息中带入了对于该CNU静默时间设置的要求,且该时间可以为一个合理的随机值;对于CLT由于处理能力受限未能及时处理的CNU注册请求,CNU侧等待超时后,自身提供了调整重发注册请求时间间隔的机制,重发间隔时间(也即静默时间)设置的值也可以为一个随机值。这样就最大程度上避免了终端密集注册情形的发生,降低了对系统的冲击,提高了系统的安全性和稳定性。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。