CN105743802B - 一种实现业务协同调度的方法及计算单板 - Google Patents
一种实现业务协同调度的方法及计算单板 Download PDFInfo
- Publication number
- CN105743802B CN105743802B CN201410742634.4A CN201410742634A CN105743802B CN 105743802 B CN105743802 B CN 105743802B CN 201410742634 A CN201410742634 A CN 201410742634A CN 105743802 B CN105743802 B CN 105743802B
- Authority
- CN
- China
- Prior art keywords
- cpu utilization
- utilization rate
- board
- single board
- communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000004891 communication Methods 0.000 claims abstract description 352
- 238000012545 processing Methods 0.000 claims abstract description 103
- 238000012216 screening Methods 0.000 claims abstract description 14
- 230000004044 response Effects 0.000 claims description 20
- 238000012544 monitoring process Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例提供了一种实现业务协同调度的方法及计算单板,获取通信单板的CPU利用率信息;根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;将所接收的待处理数据发送给所述第二通信单板;接收所述第二通信单板反馈的处理结果,并向所述第一通信单板转发所述处理结果。
Description
技术领域
本发明涉及光通信领域中的数据处理技术,尤其涉及一种实现业务协同调度的方法及计算单板。
背景技术
随着光通信的不断发展,通信设备的业务速率不断提高,对通信设备中通信单板的处理能力提出更高的要求。在目前的通信设备中,各通信单板之间相互独立,每块通信单板只负责处理自身的信号。由于受到自身中央处理器(Central Processing Unit,CPU)对应运算速度的限制,当某块通信单板的数据处理能力超负荷时,CPU利用率超过90%,若所述通信单板收到网络管理器下发的一些配置命令,则所述通信单板很有可能无法及时对所接收的配置命令作出响应,这样将导致通信设备的通信接口阻塞或者配置操作失败;而其他通信单板可能处理的数据量小,CPU利用率偏低,从而造成资源浪费。
发明内容
有鉴于此,本发明实施例提供一种实现业务协同调度的方法及计算单板,能够在通信设备中各通信单板之间实现待处理数据量的协同调度,从而提高资源利用率。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供一种实现业务协同调度的方法,应用于计算单板,该方法包括:
获取通信单板的CPU利用率信息;
根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;
接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;
根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;
将所接收的待处理数据发送给所述第二通信单板;
接收所述第二通信单板反馈的处理结果,并向所述第一通信单板转发所述处理结果。
上述方案中,在所述将所接收的待处理数据发送给所述第二通信单板之前,所述方法还包括:
向所述第二通信单板发送处理请求;
接收所述第二通信单板反馈的处理请求响应。
上述方案中,当所述计算单板附着于本通信单板时,所述获取通信单板的CPU利用率信息,包括:
定时监测本通信单板CPU利用率信息;
通过接收广播消息的方式获取除本通信单板之外的其他通信单板的CPU利用率信息;所述本通信单板为所述各通信单板之一。
上述方案中,当所述计算单板不附着于任一通信单板时,所述获取通信单板的CPU利用率信息,包括:
通过接收广播消息的方式获取通信单板的CPU利用率信息。
上述方案中,所述CPU利用率表单至少包括如下表单项组合:单板子架号、单板槽位号、CPU利用率、以及是否超过阈值。
上述方案中,所述预设存储条件包括存储各通信单板中CPU利用率排序最低的N块通信单板的CPU利用率信息;其中,N为大于等于2的正整数。
上述方案中,所述以CPU利用率表单的形式存储所获取的CPU利用率信息,包括:
初始化CPU利用率表单中的各个表单项;
逐一将获取的通信单板的CPU利用率信息保存在所述CPU利用率表单中;
当所述CPU利用率表单中存满N个通信单板的CPU利用率信息时,依据CPU利用率对所述CPU利用率表单进行排序;
当获取到第N+1个通信单板的CPU利用率信息时,将所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项进行匹配比较;
当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项相匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
当所述通信单板的CPU利用率未超过阈值时,根据所述CPU利用率信息更新已排序的CPU利用率表单,并对更新后的CPU利用率表单重新排序。
上述方案中,当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项不匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
当所述通信单板的CPU利用率未超过阈值时,将所述通信单板的CPU利用率与已排序的CPU利用率表单中所保存的CPU利用率进行比较;
当所述通信单板的CPU利用率低于已排序的CPU利用率表单中所保存的CPU利用率时,则通过所述通信单板的CPU利用率信息替换已排序的CPU利用率表单中CPU利用率最高的通信单板对应的CPU利用率信息的方式更新已排序的CPU利用率表单,并对更新后的CPU利用率表单重新排序。
本发明实施例还提供一种计算单板,所述计算单板包括获取模块、存储模块、第一接收模块、选取模块、第一发送模块、第二接收模块、以及转发模块;
所述获取模块,用于获取通信单板的CPU利用率信息;
所述存储模块,用于根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;
所述第一接收模块,用于接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;
所述选取模块,用于根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;
所述第一发送模块,用于将所接收的待处理数据发送给所述第二通信单板;
所述第二接收模块,用于接收所述第二通信单板反馈的处理结果;以及
所述转发模块,用于向所述第一通信单板转发所述处理结果。
上述方案中,所述计算单板还包括第二发送模块和第三接收模块;其中,
所述第二发送模块,用于向所述第二通信单板发送处理请求;
所述第三接收模块,用于接收所述第二通信单板反馈的处理请求响应。
上述方案中,当所述计算单板附着于本通信单板时,所述本通信单板为所述各通信单板之一,所述获取模块包括监测单元和获取单元,其中,
所述监测单元,用于定时监测本通信单板CPU利用率信息;
所述获取单元,用于通过接收广播消息的方式获取除本通信单板之外的其他通信单板的CPU利用率信息。
上述方案中,当所述计算单板不附着于任一通信单板时,所述获取模块用于,
通过接收广播消息的方式获取通信单板的CPU利用率信息。
上述方案中,所述CPU利用率表单至少包括如下表单项组合:单板子架号、单板槽位号、CPU利用率、以及是否超过阈值。
上述方案中,所述预设存储条件包括存储各通信单板中CPU利用率排序最低的N块通信单板的CPU利用率信息;其中,N为大于等于2的正整数。
上述方案中,所述存储模块包括初始化单元、存储单元、计数单元、排序单元、匹配单元、确定单元和更新单元;其中,
所述初始化单元,用于初始化CPU利用率表单中的各个表单项;
所述存储单元,用于逐一将获取的通信单板的CPU利用率信息保存在所述CPU利用率表单中;
所述计数单元,用于对所述CPU利用率表单中所存储的CPU利用率信息对应的通信单板进行计数;
所述排序单元,用于当所述计数单元所记录的通信单板数为N个时,依据CPU利用率对所述CPU利用率表单进行排序;还用于对更新后的CPU利用率表单重新排序;
所述匹配单元,用于当获取到第N+1个通信单板的CPU利用率信息时,将所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项进行匹配比较;
所述确定单元,用于当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项相匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
所述更新单元,用于当所述通信单板的CPU利用率未超过阈值时,根据所述CPU利用率信息更新已排序的CPU利用率表单。
上述方案中,所述存储模块还包括比较单元;其中,
所述确定单元,还用于当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项不匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
所述比较单元,用于当所述通信单板的CPU利用率未超过阈值时,将所述通信单板的CPU利用率与已排序的CPU利用率表单中所保存的CPU利用率进行比较;
所述更新单元,还用于当所述通信单板的CPU利用率低于已排序的CPU利用率表单中所保存的CPU利用率时,则通过所述通信单板的CPU利用率信息替换已排序的CPU利用率表单中CPU利用率最高的通信单板对应的CPU利用率信息的方式更新已排序的CPU利用率表单,并对更新后的CPU利用率表单重新排序。
本发明实施例所提供的实现业务协同调度的方法及计算单板,获取通信单板的CPU利用率信息;根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;将所接收的待处理数据发送给所述第二通信单板;接收所述第二通信单板反馈的处理结果,并向所述第一通信单板转发所述处理结果。如此,能够在通信设备中各通信单板之间实现待处理数据量的协同调度,从而提高资源利用率;同时,有效避免因某块通信单板的数据处理能力超负荷所导致的通信接口阻塞或者配置操作失败的问题。
附图说明
图1为本发明实施例实现业务协同调度的方法的流程示意图一;
图2为本发明实施例通信单板间的通信消息结构示意图;
图3为本发明实施例以CPU利用率表单的形式存储所获取的CPU利用率信息的流程示意图;
图4为本发明实施例初始化时CPU利用率表单在组成结构示意图;
图5为本发明实施例已排序的CPU利用率表单的组成结构示意图;
图6为本发明实施例实现业务协同调度的方法的流程示意图二;
图7为本发明一应用实例实现业务协同调度的方法的流程示意图;
图8为本发明如图7所示应用实例中所获取的各通信单板的CPU利用率示意图;
图9为本发明如图7所示应用实例中已排序的CPU利用率表单;
图10为本发明实施例计算单板的组成结构示意图一;
图11为本发明实施例计算单板的组成结构示意图二;
图12为本发明实施例所述获取模块的组成结构示意图;
图13为本发明实施例所述存储模块的组成结构示意图。
具体实施方式
在本发明实施例中,获取通信单板的CPU利用率信息;根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;将所接收的待处理数据发送给所述第二通信单板;接收所述第二通信单板反馈的处理结果,并向所述第一通信单板转发所述处理结果。
这里,所述通信单板的CPU利用率信息包括单板子架号、单板槽位号、CPU利用率、以及是否超过阈值等。
下面结合附图及具体实施例对本发明再作进一步详细的说明。
实施例一
图1为本发明实施例实现业务协同调度的方法的流程示意图一,应用于计算单板,如图1所示,本发明实施例实现业务协同调度的方法包括:
步骤S101:获取通信单板的CPU利用率信息;
这里,当所述计算单板附着于本通信单板时,所述获取通信单板的CPU利用率信息,包括:定时监测本通信单板CPU利用率信息;通过接收广播消息的方式获取除本通信单板之外的其他通信单板的CPU利用率信息;其中,所述本通信单板为所述各通信单板之一。
这里,当所述计算单板不附着于任一通信单板时,即在整个机架中插入一块计算单板,此时,所述获取通信单板的CPU利用率信息,包括:
通过接收广播消息的方式获取通信单板的CPU利用率信息。
需要说明的是,在本发明实施例中,所述广播消息所对应的消息结构可以采用通信单板间的通信消息结构。
具体地,如图2所示,所述通信单板间的通信消息结构包括“报文头”和“报文体”两部分;其中,所述“报文头”包含如下内容:
1)板间通信版本:用于标识所述计算单板的软件版本;
2)信息体长度:用于标识报文体长度;
3)校验和:存放整个报文数据相加结果,用于接收端进行校验;
4)目的地址:目的地址为0xAABB格式,AA代表单板子架号,BB代表单板槽位号;
5)源地址:源地址为0xAABB格式,AA代表单板子架号,BB代表单板槽位号;
6)消息类型:消息类型用于区分该报文类型,包括广播消息报文、处理请求报文、处理请求响应报文、处理结果反馈报文、待处理数据发送报文等;其中,所述处理请求响应报文包括处理请求应答报文和处理请求拒绝报文。
步骤S102:根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;
其中,所述CPU利用率表单至少包括如下表单项组合:单板子架号、单板槽位号、CPU利用率、以及是否超过阈值。
这里,所述预设存储条件包括存储各通信单板中CPU利用率排序最低的N块通信单板的CPU利用率信息;其中,N为大于等于2的正整数。
在一实施例中,如图3所示,以N取值为3,即所述预设存储条件包括存储各通信单板中CPU利用率排序最低的3块通信单板的CPU利用率信息为例,所述以CPU利用率表单的形式存储所获取的CPU利用率信息,包括:
步骤S1021:初始化CPU利用率表单中的各个表单项;
具体地,如图4所示,在初始化过程中,将所述CPU利用率表单中的所有表单项全部设置为默认字符“null(空)”。
步骤S1022:逐一将获取的通信单板的CPU利用率信息保存在所述CPU利用率表单中;
步骤S1023:当所述CPU利用率表单中存满N个通信单板的CPU利用率信息时,依据CPU利用率对所述CPU利用率表单进行排序;
具体地,如图5所示,以N取值为3为例,当所述CPU利用率表单中存满3个通信单板的CPU利用率信息时,依据CPU利用率对所述CPU利用率表单进行排序后,所得到的已排序的CPU利用率表单的组成结构如图5所示。
这里,所述对所述CPU利用率表单进行排序可以包括按照CPU利用率从低到高排序表单;也可以包括按照CPU利用率从高到低排序表单。
步骤S1024:当获取到第N+1个通信单板的CPU利用率信息时,将所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项进行匹配比较;
这里,当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项相匹配时,执行步骤S1025a~S1025b;当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项不匹配时,执行步骤S1026a~S1026c;
步骤S1025a:根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
步骤S1025b:当所述通信单板的CPU利用率未超过阈值时,根据所述CPU利用率信息更新已排序的CPU利用率表单,并对更新后的CPU利用率表单重新排序。
这里,需要补充说明的是,当所述通信单板的CPU利用率超过阈值时,则直接删除已排序的CPU利用率表单中已保存的所述通信单板的CPU利用率信息,将所对应的表单项设置为默认字符“null”。
步骤S1026a:根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
步骤S1026b:当所述通信单板的CPU利用率未超过阈值时,将所述通信单板的CPU利用率与已排序的CPU利用率表单中所保存的CPU利用率进行比较;
这里,需要补充说明的是,当所述通信单板的CPU利用率超过阈值时,则舍弃所获取的第N+1个通信单板的CPU利用率信息,不对已排序的CPU利用率表单作任何处理。
步骤S1026c:当所述通信单板的CPU利用率低于已排序的CPU利用率表单中所保存的CPU利用率时,则通过所述通信单板的CPU利用率信息替换已排序的CPU利用率表单中CPU利用率最高的通信单板对应的CPU利用率信息的方式更新已排序的CPU利用率表单,并对更新后的CPU利用率表单重新排序。
这里,需要补充说明的是,当所述通信单板的CPU利用率不低于已排序的CPU利用率表单中所保存的CPU利用率时,则舍弃所获取的第N+1个通信单板的CPU利用率信息,不对已排序的CPU利用率表单作任何处理。
如此,在后续计算单板接收到的除已处理的N+1块通信单板之外的其他任一通信单板的CPU利用率信息时,循环执行前述步骤S102中的步骤S1022至步骤S1026,得以保证CPU利用率表单中保存有CPU利用率最低的N块通信单板的单板子架号、单板槽位号、CPU利用率、以及是否超过阈值等CPU利用率信息。
步骤S103:接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;
这里,需要补充说明的是,当整个机架中存在第一通信单板的CPU利用率超负荷时,所述第一通信单板会向所述计算单板发送处理请求报文,所述处理请求报文的消息结构如图2所示,其中,所述“报文体”中包含有待处理数据。这样,当所述计算单板接收第一通信单板发送的待处理数据后,即可执行后续步骤S104。
步骤S104:根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;
这里,所述预设筛选条件通常为已保存的CPU利用率表单中CPU利用率最低的表单项所对应的通信单板;相应地,所述计算单板在已保存的CPU利用率表单中筛选出CPU利用率最低的表单项所对应的通信单板,作为第二通信单板。
步骤S105:将所接收的待处理数据发送给所述第二通信单板;
这里,需要补充说明的是,所述计算单板通过发送处理请求报文的方式向第二通信单板发送待处理数据;所述处理请求报文的消息结构如图2所示,其中,所述“报文体”中包含有待处理数据。
相应地,当所述第二通信单板接收到所述待处理数据后,通过自身的CPU对待处理数据执行相应的处理操作,以获得相应的处理结果并向所述计算单板反馈所述处理结果。
步骤S106:接收所述第二通信单板反馈的处理结果,并向所述第一通信单板转发所述处理结果。
具体地,所述计算单板接收所述第二通信单板反馈的处理结果,并通过向所述第一通信单板发送处理结果反馈报文的方式向第二通信单板发送待处理数据;所述处理结果反馈报文的消息结构如图2所示,其中,所述“报文体”中包含有处理结果。
如此,通过本发明实施例所述实现业务协同调度的方法,能够在通信设备中各通信单板之间实现待处理数据量的协同调度,从而提高资源利用率;同时,有效避免因某块通信单板的数据处理能力超负荷所导致的通信接口阻塞或者配置操作失败的问题。
实施例二
图6为本发明实施例实现业务协同调度的方法的流程示意图二,应用于计算单板,如图6所示,本发明实施例实现业务协同调度的方法包括:
步骤S101:获取通信单板的CPU利用率信息;
这里,当所述计算单板附着于本通信单板时,所述获取通信单板的CPU利用率信息,包括:定时监测本通信单板CPU利用率信息;通过接收广播消息的方式获取除本通信单板之外的其他通信单板的CPU利用率信息;其中,所述本通信单板为所述各通信单板之一。
这里,当所述计算单板不附着于任一通信单板时,即在整个机架中插入一块计算单板,此时,所述获取通信单板的CPU利用率信息,包括:
通过接收广播消息的方式获取通信单板的CPU利用率信息。
需要说明的是,在本发明实施例中,所述广播消息所对应的消息结构可以采用通信单板间的通信消息结构。
具体地,如图2所示,所述通信单板间的通信消息结构包括“报文头”和“报文体”两部分;其中,所述“报文头”包含如下内容:
1)板间通信版本:用于标识所述计算单板的软件版本;
2)信息体长度:用于标识报文体长度;
3)校验和:存放整个报文数据相加结果,用于接收端进行校验;
4)目的地址:目的地址为0xAABB格式,AA代表单板子架号,BB代表单板槽位号;
5)源地址:源地址为0xAABB格式,AA代表单板子架号,BB代表单板槽位号;
6)消息类型:消息类型用于区分该报文类型,包括广播消息报文、处理请求报文、处理请求响应报文、处理结果反馈报文、待处理数据发送报文等;其中,所述处理请求响应报文包括处理请求应答报文和处理请求拒绝报文。
步骤S102:根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;
其中,所述CPU利用率表单至少包括如下表单项组合:单板子架号、单板槽位号、CPU利用率、以及是否超过阈值。
这里,所述预设存储条件包括存储各通信单板中CPU利用率排序最低的N块通信单板的CPU利用率信息;其中,N为大于等于2的正整数。
在本发明实施例中,步骤S102的具体实现过程与本发明实施例一中步骤S102的实现过程相类似,因此不再赘述。
步骤S103:接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;
这里,需要补充说明的是,当整个机架中存在第一通信单板的CPU利用率超负荷时,所述第一通信单板会向所述计算单板发送处理请求报文,所述处理请求报文的消息结构如图2所示,其中,所述“报文体”中包含有待处理数据。这样,当所述计算单板接收第一通信单板发送的待处理数据后,即可执行后续步骤S104。
步骤S104:根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;
这里,所述预设筛选条件通常为已保存的CPU利用率表单中CPU利用率最低的表单项所对应的通信单板;相应地,所述计算单板在已保存的CPU利用率表单中筛选出CPU利用率最低的表单项所对应的通信单板,作为第二通信单板。
步骤S201:向所述第二通信单板发送处理请求;
这里,需要补充说明的是,所述计算单板会通过发送处理请求报文的方式向第二通信单板发送所述处理请求报文;进一步地,当所述第二通信单板接收到所述处理请求时,会通过处理请求响应报文的方式向所述计算单板反馈接受或拒绝类型的处理请求响应。其中,所述处理请求报文的消息结构如图2所示,其中,所述“报文体”可以为空信息;所述处理请求响应报文的消息结构如图2所示,其中,所述“报文体”可以包含接受或拒绝信息。
步骤S202:接收所述第二通信单板反馈的处理请求响应。
这里,所述计算单板接收所述第二通信单板反馈的处理请求响应;当所述处理请求响应为接受类型的处理请求响应时,继续执行后续步骤S105。
这里,需要补充说明的是,当所述处理请求响应为拒绝类型的处理请求响应时,所述计算单板可以根据预设规则重新选取第三通信单板;所述第三通信单板为已排序的CPU利用率表单中CPU利用率次低的表单项所对应的通信单板。之后,将所述第三通信单板作为第二通信单板,继续执行步骤S201~S202。
步骤S105:将所接收的待处理数据发送给所述第二通信单板;
这里,需要补充说明的是,所述计算单板通过发送处理请求报文的方式向第二通信单板发送待处理数据;所述处理请求报文的消息结构如图2所示,其中,所述“报文体”中包含有待处理数据。
相应地,当所述第二通信单板接收到所述待处理数据后,通过自身的CPU对待处理数据执行相应的处理操作,以获得相应的处理结果并向所述计算单板反馈所述处理结果。
步骤S106:接收所述第二通信单板反馈的处理结果,并向所述第一通信单板转发所述处理结果。
具体地,所述计算单板接收所述第二通信单板反馈的处理结果,并通过向所述第一通信单板发送处理结果反馈报文的方式向第二通信单板发送待处理数据;所述处理结果反馈报文的消息结构如图2所示,其中,所述“报文体”中包含有处理结果。
如此,通过本发明实施例所述实现业务协同调度的方法,能够在通信设备中各通信单板之间实现待处理数据量的协同调度,从而提高资源利用率;同时,有效避免因某块通信单板的数据处理能力超负荷所导致的通信接口阻塞或者配置操作失败的问题。
需要补充说明的是,通过本发明实施例一和二所述的通过计算单板实现业务协同调度的方法,本领域技术人员还可以通过所述计算单板协助路由板完成复杂的路由协同调度过程。
实施例三
图7为本发明一应用实例实现业务协同调度的方法的流程示意图,应用于计算单板,所述计算单板附着于本通信单板A,所述本通信单板A为所述各通信单板之一,如图7所示,本发明一应用实例实现业务协同调度的方法包括:
步骤S301:本通信单板A采集性能、告警等相关业务数据;对所采集的相关业务数据进行数据处理,得到数据处理结果;向网络管理器上报数据处理结果。
具体地,本通信单板A的数据采集配置任务模块能够通过软、硬件通信接口将从底层硬件采集的性能、告警等相关业务数据;将所采集的相关业务数据传送至数据处理任务模块;所述数据处理任务模块对所述相关业务数据进行数据处理,所述数据处理包括告警过滤、性能越限比较等分析,以及根据分析结果决定待上报的性能、告警相关数据;所述数据处理任务将所述确定的待上报的性能、告警相关数据作为数据处理结果传送至数据上报配置任务模块;再由所述数据上报配置任务模块将所述数据处理结果通过背板通信接口上报给网络管理器。
步骤S302:本通信单板A从网络管理器获取配置命令;解析所述配置命令,获得配置参数;将所述配置参数通过通信接口配置到具体硬件中。
具体地,当本通信单板A需要对硬件进行配置时,本通信单板A的数据上报配置任务模块通过背板通信接口获取网络管理器下发的配置命令,所述配置命令中携带有配置参数;数据上报配置任务模块将所述配置命令传送给数据处理任务模块;数据处理任务模块对配置命令进行解析,获得配置参数,并将所获得的配置参数传送至数据采集配置任务模块;数据采集配置任务模块将所述配置参数通过软、硬件通信接口配置到具体硬件中。
这里,在本发明实施例中,步骤S301和S302的执行顺序不限。
步骤S303:当本通信单板A中附着的计算单板获取各通信单板的CPU利用率信息;
具体地,所述计算单板定时监测到本通信单板CPU利用率信息;同时,通过接收广播消息的方式获取除本通信单板A之外的其他通信单板,包括通信单板B、C、以及D的CPU利用率信息;其中,如图8所示,所获取的各通信单板A、B、C和D的CPU利用率信息中的CPU利用率分别为91%、55%、70%和60%。
步骤S304:根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;
具体地,通过本发明实施例一或二中步骤S102所存储的已排序的CPU利用率表单如图9所示。
步骤S305:接收本通信单板A发送的待处理数据;
这里,需要说明的是,由于本通信单板A的CPU利用率达到91%,超过阈值90%,因此本通信单板A会将未处理完的待处理数据发送至计算单板。
步骤S306:根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板B;其中,所述预设筛选条件通常为已保存的CPU利用率表单中CPU利用率最低的表单项所对应的通信单板。
这里,通过步骤S306,所述计算单板在已保存的如图8所示的CPU利用率表单中选取出第二通信单板B。
步骤S307:计算单板将所接收的待处理数据发送给所述第二通信单板B;
步骤S308:接收所述第二通信单板B反馈的处理结果,并向所述第一通信单板A转发所述处理结果。
实施例四
图10为本发明实施例计算单板的组成结构示意图一,所述计算单板包括:获取模块401、存储模块402、第一接收模块403、选取模块404、第一发送模块405、第二接收模块406、以及转发模块407;其中,
所述获取模块401,用于获取通信单板的CPU利用率信息;
所述存储模块402,用于根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;
其中,所述CPU利用率表单至少包括如下表单项组合:单板子架号、单板槽位号、CPU利用率、以及是否超过阈值。
其中,所述预设存储条件包括存储各通信单板中CPU利用率排序最低的N块通信单板的CPU利用率信息;其中,N为大于等于2的正整数。
所述第一接收模块403,用于接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;
所述选取模块404,用于根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;
所述第一发送模块405,用于将所接收的待处理数据发送给所述第二通信单板;
所述第二接收模块406,用于接收所述第二通信单板反馈的处理结果;以及
所述转发模块407,用于向所述第一通信单板转发所述处理结果。
在一实施例中,如图11所示,所述计算单板还包括第二发送模块408和第三接收模块409;其中,
所述第二发送模块408,用于向所述第二通信单板发送处理请求;
所述第三接收模块409,用于接收所述第二通信单板反馈的处理请求响应。
在一实施例中,如图12所示,当所述计算单板附着于本通信单板时,所述获取模块401包括监测单元4011和获取单元4012,所述本通信单板为所述各通信单板之一;其中,
所述监测单元4011,用于定时监测本通信单板CPU利用率信息;
所述获取单元4012,用于通过接收广播消息的方式获取除本通信单板之外的其他通信单板的CPU利用率信息。
在一实施例中,如图13所示,所述存储模块402包括初始化单元4021、存储单元4022、计数单元4023、排序单元4024、匹配单元4025、确定单元4026和更新单元4027;其中,
所述初始化单元4021,用于初始化CPU利用率表单中的各个表单项;
所述存储单元4022,用于逐一将获取的通信单板的CPU利用率信息保存在所述CPU利用率表单中;
所述计数单元4023,用于对所述CPU利用率表单中所存储的CPU利用率信息对应的通信单板进行计数;
所述排序单元4024,用于当所述计数单元4023所记录的通信单板数为N个时,依据CPU利用率对所述CPU利用率表单进行排序;还用于对更新后的CPU利用率表单重新排序;
所述匹配单元4025,用于当获取到第N+1个通信单板的CPU利用率信息时,将所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项进行匹配比较;
所述确定单元4026,用于当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项相匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
所述更新单元4027,用于当所述通信单板的CPU利用率未超过阈值时,根据所述CPU利用率信息更新已排序的CPU利用率表单。
在一实施例中,如图13所示,所述存储模块还包括比较单元4028;其中,
所述确定单元4026,还用于当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项不匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
所述比较单元4028,用于当所述通信单板的CPU利用率未超过阈值时,将所述通信单板的CPU利用率与已排序的CPU利用率表单中所保存的CPU利用率进行比较;
所述更新单元4027,还用于当所述通信单板的CPU利用率低于已排序的CPU利用率表单中所保存的CPU利用率时,则通过所述通信单板的CPU利用率信息替换已排序的CPU利用率表单中CPU利用率最高的通信单板对应的CPU利用率信息的方式更新已排序的CPU利用率表单,并对更新后的CPU利用率表单重新排序。
本发明实施例中提供的计算单板中的各模块,及模块各自包括的单元均可以通过计算单板中的处理器实现,也可以通过具体的逻辑电路实现;比如,在实际应用中,可由中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、或现场可编程门阵列(FPGA)等实现;另外,所述计数单元也可由计算单板中的计数器实现;所述存储单元也可由计算单板中的存储器实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。
Claims (16)
1.一种实现业务协同调度的方法,应用于计算单板,其特征在于,所述方法包括:
获取通信单板的中央处理器CPU利用率信息;
根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;
接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;
根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;
将所接收的待处理数据发送给所述第二通信单板;
接收所述第二通信单板反馈的处理结果,并向所述第一通信单板转发所述处理结果;
其中,根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息的步骤,包括:当所述CPU利用率表单中存满N个通信单板的CPU利用率信息时,依据CPU利用率对所述CPU利用率表单进行排序,当所述通信单板的CPU利用率低于已排序的CPU利用率表单中所保存的CPU利用率时,则通过所述通信单板的CPU利用率信息替换已排序的CPU利用率表单中CPU利用率最高的通信单板对应的CPU利用率信息的方式更新已排序的CPU利用率表单,并对更新后的CPU利用率表单重新排序。
2.根据权利要求1所述的方法,其特征在于,在所述将所接收的待处理数据发送给所述第二通信单板之前,所述方法还包括:
向所述第二通信单板发送处理请求;
接收所述第二通信单板反馈的处理请求响应。
3.根据权利要求1或2所述的方法,其特征在于,当所述计算单板附着于本通信单板时,所述获取通信单板的CPU利用率信息,包括:
定时监测本通信单板CPU利用率信息;
通过接收广播消息的方式获取除本通信单板之外的其他通信单板的CPU利用率信息;所述本通信单板为所述各通信单板之一。
4.根据权利要求1或2所述的方法,其特征在于,当所述计算单板不附着于任一通信单板时,所述获取通信单板的CPU利用率信息,包括:
通过接收广播消息的方式获取通信单板的CPU利用率信息。
5.根据权利要求1或2所述的方法,其特征在于,所述CPU利用率表单至少包括如下表单项组合:单板子架号、单板槽位号、CPU利用率、以及是否超过阈值。
6.根据权利要求1或2所述的方法,其特征在于,所述预设存储条件包括存储各通信单板中CPU利用率排序最低的N块通信单板的CPU利用率信息;其中,N为大于等于2的正整数。
7.根据权利要求6所述的方法,其特征在于,所述以CPU利用率表单的形式存储所获取的CPU利用率信息,包括:
初始化CPU利用率表单中的各个表单项;
逐一将获取的通信单板的CPU利用率信息保存在所述CPU利用率表单中;
当获取到第N+1个通信单板的CPU利用率信息时,将所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项进行匹配比较;
当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项相匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
当所述通信单板的CPU利用率未超过阈值时,根据所述CPU利用率信息更新已排序的CPU利用率表单,并对更新后的CPU利用率表单重新排序。
8.根据权利要求7所述的方法,其特征在于,当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项不匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
当所述通信单板的CPU利用率未超过阈值时,将所述通信单板的CPU利用率与已排序的CPU利用率表单中所保存的CPU利用率进行比较。
9.一种计算单板,其特征在于,所述计算单板包括获取模块、存储模块、第一接收模块、选取模块、第一发送模块、第二接收模块、以及转发模块;
所述获取模块,用于获取通信单板的中央处理器CPU利用率信息;
所述存储模块,用于根据预设存储条件,以CPU利用率表单的形式存储所获取的CPU利用率信息;
所述第一接收模块,用于接收第一通信单板发送的待处理数据;所述第一通信单板为CPU利用率超负荷的通信单板;
所述选取模块,用于根据预设筛选条件在已保存的CPU利用率表单中选取第二通信单板;
所述第一发送模块,用于将所接收的待处理数据发送给所述第二通信单板;
所述第二接收模块,用于接收所述第二通信单板反馈的处理结果;以及
所述转发模块,用于向所述第一通信单板转发所述处理结果;
其中,所述存储模块包括排序单元和更新单元,所述排序单元用于当所述计数单元所记录的通信单板数为N个时,依据CPU利用率对所述CPU利用率表单进行排序,还用于对更新后的CPU利用率表单重新排序,所述更新单元,用于当所述通信单板的CPU利用率低于已排序的CPU利用率表单中所保存的CPU利用率时,则通过所述通信单板的CPU利用率信息替换已排序的CPU利用率表单中CPU利用率最高的通信单板对应的CPU利用率信息的方式更新已排序的CPU利用率表单,并对更新后的CPU利用率表单重新排序。
10.根据权利要求9所述的计算单板,其特征在于,所述计算单板还包括第二发送模块和第三接收模块;其中,
所述第二发送模块,用于向所述第二通信单板发送处理请求;
所述第三接收模块,用于接收所述第二通信单板反馈的处理请求响应。
11.根据权利要求9或10所述的计算单板,其特征在于,当所述计算单板附着于本通信单板时,所述本通信单板为所述各通信单板之一,所述获取模块包括监测单元和获取单元,其中,
所述监测单元,用于定时监测本通信单板CPU利用率信息;
所述获取单元,用于通过接收广播消息的方式获取除本通信单板之外的其他通信单板的CPU利用率信息。
12.根据权利要求9或10所述的计算单板,其特征在于,当所述计算单板不附着于任一通信单板时,所述获取模块用于,
通过接收广播消息的方式获取通信单板的CPU利用率信息。
13.根据权利要求9或10所述的计算单板,其特征在于,所述CPU利用率表单至少包括如下表单项组合:单板子架号、单板槽位号、CPU利用率、以及是否超过阈值。
14.根据权利要求9或10所述的计算单板,其特征在于,所述预设存储条件包括存储各通信单板中CPU利用率排序最低的N块通信单板的CPU利用率信息;其中,N为大于等于2的正整数。
15.根据权利要求14所述的计算单板,其特征在于,所述存储模块还包括初始化单元、存储单元、计数单元、匹配单元、确定单元;其中,
所述初始化单元,用于初始化CPU利用率表单中的各个表单项;
所述存储单元,用于逐一将获取的通信单板的CPU利用率信息保存在所述CPU利用率表单中;
所述计数单元,用于对所述CPU利用率表单中所存储的CPU利用率信息对应的通信单板进行计数;
所述匹配单元,用于当获取到第N+1个通信单板的CPU利用率信息时,将所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项进行匹配比较;
所述确定单元,用于当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项相匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
所述更新单元,用于当所述通信单板的CPU利用率未超过阈值时,根据所述CPU利用率信息更新已排序的CPU利用率表单。
16.根据权利要求15所述的计算单板,其特征在于,所述存储模块还包括比较单元;其中,
所述确定单元,还用于当所述CPU利用率信息中的单板子架号和单板槽位号与已排序的CPU利用率表单中的对应表单项不匹配时,根据所述CPU利用率信息确定所述通信单板的CPU利用率是否超过阈值;
所述比较单元,用于当所述通信单板的CPU利用率未超过阈值时,将所述通信单板的CPU利用率与已排序的CPU利用率表单中所保存的CPU利用率进行比较。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410742634.4A CN105743802B (zh) | 2014-12-08 | 2014-12-08 | 一种实现业务协同调度的方法及计算单板 |
PCT/CN2015/091675 WO2016091003A1 (zh) | 2014-12-08 | 2015-10-10 | 一种实现业务协同调度的方法、计算单板及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410742634.4A CN105743802B (zh) | 2014-12-08 | 2014-12-08 | 一种实现业务协同调度的方法及计算单板 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105743802A CN105743802A (zh) | 2016-07-06 |
CN105743802B true CN105743802B (zh) | 2020-02-14 |
Family
ID=56106639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410742634.4A Active CN105743802B (zh) | 2014-12-08 | 2014-12-08 | 一种实现业务协同调度的方法及计算单板 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105743802B (zh) |
WO (1) | WO2016091003A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110764922A (zh) * | 2018-07-25 | 2020-02-07 | 中兴通讯股份有限公司 | 一种数据的处理方法、单板和计算机存储介质 |
CN116204327B (zh) * | 2023-05-06 | 2023-08-01 | 阿里巴巴(中国)有限公司 | 分布式系统通信调度方法及分布式机器学习系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225641A (ja) * | 2007-03-09 | 2008-09-25 | Nec Corp | コンピュータシステム、割り込み制御方法及びプログラム |
CN101741912A (zh) * | 2009-12-30 | 2010-06-16 | 中兴通讯股份有限公司 | 一种处理计算任务的方法、网络设备及分布式网络系统 |
CN103108334A (zh) * | 2011-11-10 | 2013-05-15 | 中兴通讯股份有限公司 | 一种射频拉远系统的系统负荷动态调整方法 |
-
2014
- 2014-12-08 CN CN201410742634.4A patent/CN105743802B/zh active Active
-
2015
- 2015-10-10 WO PCT/CN2015/091675 patent/WO2016091003A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225641A (ja) * | 2007-03-09 | 2008-09-25 | Nec Corp | コンピュータシステム、割り込み制御方法及びプログラム |
CN101741912A (zh) * | 2009-12-30 | 2010-06-16 | 中兴通讯股份有限公司 | 一种处理计算任务的方法、网络设备及分布式网络系统 |
CN103108334A (zh) * | 2011-11-10 | 2013-05-15 | 中兴通讯股份有限公司 | 一种射频拉远系统的系统负荷动态调整方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105743802A (zh) | 2016-07-06 |
WO2016091003A1 (zh) | 2016-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11240159B2 (en) | Service link selection control method and device | |
CN105721535A (zh) | 对服务功能链中的服务功能的并行处理 | |
US20170278003A1 (en) | Complex Event Processing Method, Apparatus, and System | |
CN106302632B (zh) | 一种基础镜像的下载方法以及管理节点 | |
KR101981334B1 (ko) | 분산형 데이터 패킷 처리가 적용된 이동통신 시스템 및 방법 | |
CN110896355A (zh) | 一种网络切片的选择方法及装置 | |
US20080240140A1 (en) | Network interface with receive classification | |
WO2021109767A1 (zh) | 网络设备及其降低传输时延的方法 | |
CN111338787B (zh) | 一种数据处理方法及装置、存储介质、电子装置 | |
CN106533826A (zh) | 网络状态的探测方法及系统 | |
CN107819825A (zh) | 一种服务调度方法、装置和电子设备 | |
CN110620722B (zh) | 一种订单处理的方法和装置 | |
US20150058682A1 (en) | Network apparatus and method of monitoring processor | |
CN106789166B (zh) | 一种网元批量配置的方法及装置 | |
CN105743802B (zh) | 一种实现业务协同调度的方法及计算单板 | |
CN114124713B (zh) | 操作级功能并行和自适应资源分配的服务功能链编排方法 | |
CN110113269B (zh) | 一种基于中间件的流量控制的方法及相关装置 | |
US10938771B2 (en) | Determining physical locations of devices in a data center | |
CN108712494A (zh) | 处理异步消息的方法、装置及设备 | |
CN112714159A (zh) | 消息转发方法和装置、存储介质及电子装置 | |
CN109189699B (zh) | 多路服务器通信方法、系统、中间控制器及可读存储介质 | |
US20170257323A1 (en) | Mail Obtaining Method, Terminal, and System | |
CN112035286A (zh) | 故障原因的确定方法及装置、存储介质、电子装置 | |
US20170366390A1 (en) | Information processing apparatus and information processing system | |
CN109358983A (zh) | 服务器数据处理方法、装置以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |