1.本发明涉及通信设备故障处理技术领域,具体地讲,是涉及一种交换机配置故障的恢复方法及存储介质。
背景技术:
2.网管交换机内部硬件主要由负责报文交换的asic芯片和嵌入式cpu系统组成,在交换机上电后,cpu加载flash芯片中的固件并运行,固件程序配置交换机asic芯片,完成vlan、port能力等交换相关配置。云网管交换机作为一类新的交换机产品,主要特点在于其不具有本地web管理功能,不能直接通过web管理界面来进行参数配置,可以节省该部分资源,同时其通过内部程序与云服务器建立通讯连接,用户可以直接使用手机app连接云服务器,利用云服务器的功能来实现对云网管交换机的远程管理,十分便捷。
3.在实际使用中,用户对交换机的配置行为可能导致交换机固件与云服务器的连接中断,例如用户改变了上连口的端口状态或vlan配置,使上连口无法与internet通讯,俗称“变砖”。一旦进入该状态,云网管交换机便失去了云管能力,需要对交换机恢复缺省配置或上一个可联网的配置参数来救回,否则只能作设备报废处理。
4.交换机通常没有物理按键或开关用于恢复缺省参数,若设计物理按键会挤占交换机面板空间,也会涉及到硬件设计改版、结构设计调整等方面,大大增加成本。而且对于一些已有型号交换机通过软件升级为云网管交换机,也很难再进行物理按键增加。
技术实现要素:
5.针对上述现有技术存在的上述问题,本发明提供一种交换机配置故障的恢复方法及存储介质,无需增加物理按钮仅通过内置软件的方式即可恢复交换机配置故障。
6.为了实现上述目的,本发明采用的技术方案如下:
7.一种交换机配置故障的恢复方法,包括以下步骤:
8.s10、交换机上电开机时载入当前配置参数,并判断是否能连接到云服务器,若否,则执行下一步;
9.s20、检测交换机当前处于linkup状态的端口,并判断当前处于linkup状态的端口是否为设定的第一端口和第二端口,若是,则执行下一步;
10.s30、检测第一端口和第二端口之间是否连通,若是,则将当前配置参数恢复为可联网的配置参数,并指示用户重启交换机。
11.具体地,所述步骤s30中将当前配置参数恢复为可联网的配置参数的过程为:
12.将交换机的缺省配置参数或交换机保存的上一个可联网配置参数复制到当前配置参数并保存。
13.具体地,所述步骤s30中通过使交换机系统指示灯快速闪烁的方式指示用户重启交换机。
14.具体地,所述步骤s30中检测第一端口和第二端口之间是否连通的过程如下:
15.s31、选择一个未使用的vlan id,配置第一端口和第二端口加入该vlan,且发送报文带vlan tag,使能端口转发能力;
16.s32、构造一个广播帧,目标mac地址为ff-ff-ff-ff-ff-ff,报文payload为随机内容,并从第一端口发送该广播帧;
17.s33、判断第二端口在指定时间内是否收到该广播帧,若是,则第一端口和第二端口连通,若否,则第一端口和第二端口未连通。
18.进一步地,本发明还提供了一种交换机配置故障的恢复方法,包括以下步骤:
19.p10、交换机上电开机时载入当前配置参数,并判断是否能连接到云服务器,若否,则执行下一步;
20.p20、检测交换机当前处于linkup状态的端口,并判断当前处于linkup状态的端口是否为设定的第一端口和第二端口,若是,则跳转至步骤p50,若否,则执行下一步;
21.p30、判断当前处于linkup状态的端口是否为设定的第一端口和第三端口,若是,则执行下一步;
22.p40、检测第一端口和第三端口之间是否连通,若是,则将当前配置参数恢复为交换机保存的上一个可联网配置参数,并指示用户重启交换机;
23.p50、检测第一端口和第二端口之间是否连通,若是,则将当前配置参数恢复为交换机的缺省配置参数,并指示用户重启交换机。
24.具体地,所述步骤s30中通过使交换机系统指示灯快速闪烁的方式指示用户重启交换机。
25.具体地,所述步骤p50中检测第一端口和第二端口之间是否连通的过程如下:
26.p51、选择一个未使用的vlan id,配置第一端口和第二端口加入该vlan,且发送报文带vlan tag,使能端口转发能力;
27.p52、构造一个广播帧,目标mac地址为ff-ff-ff-ff-ff-ff,报文payload为随机内容,并从第一端口发送该广播帧;
28.p53、判断第二端口在指定时间内是否收到该广播帧,若是,则第一端口和第二端口连通,若否,则第一端口和第二端口未连通。
29.具体地,所述步骤p40中检测第一端口和第三端口之间是否连通的过程与步骤p50中检测第一端口和第二端口之间是否连通的过程相同。
30.更进一步地,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述交换机配置故障的恢复方法的步骤。
31.与现有技术相比,本发明具有以下有益效果:
32.本发明采用交换机内置程式的方式在不增加物理按钮的条件下实现交换机配置故障的安全恢复,避免了用户意外操作带来的损失。本发明设计简单巧妙,实现方便,操作使用简单,适于在云网管交换机中应用。
33.本发明可融合于交换机的正常使用流程中,形成交换机的配置故障恢复功能。
附图说明
34.图1为本发明-实施例1的流程示意图。
35.图2为本发明-实施例1中检测两个端口连通状态的流程示意图。
36.图3为本发明-实施例2的流程示意图。
具体实施方式
37.下面结合附图和实施例对本发明作进一步说明,本发明的实施方式包括但不限于下列实施例。
38.本发明提供的交换机配置故障的恢复方法的基本前提为:用户因有意或无意的对交换机配置参数调整,导致交换机无法与云服务器连接而“变砖”。为挽回损失,使交换机能够执行该恢复方法,用户需要从硬件层面进行一些操作,包括:关闭故障的交换机电源;拔掉故障的交换机的所有网线;使用一根网线连接故障的交换机的两个指定的端口(如第一端口和第二端口),当用户需求恢复为缺省配置参数和上一个可联网配置参数时的指定端口可以不一样;开机,观察交换机系统指示灯状态来判断恢复方法是否成功,成功后再手动重启交换机。
39.实施例1
40.如图1至图2所示,该交换机配置故障的恢复方法,包括以下步骤:
41.s1、交换机上电开机,加载固件并运行,读取保存的配置参数(当前配置参数),并配置交换机asic芯片。
42.s2、先判断当前工作于已配置状态(即运行于非缺省参数状态),事实上当出现该种配置故障时必然已是运行于非缺省参数状态,然后判断当前是否能与云服务器连接成功,若能够连接成功,表明该交换机未出现故障,也无需进行恢复,此时可以终止恢复方法并使交换机运行转入正常运行状态;若当前无法与云服务器连接成功,表明该交换机存在该配置故障,需要进行恢复,进行下一步。
43.s3、检测交换机当前处于linkup状态的端口,其中linkup状态表示端口可连通的状态,一般在交换机的端口上插入网线即可使该端口处于linkup状态,然后判断当前处于linkup状态的端口是否为设定的第一端口和第二端口,比如在实践中通常将第一端口和第二端口设定为交换机的第一个端口和最后一个端口,以便于用户准确识别,若当前处于linkup状态的端口仅有设定的第一端口和第二端口,表示用户操作符合设定要求,则执行下一步;若当前处于linkup状态的端口不是上述这种情况,表示用户操作可能不符合恢复方法过程的要求,则终止该恢复方法,此时可以用系统指示灯的不同闪烁方式对用户进行提示。
44.以下步骤s4-s6为检测第一端口和第二端口之间是否连通。
45.s4、交换机固件自动选择一个未使用的vlan id(若没有未使用的vlan id,则使用vlan 4044),配置该第一端口和第二端口加入该vlan,且发送报文带vlan tag,使能端口转发能力。
46.s5、交换机cpu构造一个广播帧,目标mac地址为ff-ff-ff-ff-ff-ff,报文payload为随机内容,并从第一端口发送该广播帧。
47.s6、交换机固件监测第二端口,若在指定时间(如1秒)内收到该广播帧(内容相同的帧),则表示第一端口和第二端口之间连通,执行下一步,若超过指定时间还未收到任何帧或收到的帧内容不同于该广播帧的内容,则表示第一端口和第二端口之间未连通,可能存在用户操作不符合恢复方法过程的要求,终止该恢复方法,此时可以用系统指示灯的不
同闪烁方式对用户进行提示。
48.s7、将当前配置参数恢复为可联网的配置参数,将交换机的缺省配置参数或交换机保存的上一个可联网配置参数复制到当前配置参数并保存,这里根据预设的一种方式恢复即可;并通过使交换机系统指示灯快速闪烁的方式指示用户重启交换机,恢复方法操作成功。
49.此后,用户对交换机重新连接网线,即可正常使用该交换机。
50.实施例2
51.如图3所示,该交换机配置故障的恢复方法,包括以下步骤:
52.p1、交换机上电开机,加载固件并运行,读取保存的配置参数(当前配置参数),并配置交换机asic芯片。
53.p2、先判断当前工作于已配置状态(即运行于非缺省参数状态),事实上当出现该种配置故障时必然已是运行于非缺省参数状态,然后判断当前是否能与云服务器连接成功,若能够连接成功,表明该交换机未出现故障,也无需进行恢复,此时可以终止恢复方法并使交换机运行转入正常运行状态;若当前无法与云服务器连接成功,表明该交换机存在该配置故障,需要进行恢复,进行下一步。
54.p3、检测交换机当前处于linkup状态的端口,其中linkup状态表示端口可连通的状态,一般在交换机的端口上插入网线即可使该端口处于linkup状态,然后判断当前处于linkup状态的端口是否为设定的第一端口和第二端口,比如在实践中通常将第一端口和第二端口设定为交换机的第一个端口和最后一个端口,以便于用户准确识别,若当前处于linkup状态的端口仅有设定的第一端口和第二端口,表示用户操作符合设定要求,则执行步骤p5;若当前处于linkup状态的端口不是上述这种情况,则可能存在其他情况,继续执行步骤p4。
55.p4、判断当前处于linkup状态的端口是否为设定的第一端口和第三端口,比如在实践中通常将第一端口和第三端口设定为交换机的第一个端口和倒数第二个端口,以便于用户准确识别,若当前处于linkup状态的端口仅有设定的第一端口和第三端口,表示用户操作符合另一种设定要求,则执行步骤p9;若当前处于linkup状态的端口不是上述这种情况(也不是前一种情况),表示用户操作可能不符合恢复方法过程的要求,则终止该恢复方法,此时可以用系统指示灯的不同闪烁方式对用户进行提示。
56.p5、交换机固件自动选择一个未使用的vlan id(若没有未使用的vlan id,则使用vlan 4044),配置该第一端口和第二端口加入该vlan,且发送报文带vlan tag,使能端口转发能力。
57.p6、交换机cpu构造一个广播帧,目标mac地址为ff-ff-ff-ff-ff-ff,报文payload为随机内容,并从第一端口发送该广播帧。
58.p7、交换机固件监测第二端口,若在指定时间(如1秒)内收到该广播帧(内容相同的帧),则表示第一端口和第二端口之间连通,执行下一步,若超过指定时间还未收到任何帧或收到的帧内容不同于该广播帧的内容,则表示第一端口和第二端口之间未连通,可能存在用户操作不符合恢复方法过程的要求,终止该恢复方法,此时可以用系统指示灯的不同闪烁方式对用户进行提示。
59.p8、将当前配置参数恢复为可联网的配置参数,将交换机的缺省配置参数复制到
当前配置参数并保存;并通过使交换机系统指示灯快速闪烁的方式指示用户重启交换机,恢复方法操作成功。此后,用户对交换机重新连接网线,即可正常使用该交换机。
60.p9、交换机固件自动选择一个未使用的vlan id(若没有未使用的vlan id,则使用vlan 4044),配置该第一端口和第三端口加入该vlan,且发送报文带vlan tag,使能端口转发能力。
61.p10、交换机cpu构造一个广播帧,目标mac地址为ff-ff-ff-ff-ff-ff,报文payload为随机内容,并从第一端口发送该广播帧。
62.p11、交换机固件监测第三端口,若在指定时间(如1秒)内收到该广播帧(内容相同的帧),则表示第一端口和第三端口之间连通,执行下一步,若超过指定时间还未收到任何帧或收到的帧内容不同于该广播帧的内容,则表示第一端口和第三端口之间未连通,可能存在用户操作不符合恢复方法过程的要求,终止该恢复方法,此时可以用系统指示灯的不同闪烁方式对用户进行提示。
63.p12、将当前配置参数恢复为可联网的配置参数,将交换机保存的上一个可联网配置参数复制到当前配置参数并保存;并通过使交换机系统指示灯快速闪烁的方式指示用户重启交换机,恢复方法操作成功。此后,用户对交换机重新连接网线,即可正常使用该交换机。
64.实施例3
65.本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述交换机配置故障的恢复方法的步骤。
66.上述计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存flash)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
67.计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
68.计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
69.可以以一种或多种程序设计语言或其组合来编写用于执行本技术操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在
用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
70.上述实施例仅为本发明的优选实施例,并非对本发明保护范围的限制,但凡采用本发明的设计原理,以及在此基础上进行非创造性劳动而做出的变化,均应属于本发明的保护范围之内。