一种基于二分法的串口控制方法、设备及介质与流程

文档序号:25991574发布日期:2021-07-23 21:03阅读:76来源:国知局
本发明涉及网络通信技术,尤其涉及一种基于二分法的串口控制方法、设备及介质。
背景技术
::目前,在交换机测试中,一般通过交换机连接串口服务器中的串口,通过控制串口来登录交换机,对交换机做命令配置的下发。在命令配置下发过程中手动下发命令配置,在存在大量命令配置时,会导致命令配置下发速度慢,影响交换机测试效率。自动下发命令配置时只能以命令行的形式进行下发,当命令行字符过多超过串口服务器输入缓存区大小时会造成串口溢出,导致命令配置下发失败,影响测试结果,导致测试效率低。基于此,需要在命令行字符过多时不会造成串口服务器输入缓存区产生溢出错误,并且能够自动下发命令配置的方法,以便提高交换机测试的效率以及稳定性。技术实现要素:本说明书一个或多个实施例提供一种基于二分法的串口控制方法、设备及介质。用以解决如下问题:通过串口服务器的串口下发命令配置时存在输入溢出,导致串口服务器下发命令配置时出错,造成交换机配置下发失败的问题。为解决上述技术问题,本说明书一个或多个实施例是这样实现的:一方面,本说明书一个或多个实施例提供的一种基于二分法的串口控制方法,包括:确定串口服务器的第一串口与交换机的第二串口通过串口线连接;通过命令配置下发工具连接所述第一串口,登录所述交换机;通过所述命令配置下发工具控制所述第一串口向所述交换机以逐个字符下发的方式下发命令配置;通过二分法确定下发每个字符之间所需等待的最短等待时间。将命令配置的下发方式由下发整个命令行改进为以逐个字符下发,并且使用二分法确定每个字符下发相隔的最短时间,解决了串口溢出导致的交换机配置下发异常的问题,加快了命令配置的下发速度,在保证测试稳定性的同时,提高了交换机的测试效率。可选地,通过所述命令配置下发工具控制所述第一串口向所述交换机以逐个字符下发的方式下发命令配置,具体包括:将所述命令配置写在所述命令配置下发工具提供的自动化脚本中;利用所述自动化脚本向所述交换机以逐个字符下发的方式下发命令配置。将命令配置写在脚本中,便于交换机的自动化测试。可选地,所述通过二分法确定下发每个字符之间需要等待的最短等待时间,具体包括:设置等待时间区间,以及时间精度;重复执行下发过程,直至所述等待时间区间达到预设要求;所述下发过程包括:取所述等待时间区间的中间值作为等待时间;向所述交换机以逐个字符下发的方式下发所述命令配置,对所述交换机进行测试;判断是否出现配置错误;若出现,取所述等待时间区间右侧的部分时间等待区间作为新的等待时间区间;若未出现,取所述等待时间区间左侧的部分时间等待区间作为新的等待时间区间。可选地,设置所述时间精度精确到小数点后3位。可选地,所述预设要求包括:所述等待时间区间的左端点值与右端点值相差不大于0.001s时,停止执行所述下发过程。可选地,在所述等待时间区间达到预设要求之后,所述方法还包括:将所述等待时间区间的右端点值设置为最短等待时间。可选地,确定所述最短等待时间不超过0.640s;若超过,则将0.640s作为所述最短等待时间。可选地,将所述最短等待时间作为与所述交换机为同一系列的其他交换机的最短等待时间。另一方面,本说明书一个或多个实施例提供的一种基于二分法的串口控制设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行:确定串口服务器的第一串口与交换机的第二串口通过串口线连接;通过命令配置下发工具连接所述第一串口,登录所述交换机;通过所述命令配置下发工具控制所述第一串口向所述交换机以逐个字符下发的方式下发命令配置;通过二分法确定下发每个字符之间所需等待的最短等待时间。另一方面,本说明书一个或多个实施例还提供了一种存储介质,包括:所述存储介质为非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有至少一个程序,每个所述程序包括指令,所述指令当被终端执行时,使所述终端执行上述方法。本说明书一个或多个实施例采用的上述至少一个技术方案能够达到以下有益效果:1、以逐个字符下发的方式下发命令配置,给了串口足够的缓冲时间,解决了串口溢出造成的交换机配置下发失败的问题,相对于传统的以命令行下发的方式下发命令配置,本发明的方案对于命令配置下发的结果更具有稳定性。2、每个字符下发的等待时间采用二分法来获取,能够确定每个字符下发的最短等待时间,在保证交换机测试的稳定性的同时,提高了交换机的测试效率。附图说明为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本说明书一个或多个实施例提供的一种基于二分法的串口控制方法的流程示意图;图2为本说明书一个或多个实施例提供的一种串口服务器与交换机连接示意图;图3为本说明书一个或多个实施例提供的一种基于二分法确定每个字符下发的最短等待时间的流程示意图;图4为本说明书一个或多个实施例提供的一种逐个字符下发方式示意图;图5为本说明书一个或多个实施例提供的一种基于二分法的串口控制设备结构示意图。具体实施方式为了使本
技术领域
:的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。以下结合附图,详细说明本说明书各实施例提供的技术方案。图1为本说明书一个或多个实施例提供的一种基于二分法的串口控制方法的流程示意图。s101:确定串口服务器的第一串口与交换机的第二串口通过串口线连接。s102:通过命令配置下发工具连接所述第一串口,登录所述交换机。图2为本说明书一个或多个实施例提供的一种串口服务器与交换机连接示意图。如图2所示串口服务器的第一串口与交换机的第一串口通过串口线互联,命令配置下发工具通过控制串口服务器的第一串口,登录交换机,进而实现对交换机的控制。其中,命令配置下发工具包括securecrtportable、putty、python等。s103:通过所述命令配置下发工具控制所述第一串口向所述交换机以逐个字符下发的方式下发命令配置。在本说明书的一个或多个实施例中,将命令配置写在命令配置下发工具提供的自动化脚本中;利用自动化脚本向交换机以逐个字符下发的方式下发命令配置。包含命令配置的自动化脚本能够重复使用。以命令配置下发工具python为例,通过python程序的telnet功能,连接串口,登录交换机,通过控制该串口下发交换机的命令配置,从而实现对交换机的控制。使用python的telnet库功能程序下发命令配置,无需手工输入命令配置,能够大幅提升命令配置的下发速度。使用python中的telnet库功能程序连接串口登录交换机下发命令配置进行交换机测试时,可以将命令配置提前写在脚本中,便于交换机的自动化测试。在交换机测试过程中,写在脚本中的命令配置可以重复使用。在python的telnet库连接串口登录交换机以后,以逐个字符下发的方式下发命令配置,而不是整个命令行一起下发,解决了在命令行字符过多时以整个命令行一起下发会造成串口溢出的问题,保证了交换机测试的稳定性。s104:通过二分法确定下发每个字符之间所需等待的最短等待时间。在本说明书的一个或多个实施例中,通过二分法确定下发每个字符的最短等待时间。确定下发每个字符之间所需等待的最短等待时间的过程为:设置等待时间区间,以及时间精度;重复执行下发过程,直至等待时间区间达到预设要求;下发过程包括:取等待时间区间的中间值作为等待时间;向交换机以逐个字符下发的方式下发命令配置,对所述交换机进行测试;判断是否出现配置错误;若出现,取所述等待时间区间右侧的部分时间等待区间作为新的等待时间区间;若未出现,取所述等待时间区间左侧的部分时间等待区间作为新的等待时间区间。其中,预设要求为在等待时间区间的左端点值与右端点值相差不大于0.001s时,停止执行下发过程。等待时间区间的左端点值为最小值,右端点值为最大值。在本说明书的一个或多个实施例中,设置时间精度精确到小数点后3位。将等待时间区间的右端点值设置为最短等待时间。将最短等待时间作为与交换机为同一系列的其他交换机的最短等待时间。确定最短等待时间不超过0.640s;若超过,则将0.640s作为最短等待时间。对于同一系列的交换机而言,不需要在对交换机进行逐个测试时,都要重新输入一遍相同的命令配置,最短等待时间也相同。其中,同一系列是指相同型号的交换机或相同生产商生产的交换机。图3为本说明书一个或多个实施例提供的一种基于二分法确定每个字符下发的最短等待时间的流程示意图。以等待时间区间为0到0.640s为例,时间精确到小数点后面3位。在交换机测试中,等待时间设置为不超过0.640s,在一个命令行下发时不会消耗过长的时间,导致交换机测试效率降低。取等待时间区间的中间值0.320s作为等待时间,通过python的telnet库登录交换机,向交换机以逐个字符下发的方式下发命令配置,每个字符下发以后的等待时间是0.320s,在给交换机下发了大量的命令配置后,如果没有出现命令行配置错误,取等待时间区间的左端点值作为左端点,等待时间区间的中间值作为右端点,形成新的等待时间区间,也就是取等待时间区间左侧的部分时间等待区间作为新的等待时间区间,新的等待时间区间为0到0.320s,等待时间取新的等待时间区间的中间值0.160s。若出现命令行配置错误,取等待时间区间的右端点值作为右端点,等待时间区间的中间值作为左端点,形成新的等待时间区间,也就是取等待时间区间右侧的部分时间等待区间作为新的等待时间区间,新的等待时间区间为0.320s到0.640s,等待时间取等待时间区间的中间值0.480s。以新的等待时间区间为0到0.320s,等待时间为0.160s为例,重复执行向交换机以逐个字符下发的方式下发命令配置,对交换机进行测试,确定是否出现配置错误。重复执行下发过程,直到找到一个最优的时间,满足串口不再溢出的最短等待时间。图4为本说明书一个或多个实施例提供的一种逐个字符下发方式示意图。确定最短等待时间后,使用python的telnet库中的功能程序下发命令配置时,每次都是下发一个字符经过最短等待时间后再下发下一个字符,直到整个命令行下发完成。在配置下一个命令的时候,也是按照逐个字符下发,每个字符之间等待最短等待时间,完成交换机的配置下发,保证了交换机测试过程中的稳定性,提高了交换机的测试效率。图5为本说明书一个或多个实施例提供的一种基于二分法的串口控制设备结构示意图,所述设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行:确定串口服务器的第一串口与交换机的第二串口通过串口线连接;通过命令配置下发工具连接所述第一串口,登录所述交换机;通过所述命令配置下发工具控制所述第一串口向所述交换机以逐个字符下发的方式下发命令配置;通过二分法确定下发每个字符之间所需等待的最短等待时间。本说明书一个或多个实施例采用的上述至少一个技术方案,解决了通过串口服务器的串口下发命令配置时存在输入溢出,导致串口服务器下发命令配置时出错,造成交换机配置下发失败的问题。本说明书一个或对个实施例提供的一种存储介质,所述存储介质为非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有至少一个程序,每个所述程序包括指令,所述指令当被终端执行时,使所述终端执行上述方法。本说明书一个或多个实施例采用的上述至少一个技术方案能够达到以下有益效果:1、以逐个字符下发的方式下发命令配置,给了串口足够的缓冲时间,解决了串口溢出造成的交换机配置下发失败的问题,相对于传统的以命令行下发的方式下发命令配置,本发明的方案对于命令配置下发的结果更具有稳定性。2、每个字符下发的等待时间采用二分法来获取,能够确定每个字符下发的最短等待时间,在保证交换机测试的稳定性的同时,提高了交换机的测试效率。本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。以上所述仅为本说明书的一个或多个实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书的一个或多个实施例可以有各种更改和变化。凡在本说明书的一个或多个实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1