本技术涉及设备控制领域,尤其涉及一种基于设备可用资源的算法套件调整方法及装置。
背景技术:
1、现有的网络设备在进行码流处理过程中,涉及到码流加解密模式时,一般是先建立连接获取算法套件完成密钥交换,之后不断地更新密钥信息。基于更新的密钥信息对码流数据进行持续加解密操作。
2、基于上述原理描述可知,如果包含拉流设备、推流设备在内的网络设备因业务变化而导致数据处理压力发生变化,无法对连接算法套件进行替换的方式对网络设备的处理能力进行动态调节。一旦网络设备使用的算法套件无法满足数据处理压力,会发生网络设备空闲,或是业务相应缓慢甚至停止服务的现象。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种基于设备可用资源的算法套件调整方法及装置,能够根据视频直播过程中推流设备、拉流设备的工作状态,对二者使用的算法套件进行调整,从而在确保直播业务质量的同时,防止推流设备、拉流设备处于压力过大或过低的极端工作状态。
2、第一方面,本技术提供了一种基于设备可用资源的算法套件调整方法,包括:
3、向推流设备发送原始算法套件清单,接收所述推流设备基于所述原始算法套件清单的反馈信息,基于所述反馈信息生成算法套件集合;
4、从所述算法套件集合中选取与当前时刻的设备可用资源匹配的第一算法套件,根据所述第一算法套件协同所述推流设备进行视频码流的加解密处理;
5、实时监测所述设备可用资源,当所述设备可用资源相对于预设资源阈值发生变化时,触发从所述算法套件集合中选取用于替换所述第一算法套件的目标算法套件的操作。
6、在其中一个实施例中,所述向推流设备发送原始算法套件清单,接收所述推流设备基于所述原始算法套件清单的反馈信息,基于所述反馈信息生成算法套件集合,包括:
7、向推流设备发送原始算法套件清单,接收所述推流设备基于所述原始算法套件清单的反馈信息;
8、从所述反馈信息中提取所述推流设备支持的初始算法套件清单,选取所述初始算法套件清单与所述原始算法套件清单的交集作为算法套件集合;或
9、在所述反馈信息中将所述推流设备从所述原始算法套件清单中选出的算法套件作为算法套件集合。
10、在其中一个实施例中,所述从所述算法套件集合中选取与当前时刻的设备可用资源匹配的第一算法套件,根据所述第一算法套件协同所述推流设备进行视频码流的加解密处理,包括:
11、确定当前时刻的设备可用资源的等级;
12、从所述算法套件中选取与所述等级对应的第一算法套件,将所述第一算法套件发送至所述推流设备;
13、从所述推流设备处接收动态密钥;
14、根据所述第一算法套件及所述动态密钥协同所述推流设备进行视频码流的加解密处理。
15、在其中一个实施例中,所述所述实时监测所述设备可用资源,当所述设备可用资源相对于预设资源阈值发生变化时,触发从所述算法套件集合中选取用于替换所述第一算法套件的目标算法套件的操作,包括:
16、根据所述设备可用资源与预设资源阈值的对比结果,从所述算法套件集合中选取目标算法套件,使用所述目标算法套件对所述第一算法套件进行替换。
17、在其中一个实施例中,所述根据所述设备可用资源与预设资源阈值的对比结果,从所述算法套件集合中选取目标算法套件,使用所述目标算法套件对所述第一算法套件进行替换,包括:
18、如果所述设备可用资源高于预设资源阈值,则从所述算法套件集合中选取算法复杂度高于所述第一算法套件的算法套件作为目标算法套件;
19、如果所述设备可用资源低于预设资源阈值,则从所述算法套件集合中选取算法复杂度低于所述第一算法套件的算法套件作为目标算法套件。
20、在其中一个实施例中,当存在至少两台所述推流设备时,所述根据所述设备可用资源与预设资源阈值的对比结果,从所述算法套件集合中选取目标算法套件,使用所述目标算法套件对所述第一算法套件进行替换,包括:
21、根据所述设备可用资源与预设资源阈值的对比结果,分别从第一推流设备、第二推流设备各自使用的所述算法套件集合中选取用于替换所述第一算法套件的目标算法套件。
22、在其中一个实施例中,所述根据所述设备可用资源与预设资源阈值的对比结果,分别从第一推流设备、第二推流设备各自使用的所述算法套件集合中选取用于替换所述第一算法套件的目标算法套件,包括:
23、如果所述设备可用资源高于预设资源阈值,则同时从第一推流设备、第二推流设备各自使用的所述算法套件集合中选取算法复杂度高于所述第一算法套件的算法套件作为目标算法套件;
24、如果所述设备可用资源低于预设资源阈值,则同时从第一推流设备、第二推流设备各自使用的所述算法套件集合中选取算法复杂度低于所述第一算法套件的算法套件作为目标算法套件。
25、在其中一个实施例中,所述根据所述设备可用资源与预设资源阈值的对比结果,分别从第一推流设备、第二推流设备各自使用的所述算法套件集合中选取用于替换所述第一算法套件的目标算法套件,包括:
26、当第一推流设备使用的第一算法套件的算法复杂度高于第二推流设备使用的第一算法套件的算法复杂度时;
27、如果所述设备可用资源高于预设资源阈值,则从所述第一推流设备对应的所述算法套件集合中选取算法复杂度高于所述第一算法套件的算法套件作为目标算法套件;
28、如果所述设备可用资源低于预设资源阈值,则从所述第二推流设备对应的所述算法套件集合中选取算法复杂度低于所述第一算法套件的算法套件作为目标算法套件。
29、第二方面,本技术还提供了一种基于设备可用资源的算法套件调整装置。所述装置包括:
30、算法套件生成模块,用于向推流设备发送原始算法套件清单,接收所述推流设备基于所述原始算法套件清单的反馈信息,基于所述反馈信息生成算法套件集合;
31、业务处理模块,用于从所述算法套件集合中选取与当前时刻的设备可用资源匹配的第一算法套件,根据所述第一算法套件协同所述推流设备进行视频码流的加解密处理;
32、算法套件替换模块,用于实时监测所述设备可用资源,当所述设备可用资源相对于预设资源阈值发生变化时,触发从所述算法套件集合中选取用于替换所述第一算法套件的目标算法套件的操作。
33、第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
34、向推流设备发送原始算法套件清单,接收所述推流设备基于所述原始算法套件清单的反馈信息,基于所述反馈信息生成算法套件集合;
35、从所述算法套件集合中选取与当前时刻的设备可用资源匹配的第一算法套件,根据所述第一算法套件协同所述推流设备进行视频码流的加解密处理;
36、实时监测所述设备可用资源,当所述设备可用资源相对于预设资源阈值发生变化时,触发从所述算法套件集合中选取用于替换所述第一算法套件的目标算法套件的操作。
37、第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
38、向推流设备发送原始算法套件清单,接收所述推流设备基于所述原始算法套件清单的反馈信息,基于所述反馈信息生成算法套件集合;
39、从所述算法套件集合中选取与当前时刻的设备可用资源匹配的第一算法套件,根据所述第一算法套件协同所述推流设备进行视频码流的加解密处理;
40、实时监测所述设备可用资源,当所述设备可用资源相对于预设资源阈值发生变化时,触发从所述算法套件集合中选取用于替换所述第一算法套件的目标算法套件的操作。
41、第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
42、向推流设备发送原始算法套件清单,接收所述推流设备基于所述原始算法套件清单的反馈信息,基于所述反馈信息生成算法套件集合;
43、从所述算法套件集合中选取与当前时刻的设备可用资源匹配的第一算法套件,根据所述第一算法套件协同所述推流设备进行视频码流的加解密处理;
44、实时监测所述设备可用资源,当所述设备可用资源相对于预设资源阈值发生变化时,触发从所述算法套件集合中选取用于替换所述第一算法套件的目标算法套件的操作。
45、上述基于设备可用资源的算法套件调整方法、装置、计算机设备、存储介质和计算机程序产品,控制拉流设备与推流设备从算法套件集合中选出第一算法套件用于视频码流的加解密处理;之后实时监测二者的设备可用资源,一旦满足预设条件则选取目标算法套件对第一算法套件进行替换。通过基于设备可用资源对二者使用的算法套件进行调整,能够有效平衡设备压力与视频码流处理业务之间的矛盾,使得推流设备与拉流设备在业务处理难度与自身设备压力两个维度实现动态平衡。