一种定时器调度方法及装置制造方法及图纸

技术编号:20224475 阅读:40 留言:0更新日期:2019-01-28 22:30
本申请提供一种定时器调度方法及装置。所述方法应用于网络设备,网络设备通过一虚拟链表结构表示设置的定时中断指令,构成虚拟链表的每一定时节点上承载至少一个定时器,每一定时器与网络设备建立的BFD会话一一对应,包括:根据已建立的每个BFD会话约定的超时时长和产生定时中断指令的时长,在虚拟链表中,确定与每个BFD会话对应的定时器所承载的第一定时节点;如果承载的定时器个数超过调度阈值,从第一定时节点已承载的定时器中,确定满足预设调度策略的待调度定时器;在包含第一定时节点的定时节点区间内,选取承载定时器的负载量最小的第二定时节点,将待调度定时器调度至第二定时节点。如此,可提升网络设备的可靠性以及稳定性。

A Timer Scheduling Method and Device

This application provides a timer scheduling method and device. The method is applied to network devices. The network devices express the set timing interrupt instructions through a virtual link list structure, and each timing node of the virtual link list bears at least one timer. Each timer corresponds to the BFD session established by the network devices one by one, including: according to the established timeout of each BFD session agreement and the time for generating timing interrupt instructions; In the virtual list, the first timing node carried by the timer corresponding to each BFD session is determined; if the number of timers loaded exceeds the scheduling threshold, the scheduled timer meeting the preset scheduling strategy is determined from the timer already loaded by the first timing node; and in the interval of the timing nodes containing the first timing node, the lowest load of the timer is selected. The second timing node schedules the scheduled timer to the second timing node. In this way, the reliability and stability of network equipment can be improved.

