欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种实现光模块开关光信息同步的方法和装置独创技术24210字

一种实现光模块开关光信息同步的方法和装置

2021-02-01 22:15:22

一种实现光模块开关光信息同步的方法和装置

  技术领域

  本发明涉及通信技术领域,更具体地,特别是指一种实现光模块开关光信息同步的方法和装置。

  背景技术

  随着互联网的不断发展,人们的生活离不开网络,信息化的数据时代,所有的通信都是通过网络进行的。在整个大的网络时代,硬件设备是不可或缺的,如服务器、交换机、路由器等等。光模块用于交换机与设备之间传输的载体,是光纤通信系统中重要的器件。在大型网络中,交换机的每个端口会插入光模块进行通信,光模块接入到端口时,是处于连接的状态,光模块激光器开光一直处于开启状态。当相应的端口down时,激光器仍处于开启状态,仍然进行数据信息发送,这会造成通信问题。

  发明内容

  有鉴于此,本发明实施例的目的在于提供一种实现光模块开关光信息同步的方法及装置,主要通过获取端口的状态进行开关光信息同步,在端口关闭时,不会进行数据通信,可以保证端口通信的稳定性。

  基于上述目的,本发明一方面提供了一种实现光模块开关光信息同步的方法,该方法包括:

  获取端口的第一状态的第一状态信息,并判断第一状态信息是否发生变化;

  响应于判断第一状态信息发生变化,获取第一状态信息变化后的端口的编号以及第一状态信息;

  获取端口的关光使能控制数据;

  解析光模块的第二状态的第二状态信息;

  根据第一状态信息以及解析后的第二状态信息判断开关光信息是否同步;

  响应于判断开关光信息不同步,根据第一状态信息配置关光使能控制数据;

  根据关光使能控制数据控制光模块的第二状态。

  在本发明的实现光模块开关光信息同步的方法的一些实施方式中,获取端口的关光使能控制数据还包括:

  编写特定字节读取函数;

  通过特定字节读取函数获取关光使能控制数据的偏移地址;

  根据偏移地址获取关光使能控制数据。

  在本发明的实现光模块开关光信息同步的方法的一些实施方式中,解析光模块的第二状态的第二状态信息还包括:

  将第二状态信息解析为十六进制数组;

  响应于解析的十六进制数组为0xf,判断光模块的第二状态为第二开光状态;

  响应于解析的十六进制数组为0x0,判断光模块的第二状态为第二关光状态。

  在本发明的实现光模块开关光信息同步的方法的一些实施方式中,方法还包括:

  通过八位字节的二进制数组表示关光使能控制数据,根据二进制数组的后四位字节控制光模块的第二状态。

  在本发明的实现光模块开关光信息同步的方法的一些实施方式中,根据关光使能控制数据控制光模块的第二状态还包括:

  响应于将二进制数组的后四位字节全部置为0,控制光模块的第二状态为第二开光状态;

  响应于将二进制数组的后四位字节全部置为1,控制光模块的第二状态为第二关光状态。

  在本发明的实现光模块开关光信息同步的方法的一些实施方式中,响应于判断开关光信息不同步,根据第一状态信息配置关光使能控制数据还包括:

  配置光模块开光函数,响应于通过第一状态信息判断端口的第一状态为第一开光状态且通过第二状态信息判断光模块的第二状态为第二关光状态,判断为开关光信息不同步,并通过光模块开光函数将关光使能控制数据的后四位字节全部置为0以控制光模块的第二状态为第二开光状态。

  在本发明的实现光模块开关光信息同步的方法的一些实施方式中,响应于判断开关光信息不同步,根据第一状态信息配置关光使能控制数据还包括:

  配置光模块关光函数,响应于通过第一状态信息判断端口的第一状态为第一关光状态且通过第二状态信息判断光模块的第二状态为第二开光状态,判断为开关光信息不同步,并通过光模块关光函数将关光使能控制数据的后四位字节全部置为1以控制光模块的第二状态为第二关光状态。

  在本发明的实现光模块开关光信息同步的方法的一些实施方式中,方法还包括:

  配置端口与光模块的存储器映射关系,通过存储器映射关系获取存储器设备的文件路径。

  在本发明的实现光模块开关光信息同步的方法的一些实施方式中,方法还包括:

  将解析后的第二状态信息存储至数据库中,通过数据库的对应字段显示第二状态信息。

  本发明实施例的另一方面,还提供了一种实现光模块开关光信息同步的装置,该装置包括:

  端口状态信息变化判断模块,端口状态信息变化判断模块配置为获取端口的第一状态的第一状态信息,并判断第一状态信息是否发生变化;

  端口状态信息获取模块,端口状态信息获取模块配置为响应于判断第一状态信息发生变化,获取第一状态信息变化后的端口的编号以及第一状态信息;

  关光使能控制数据获取模块,关光使能控制数据获取模块配置为获取端口的关光使能控制数据;

  光模块状态信息解析模块,光模块状态信息解析模块配置为解析光模块的第二状态的第二状态信息;

  开关光信息判断模块,开关光信息判断模块配置为根据第一状态信息以及解析后的第二状态信息判断开关光信息是否同步;

  关光使能控制数据配置模块,关光使能控制数据配置模块配置为响应于判断开关光信息不同步,根据第一状态信息配置关光使能控制数据;

  关光使能控制数据控制模块,关光使能控制数据控制模块配置为根据关光使能控制数据控制光模块的第二状态。

  本发明至少具有以下有益技术效果:通过获取端口的状态进行开关光信息同步,使得在端口关闭时,不会进行数据通信,保证了端口通信的稳定性。

  附图说明

  为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。

  图1示出了根据本发明的实现光模块开关光信息同步的方法的实施例的示意性框图;

  图2示出了根据本发明的实现光模块开关光信息同步的方法的实施例的流程图;

  图3示出了根据本发明的实现光模块开关光信息同步的方法的实施例的结构图;

  图4示出了根据本发明的实现光模块开关光信息同步的装置的实施例的示意性框图。

  具体实施方式

  为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。

  需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”和“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。

  基于上述目的,本发明实施例的第一个方面,提出了一种实现光模块开关光信息同步的方法的实施例。图1示出的是根据本发明的实现光模块开关光信息同步的方法的实施例的示意性框图。如图1所示的实施例中,该方法至少包括如下步骤:

  S100、获取端口的第一状态的第一状态信息,并判断第一状态信息是否发生变化;

  S200、响应于判断第一状态信息发生变化,获取第一状态信息变化后的端口的编号以及第一状态信息;

  S300、获取端口的关光使能控制数据;

  S400、解析光模块的第二状态的第二状态信息;

  S500、根据第一状态信息以及解析后的第二状态信息判断开关光信息是否同步;

  S600、响应于判断开关光信息不同步,根据第一状态信息配置关光使能控制数据;

  S700、根据关光使能控制数据控制光模块的第二状态。

  在本发明的一些实施例中,图2示出的是根据本发明的实现光模块开关光信息同步的方法的实施例的流程图,如图2所示,交换机的每个端口会插入光模块进行通信,在交换机相应的端口关闭时,光模块处于关光状态,不会进行数据通信,保证了端口通信的稳定性。本发明的一些实施例中,主要通过获取端口的第一状态信息,完成光模块开关光信息的同步。根据步骤S100、首先连接数据库,订阅相应端口的第一状态信息,以获取到端口的第一状态的第一状态信息,并判断第一状态信息是否发生变化。其中,端口对应的端口状态称为第一状态,第一状态包括up状态和down状态,up状态表示端口打开状态,down状态表示端口为第一关光状态。该端口状态对应的信息即第一状态信息,通过第一状态信息表示对应端口的端口状态。根据步骤S200、响应于判断第一状态信息发生变化,获取第一状态信息变化后的端口的编号以及第一状态信息。其中,端口的第一状态发生变化(包括由up状态变为down状态,以及由down状态变化为up状态)即导致该端口对应的第一状态信息发生变化,通过第一状态信息的变化确定该端口第一状态的变化。因此,一旦判断第一状态信息发生变化,则启动信息同步进程,首先,获取该变化的第一状态信息对应的端口的编号以及变化后的第一状态信息,通过编号从若干端口中确定该变化的端口。根据步骤S300、获取端口的关光使能控制数据。其中关光使能控制数据为txdisable控制数据,txdisable控制数据的功能是直接控制光模块信号发送开关,当txdisable控制数据是使能状态时(在一些实施例中,使能状态为txdisable=1),光模块发送关闭使能有效,光模块关闭,光口不对外发送光信号;当txdisable控制数据是非使能状态时(在一些实施例中,非使能状态为txdisable=0),光模块发送关闭使能无效,光模块打开,光口正常对外发送光信号。根据步骤S400、解析光模块的第二状态的第二状态信息。其中,在本发明的一些实施例中,光模块配置为激光器。光模块对应的开关光状态为第二状态,第二状态包括On状态和Off状态,On状态表示光模块的关光状态,Off状态表示端口开光状态。该光模块的第二状态对应的信息即为第二状态信息,通过解析第二状态信息获取对应的光模块的第二状态。根据步骤S500、根据第一状态信息以及解析后的第二状态信息判断开关光信息是否同步。即,判断第一状态信息对应的第一状态对应的端口的第一状态与解析后的第二状态信息对应的光模块的第二状态的开关光信息是否同步。根据步骤S600、响应于判断开关光信息不同步,根据第一状态信息配置关光使能控制数据。配置前,关光使能控制数据对应的是光模块的第二状态对应的关光使能控制数据,如果判断开关光信息不同步,根据该端口对应的第一状态信息配置关光使能控制数据。根据步骤S700、根据关光使能控制数据控制光模块的第二状态。由于根据端口对应的第一状态信息配置关光使能控制数据,因此,通过配置后的关光使能控制数据控制光模块的第二状态即可实现光模块的第二状态信息与端口的第一状态信息同步。

  在一些其他的实施例中,图3示出的是根据本发明的实现光模块开关光信息同步的方法的实施例的结构图,如图3所示,主模块首先会获取数据库中的端口信息表中的端口状态信息,即第一状态信息。然后根据设置开关光模块中的光模块激光器的开关光状态(即第二状态)进行对比,如果端口down/up(down状态表示端口关闭状态,即第一关光状态,up状态表示端口打开状态,即第一开光状态),而光模块激光器仍然开光/关光(与端口的第一状态不同步),则进行状态同步设置。

  根据本发明的实现光模块开关光信息同步的方法的一些实施方式,获取端口的关光使能控制数据还包括:

  编写特定字节读取函数;通过特定字节读取函数获取关光使能控制数据的偏移地址;根据偏移地址获取关光使能控制数据。

  在本发明的一些实施例中,通过_read_eeprom_specific_bytes函数读取QSFP_DOM_CONTROL_TXDISABLE_OFFSET偏移地址的数据,其中,_read_eeprom_specific_bytes函数即编写出的特定字节读取函数,用于读取EEPROM(Electrically ErasableProgrammable Read-Only Memory,带电可擦可编程只读存储器)的特定字节,通过该特定字节读取函数读取QSFP_DOM_CONTROL_TXDISABLE_OFFSET偏移地址的数据,即只读存储器中txdisable控制数据的偏移地址,并根据该偏移地址获取到txdisable控制数据。

  根据本发明的实现光模块开关光信息同步的方法的一些实施方式,解析光模块的第二状态的第二状态信息还包括:

  将第二状态信息解析为十六进制数组;

  响应于解析的十六进制数组为0xf,判断光模块的第二状态为第二开光状态;

  响应于解析的十六进制数组为0x0,判断光模块的第二状态为第二关光状态。

  在本发明的一些实施例中,光模块为激光器,解析激光器的第二状态,解析结果包括十六进制数组0xf和0x0,其中,0xf表示为On(激光器的关光状态),0x0表示为Off(激光器的开光状态)。

  根据本发明的实现光模块开关光信息同步的方法的一些实施方式,方法还包括:

  通过八位字节的二进制数组表示关光使能控制数据,根据二进制数组的后四位字节控制光模块的第二状态。

  在本发明的一些实施例中,关光使能控制数据由八位字节的二进制数组表示,其中八位字节的二进制数组的前四位字节表示与控制光模块不相关的其他信息,通过八位字节的二进制数组的后四位字节表示光模块的第二状态,通过控制该八位字节的二进制数组的后四位字节的数据控制光模块的第二状态。

  根据本发明的实现光模块开关光信息同步的方法的一些实施方式,根据关光使能控制数据控制光模块的第二状态还包括:

  响应于将二进制数组的后四位字节全部置为0,控制光模块的第二状态为第二开光状态;

  响应于将二进制数组的后四位字节全部置为1,控制光模块的第二状态为第二关光状态。

  在本发明的一些实施例中,关光使能控制数据由八位字节的二进制数组表示,将获取到的该八位字节的二进制数组的前四位字节的数据保持不变,并且将该八位字节的二进制数组的后四位字节的数据全部置为0,即后四位字节配置为0000表示控制光模块的第二状态为第二开光状态。将获取到的该八位字节的二进制数组的前四位字节的数据保持不变,并且将该八位字节的二进制数组的后四位字节的数据全部置为1,即后四位字节配置为1111表示控制光模块的第二状态为第二关光状态。

  根据本发明的实现光模块开关光信息同步的方法的一些实施方式,响应于判断开关光信息不同步,根据第一状态信息配置关光使能控制数据还包括:

  配置光模块开光函数,响应于通过第一状态信息判断端口的第一状态为第一开光状态且通过第二状态信息判断光模块的第二状态为第二关光状态,判断为开关光信息不同步,通过光模块开光函数将关光使能控制数据的后四位字节全部置为0以控制光模块的第二状态为第二开光状态。

  在本发明的一些实施例中,编写set_laser_disable_info_off函数,该函数在端口的第一状态是第一开光状态(up)且光模块的第二状态是On(代表光模块是第二关光状态)的特定条件下触发,将获取的关光使能控制数据的高4位保持不变、低4位配置为0000,则可将光模块的第二状态设置为Off状态,使得光模块的第二状态变为第二开光状态。

  根据本发明的实现光模块开关光信息同步的方法的一些实施方式,响应于判断开关光信息不同步,根据第一状态信息配置关光使能控制数据还包括:

  配置光模块关光函数,响应于通过第一状态信息判断端口的第一状态为第一关光状态且通过第二状态信息判断光模块的第二状态为第二开光状态,判断为开关光信息不同步,通过光模块关光函数将关光使能控制数据的后四位字节全部置为1以控制光模块的第二状态为第二关光状态。

  在本发明的一些实施例中,编写set_laser_disable_info_on函数,该函数在端口的第一状态是第一关光状态(down)且光模块的第二状态是Off(代表光模块是第二关光状态)的特定条件下触发,将获取的关光使能控制数据的高4位保持不变、低4位配置为1111,则可将光模块的第二状态设置为On状态,使得光模块的第二状态变为第二关光状态。

  根据本发明的实现光模块开关光信息同步的方法的一些实施方式,方法还包括:

  配置端口与光模块的存储器映射关系,通过存储器映射关系获取存储器设备的文件路径。

  在本发明的一些实施例中,图3示出的是根据本发明的实现光模块开关光信息同步的方法的实施例的结构图,如图3所示,命令行展示模块是通过定义端口与光模块EEPROM映射关系,通过映射关系获取eeprom设备文件路径如/sys/bus/i2c/devices/i2c-32/32-0050/eeprom。在系统启动时,会检测每个端口的第一状态,并同步端口信息到数据库的端口信息表中,包括端口名称、速率、链接状态等。在光模块信息解析时会同步光模块数据到端口光模块信息表中。命令行展示会根据信息获取,最终展示端口状态及命令行状态,可以判定通信机制是否准确。

  根据本发明的实现光模块开关光信息同步的方法的一些实施方式,方法还包括:

  将解析后的第二状态信息存储至数据库中,通过数据库的对应字段显示第二状态信息。

  在本发明的一些实施例中,根据偏移量将光模块的信息解析后存储到数据库中,通过数据库的对应字段显示出来,其中,主要查看端口down时,Tx信息(txdisable控制数据信息)是否为0;端口up时,Tx信息是否不为0。通过命令行查看信息,可以提高运维人员排除故障的效率。

  本发明实施例的另一方面,提出了一种实现光模块开关光信息同步的装置的实施例。图4示出的是根据本发明的实现光模块开关光信息同步的装置的实施例的示意性框图,如图4所示的实施例中,该装置包括:

  根据本发明的实现光模块开关光信息同步的装置的一些实施方式,装置包括:

  端口状态信息变化判断模块,端口状态信息变化判断模块配置为获取端口的第一状态的第一状态信息,并判断第一状态信息是否发生变化;

  端口状态信息获取模块,端口状态信息获取模块配置为响应于判断第一状态信息发生变化,获取第一状态信息变化后的端口的编号以及第一状态信息;

  关光使能控制数据获取模块,关光使能控制数据获取模块配置为获取端口的关光使能控制数据;

  光模块状态信息解析模块,光模块状态信息解析模块配置为解析光模块的第二状态的第二状态信息;

  开关光信息判断模块,开关光信息判断模块配置为根据第一状态信息以及解析后的第二状态信息判断开关光信息是否同步;

  关光使能控制数据配置模块,关光使能控制数据配置模块配置为响应于判断开关光信息不同步,根据第一状态信息配置关光使能控制数据;

  关光使能控制数据控制模块,关光使能控制数据控制模块配置为根据关光使能控制数据控制光模块的第二状态。

  同样地,本领域技术人员应当理解,以上针对根据本发明的实现光模块开关光信息同步的方法阐述的所有实施方式、特征和优势同样地适用于根据本发明的装置。为了本公开的简洁起见,在此不再重复阐述。

  需要特别指出的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,实现光模块开关光信息同步的方法的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,程序的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。

  本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。

  应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。

  上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。

  所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

《一种实现光模块开关光信息同步的方法和装置.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)