SFP/SFP+/SFP28/QSFP+/QSFP28光模块固件升级通用指导文件

SFP/SFP+/SFP28/QSFP+/QSFP28模块固件通用指导文件

  固件的意义?

在使用有源网络设备(交换机、路由器、转换器等)时,用户会遇到在一种品牌设备中工作而在另一种品牌设备中不工作的问题。例如,默认情况下,HP交换机的10km 1310nm SFP 模块无法 Cisco 交换机中工作。而不是命令行上端口状态UP,用户控制端口信息上就会显UnsupportUnknown。日志显示以下情况中一种或几种:%PM_SCP-SP-3-TRANSCEIVER_UNSUPPORTEDUnsupported transceiver in LAN port */*  %PHY-4-CHECK_SUM_FAILEDSFP EEPROM data check sum failed for SFP interface Gi1/0/25  %GBIC_SECURITY_CRYPT-4-VN_DATA_CRC_ERRORGBIC in port Gi1/0/25 has bad crc  %PM-4-ERR_DISABLEgbic-invalid error detected on Gi1/0/25,putting Gi1/0/25 in err-disable state

Cisco的GLC-LH-SMDHPJ4859C 模块硬件规格完全使用问题模块内部软件与交换机预置软件不兼容。

同样的,品牌SFP-GE-LX-SM1310H3C品牌SFP-GE-LX-SM1310-A规格别,如果品牌H3C品牌网络设备上,序列号,诊断信息错误,日常故障工作网络设备中,甚至出现识别,正常工作的错误。

既然不同品牌功能规格别,什么设备制造设置兼容加密信息呢?原因,利益原装CISCO GLC-LH-SMD原装HP J4859C销售价格甚至制造设备制造当然希望用户购买使用自己原装块,设备制造生产块,原装制造市面制造商,BRO-WAY内,使用寿命甚至设备制造原装模块。

要解决兼容性问题,需要更改固件,以兼容特定品牌和型号的网络设备。要更改内部软件(模块固件),您需要:

1、光模块;

2、固件文件;

3、编程机软件;

需要注意的是,通常每个制造商都使用自己编程器来编写自己设计的模块,但市场编程器”。

集齐以上全部之后,就可以编写的固件了,改固件的流程如下:

1、光安装在编程器的端口;

2、固件文件被选中;

3、代码被写入光模块内存;

乍一看,刷机过程很简单,但其中有细微差别,下面我们将尝试详细说明如何刷机模块。

  光模块的内部软件位于何处?

光模块的内部软件-模块固件存储在非易失性存储 - EEPROM 24cXX系列EEPROM模拟出来仿EEPROM空间。

SFP和SFP+模块的内存总量512字节,有条件地分4个区域所示:

sfp-memory-organization.png

A0 0-127 – 基础信息(信息、信息、序列号、波长等);

A0 128-255 - 此区域为制造商保留区域,极少使用;

A2 0-127 - 包含DDM阈值和校准参数值;

A2 128-255 - 为制造商保留区域。通常用于存储兼容性信息。

您需要分别使用每个光模块内存区域。兼容性需要的信息包含在区 A0 0-127 中,其中包含基础信息。对于每 SFP  SFP+ 模块,此区域将有所不同,至少在序列号上是这样。一些制造商的设备参考区 A2 128-255 来确定兼容性。

XFP模块的内存总量768字节,可以有条件地分5个区域,每个区128字节所示:

XFP_memory_map.jpg

Table00h - 为将来可能开发的诊断功 (DDM) 保留;

Table01h - 基础信息(信息、信息、序列号、波长等);

Table02h – 用户保留区域,包含特定兼容信息;

表03h-7Fh - 专门用于描述特定功能的信息;

Table80h-FFh - 保留用于进一步开发外形尺寸功能。

与SFPSFP+模块一样XFPA0 0-127 - 主存区Table01h,里面包含基础信息。一些厂商的网络设备访Table02h区域兼容性信息。

在QSFP+/QSFP28等高速型号中,内部存储设备更加复杂,但保留了通用逻辑:一个区域有通用信息,一个区域有制造商信息,一个区域DDM值。兴趣参照图,中,不再赘述。

QSFP_memory_map.jpg

  什么块固件?

光模块的固件文件是一个二进制文件,扩展名为.bin,一个区域刷写大小128字节,多个区域刷写大小256字节。

定义模块地址空间的国际标准:

MSA SFF-8472 规范定义 SFP  SFP+ 收发器的地址空间;

MSA INF-8077 规范定义 XFP 收发器的地址空间;

MSA INF-8438 规范定义 QSFP 收发器的地址空间;

CFP MSA 管理接口规范定义 CFP 收发器的地址空间。

MSA协议明确定义了每种类型模块的地址空间,这允许网络设备制造商将兼容信息添加到固件中,在检查之后,交换机将对特定设备的兼容性做出判断。

  什么编程器?

模块程序员

如果你想固件,你需要一个特殊的设 - 一个编程模块编程器是一种专门用于处理各种规格的内部存储器的设备,它是具有:

1、一个或多个插槽,用于各种外形尺寸的模块,

2、连接电脑的端口,常USB接口,

3、电源端口。

通常,每个光模制造商都使用自己设计的编程器,但由于模块内部存储器布局的标准化,拥有一个制造商的编程器,您可以编程不同品牌的模块。

重要的是要了解每个编程器都有自己的软件,没有它就无法使用编程器。

软件的功能和能力是不同的。一些制造商提供带有大量设置的便捷程序。这使它们成为一个实用的选择,但需要更多的员工培训。还编程提供的选项较少可以帮助简化用户界面这会避免操作员出错,但会大大限制编程器的功能。

市场上还有通用的第三方设备,可让您用来编程来自不同制造商的模块。这样的解决方案有更多的设置和更广泛的可能性 OEM 制造提供云编程器。此类设备配备了用于常见外形尺寸SFPXFPQSFPCFP)收发器的端口,并且需要互联网连接。它们的主要特点是在安装模块后,操作员选择设备的制造商和型号(系列),之后软件本身生成固件并将其写入收发器的内存。然而,这样的解决方案 - 它们被设计为只能与来自特定制造或者与没有写保护的光模块一起使用。

  块编程流程

所有外形规格的光模块刷写过程看起来都一样:

1、光块安装在编程器的相应端口;

2、编程初始化已安装的块并从中读取内部软件;

3、固件文件被选中;

4、代码被写入光模块内存;

5、检查固件更新是否成功。

一些编程设置自动功能,设置自动功能编程上,为确保刷写成功并排除编程器读取错误移除模块重新固件。读取固件时,必须与之前写入的一致。

最简单的方法是编程 SFP,因为部分SFP没有密码保护,并且可以由任何符合MSA标准编程操作SFP上的密码在极少数情况下设置,例如,它是设计用于长距离(超过100公里)工作的昂贵模块。

更改SFP+或XFPQSFP规格的内部代码与一个问题相关 - 写保护。 MSA 标准保留用于输入密码的字节。密码由十六进制的四个字节组成,11 22 33 4400 00 00 00。

写保护密码用于防止信息意外覆盖部分制造商都使用自己的密码。因此,为了编程模块,您需要知道保护密码。输入正确保护密码后,与上述过程一致。部分制造保护密码外,保存密码正确保存密码后,固件正确存储,否则后,信息恢复编程前状态。

  模块固件?

固件可由以下人员提供:编程器供应商或光模制造商,经销商较少。当然,固件可以在互联网上找到,因为工程师们会在论坛上交换它们并尝试编译固件数据库。有时您可以通过在所需的固件字段中输入必要的信息来自行实现兼容性。

如有任何问题,BRO-WAY。

 

文档编号BD-2023-01

PDF版本下载:SFP/SFP+/SFP28/QSFP+/QSFP28光模块固件升级通用指导文件

创建时间:2023-01-30 10:30
浏览量:0
首页    技术文档    SFP/SFP+/SFP28/QSFP+/QSFP28光模块固件升级通用指导文件