【技术实现步骤摘要】
一种定时器调度方法及装置
本申请涉及调度
,具体而言,涉及一种定时器调度方法及装置。
技术介绍
为了减小网络设备故障对通信系统业务的影响,网络设备需要能够尽快检测到与相邻网络设备间的通信故障,以便通信系统及时采取业务切换措施,保证业务继续进行。双向转发路径检测(英文:BidirectionalForwardingDetection,简称:BFD)技术提供了一通用的、标准化的介质无关和协议无关的快速故障检测机制,可以为各上层协议,例如,开放式最短路径优先(英文:OpenShortestPathFirst,简称:OSPF)协议、边界网关协议(英文:BorderGatewayProtocol,简称:BGP)等协议统一地快速检测两台网络设备间的双向转发路径。随着通信系统规模的不断扩大,与一网络设备,尤其是路由器设备等相邻的其他网络设备数量变得十分庞大。这样,需要该网络设备与其它相邻网络设备建立大量的BFD会话,并为每一建立的BFD会话设置对应的一定时器进行定时,在定时到时触发BFD会话状态检测。其中,网络设备在依据定时器检测到BFD会话状态为故障状态后,需要通知与BFD联动的上层协议进行相应双向转发路径切换处理,以实现快速倒换功能。但该BFD会话状态检测方法中,由于网络设备建立的BFD会话数量十分庞大,而不同BFD会话对应的定时器彼此独立。因而,有可能在同一时刻,大量定时器的定时到,从而触发大量BFD会话状态检测,使得网络设备的资源使用形成突发使用,引起网络设备震荡,并造成BFD会话状态检测处理时延增大,甚至导致网络设备堵塞,从而影响网络设备的可靠性以及稳定性。
技术实现思路
有鉴于此,本申请实施例提供了一种定时器调度方法及装置,解决了同一时刻大量定时器同时触发BFD会话状态检测,形成资源突发使用导致网络设备的可靠性以及稳定性较低的技术问题。在第一方面,本申请实施例提供一种定时器调度方法,所述方法应用于网络设备,所述网络设备通过一虚拟链表结构表示设置的定时中断指令,构成所述虚拟链表的每一定时节点上承载至少一个定时器,每一定时器与所述网络设备建立的BFD会话一一对应,相邻定时节点之间的时间步长为产生所述定时中断指令的时长,所述方法包括:根据已建立的每个BFD会话约定的超时时长和产生所述定时中断指令的时长,在所述虚拟链表中,确定与每个BFD会话对应的定时器所承载的第一定时节点;如果所述第一定时节点承载的定时器个数超过预设的调度阈值,则从所述第一定时节点已承载的定时器中,确定满足预设调度策略的待调度定时器;在包含所述第一定时节点的定时节点区间内,选取承载定时器的负载量最小的第二定时节点,将所述待调度定时器调度至所述第二定时节点。结合第一方面,在第一种可能的实现方式中,所述根据已建立的每个BFD会话约定的超时时长和产生所述定时中断指令的时长,在所述虚拟链表中,确定与每个BFD会话对应的定时器所承载的第一定时节点之前,所述方法还包括:当所述网络设备产生定时中断指令时,在所述虚拟链表中,确定所述定时中断指令当前指示的第三定时节点;确定所述第三定时节点上承载的至少一个定时器对应的BFD会话;在已存储的BFD会话表项中,获取与每个BFD会话对应的接收报文升级标识;如果通过所述接收报文升级标识确定对应的BFD会话为正常状态,则根据所述BFD会话约定的超时时长和产生所述定时中断指令的时长,将与所述BFD会话对应的定时器再次承载至所述虚拟链表中的第四定时节点;如果通过所述接收报文升级标识确定对应的BFD会话为非正常状态,则在已存储的BFD会话表项中,删除所述BFD会话,并从所述虚拟链表中,删除所述第三定时节点上的所述BFD会话对应的定时器。结合第一方面或第一方面的第二种可能的实现方式,在第二种可能的实现方式中,所述如果所述第一定时节点承载的定时器个数超过预设的调度阈值,则从所述第一定时节点已承载的定时器中,确定满足预设调度策略的待调度定时器,包括:如果所述第一定时节点承载的定时器个数超过所述调度阈值,则获取所述第一定时节点承载的每个定时器对应的BFD会话的超时时长以及表征每个BFD会话调度概率的衰减计数;根据每个定时器对应的BFD会话的超时时长以及表征每个BFD会话调度概率的衰减计数,确定所述待调度定时器。结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述根据每个定时器对应的BFD会话的超时时长以及表征每个BFD会话调度概率的衰减计数,包括:从所述衰减计数最小的BFD会话中,选取超时时长最大的BFD会话对应的定时器,作为所述待调度定时器;或,从所述超时时长最大的BFD会话中,选取衰减计数最小的BFD会话对应的定时器,作为所述待调度定时器;所述将所述待调度定时器调度至所述第二定时节点之后,所述方法还包括:将所述待调度定时器对应的BFD会话的衰减计数更新为初始值,并进行计时;当计时到所述BFD会话的超时时长时,将所述BFD会话的衰减计数减1,并重新进行计时,直至所述BFD会话的衰减计数为0。结合第一方面或第一方面的第一种可能的实现方式,在第四种可能的实现方式中,所述在包含所述第一定时节点的定时节点区间内,选取承载定时器的负载量最小的第二定时节点,包括:若所述待调度定时器为接收定时器,从所述定时节点区间内,确定第一区间,所述第一区间以与所述第一定时节点相邻的前一个定时节点和所述定时节点区间的下限为边界;从所述第一区间内,将承载定时器的负载量最小的定时节点作为所述第二定时节点;或,若所述待调度定时器为发送定时器,从所述定时节点区间内,确定第二区间,所述第二区间以与所述第一定时节点相邻的后一个定时节点和所述定时节点区间的上限为边界;从所述第二区间内,将承载定时器的负载量最小的定时节点作为所述第二定时节点。在第二方面,本申请实施例提供一种定时器调度装置,通过一虚拟链表结构表示设置的定时中断指令,构成所述虚拟链表的每一定时节点上承载至少一个定时器,每一定时器与所述网络设备建立的BFD会话一一对应,相邻定时节点之间的时间步长为产生所述定时中断指令的时长,所述装置包括:承载节点确定模块,用于根据已建立的每个BFD会话约定的超时时长和产生所述定时中断指令的时长,在所述虚拟链表中,确定与每个BFD会话对应的定时器所承载的第一定时节点;待调度定时器确定模块,如果所述第一定时节点承载的定时器个数超过预设的调度阈值,则从所述第一定时节点已承载的定时器中,确定满足预设调度策略的待调度定时器;调度模块,用于在包含所述第一定时节点的定时节点区间内,选取承载定时器的负载量最小的第二定时节点,将所述待调度定时器调度至所述第二定时节点。结合第二方面,在第一种可能的实现方式中,所述装置还包括:BFD会话状态检测模块,用于当产生定时中断指令时,在所述虚拟链表中,确定所述定时中断指令当前指示的第三定时节点;确定所述第三定时节点上承载的至少一个定时器对应的BFD会话;在已存储的BFD会话表项中,获取与每个BFD会话对应的接收报文升级标识;如果通过所述接收报文升级标识确定对应的BFD会话为正常状态,则根据所述BFD会话约定的超时时长和产生所述定时中断指令的时长,将与所述BFD会话对应的定时器再次承载至所述虚拟链表中的第四定时节点;如果通过所述接收报本文档来自技高网
...

【技术保护点】
1.一种定时器调度方法,其特征在于,所述方法应用于网络设备,所述网络设备通过一虚拟链表结构表示设置的定时中断指令,构成所述虚拟链表的每一定时节点上承载至少一个定时器,每一定时器与所述网络设备建立的BFD会话一一对应,相邻定时节点之间的时间步长为产生所述定时中断指令的时长,所述方法包括:根据已建立的每个BFD会话约定的超时时长和产生所述定时中断指令的时长,在所述虚拟链表中,确定与每个BFD会话对应的定时器所承载的第一定时节点;如果所述第一定时节点承载的定时器个数超过预设的调度阈值,则从所述第一定时节点已承载的定时器中,确定满足预设调度策略的待调度定时器;在包含所述第一定时节点的定时节点区间内,选取承载定时器的负载量最小的第二定时节点,将所述待调度定时器调度至所述第二定时节点。

【技术特征摘要】
1.一种定时器调度方法,其特征在于,所述方法应用于网络设备,所述网络设备通过一虚拟链表结构表示设置的定时中断指令,构成所述虚拟链表的每一定时节点上承载至少一个定时器,每一定时器与所述网络设备建立的BFD会话一一对应,相邻定时节点之间的时间步长为产生所述定时中断指令的时长,所述方法包括:根据已建立的每个BFD会话约定的超时时长和产生所述定时中断指令的时长,在所述虚拟链表中,确定与每个BFD会话对应的定时器所承载的第一定时节点;如果所述第一定时节点承载的定时器个数超过预设的调度阈值,则从所述第一定时节点已承载的定时器中,确定满足预设调度策略的待调度定时器;在包含所述第一定时节点的定时节点区间内,选取承载定时器的负载量最小的第二定时节点,将所述待调度定时器调度至所述第二定时节点。2.根据权利要求1所述的方法,其特征在于,所述根据已建立的每个BFD会话约定的超时时长和产生所述定时中断指令的时长,在所述虚拟链表中,确定与每个BFD会话对应的定时器所承载的第一定时节点之前,所述方法还包括:当所述网络设备产生定时中断指令时,在所述虚拟链表中,确定所述定时中断指令当前指示的第三定时节点;确定所述第三定时节点上承载的至少一个定时器对应的BFD会话;在已存储的BFD会话表项中,获取与每个BFD会话对应的接收报文升级标识;如果通过所述接收报文升级标识确定对应的BFD会话为正常状态,则根据所述BFD会话约定的超时时长和产生所述定时中断指令的时长,将与所述BFD会话对应的定时器再次承载至所述虚拟链表中的第四定时节点;如果通过所述接收报文升级标识确定对应的BFD会话为非正常状态,则在已存储的BFD会话表项中,删除所述BFD会话,并从所述虚拟链表中,删除所述第三定时节点上的所述BFD会话对应的定时器。3.根据权利要求1或2所述的方法,其特征在于,所述如果所述第一定时节点承载的定时器个数超过预设的调度阈值,则从所述第一定时节点已承载的定时器中,确定满足预设调度策略的待调度定时器,包括:如果所述第一定时节点承载的定时器个数超过所述调度阈值,则获取所述第一定时节点承载的每个定时器对应的BFD会话的超时时长以及表征每个BFD会话调度概率的衰减计数;根据每个定时器对应的BFD会话的超时时长以及表征每个BFD会话调度概率的衰减计数,确定所述待调度定时器。4.根据权利要求3所述的方法,其特征在于,所述根据每个定时器对应的BFD会话的超时时长以及表征每个BFD会话调度概率的衰减计数,包括:从所述衰减计数最小的BFD会话中,选取超时时长最大的BFD会话对应的定时器,作为所述待调度定时器;或,从所述超时时长最大的BFD会话中,选取衰减计数最小的BFD会话对应的定时器,作为所述待调度定时器;所述将所述待调度定时器调度至所述第二定时节点之后,所述方法还包括:将所述待调度定时器对应的BFD会话的衰减计数更新为初始值,并进行计时;当计时到所述BFD会话的超时时长时,将所述BFD会话的衰减计数减1,并重新进行计时,直至所述BFD会话的衰减计数为0。5.根据权利要求1或2所述的方法,其特征在于,所述在包含所述第一定时节点的定时节点区间内,选取承载定时器的负载量最小的第二定时节点,包括:若所述待调度定时器为接收定时器,从所述定时节点区间内,确定第一区间,所述第一区间以与所述第一定时节点相邻的前一个定时节点和所述定时节点区间的下限为边界;从所述第一区间内,将承载定时器的负载量最小的定时节点作为所述第二定时节点;或,若所述待调度定时器为发送定时器,从所述定时节点区间内,确定第二区间,所述第二区间以与所述...

【专利技术属性】
技术研发人员:杨逸
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1