光纤收发模块的Memory Map 存放了什么内容
在光纤收发模块里, 产业规范要求须有一存储单元供HOST端读取, 以判断此模块的应用场景与关键的规格指标。此存储单元最简单的实现方式即EEPROM, 后续也出现了以微控制器MCU 或是特殊应用ASIC 来达成等效的功能。而存放于存储单元内的资料配置, 规范以Memory Map 称呼之。那么究竟有哪些资料内容, 交换机可自Memory Map 读取, BRO-WAY为您细说重头。
相关规范
不同型态的光纤收发模块有其对应的产业规范, 因此Memory Map 的内容也就有不同的配置。 常见的有:
· SFP / SFP+ / SFP28 对应SFF-8472 Management Interface for SFP+
· QSFP+ / QSFP28 对应SFF-8636 Management Interface for 4-lane Modules and Cables
· XFP 对应INF-8077 10 Gigabit Small Form Factor Pluggable Module
· QSFP-DD / OSFP 对应CMIS Common Management Interface Specification
有兴趣的读者可以在Resource / MSA 找到规范全文。各种规范虽然有相当的差异, 但关键的信息还是有共通性的。我们将以最常见的SFP / SFP+ / SFP28 光纤模块的SFF-8472 规范来做说明。
SFF-8472 的Memory Map
SFF-8472 最初起源自SFP MSA, 也就是INF-8074。经由称之为2-wire serial bus 的常规电子信号供交换机系统端读取光纤模块内的信息。
资料在存储单元内依位置顺序存放, 行业的术语叫作Data Address(数据地址)。 每一个位址, 都可以存放一个资料。在光纤模块的产业规范内, 一个资料都是1 个Byte, 也就是8 个bits。
类似地, Data Address 也是以1 个Byte 做规定, 这样一来, 总共会有0 (00h) 到255 (FFh) 总共256 个资料可以存放。若有更多的资料需要存放, 这时这个Device 装置已经放不下了, 我们需要另外一个装置来存放。由于有多个装置供读取, 因此读取之初, 就需先指定Device Address(设备位址)。光纤模块才知道, 系统端想要查询的是哪个设备内的资料。常用的Device Address 为A0h, A2h。SFF-8472 的Memory Map 便是区分A0h, A2h 两个区块, 如图:
A2h 的高位Data Address 自128 到255, 做了一个Page 的选页动作, 这是一种扩充Data Address 数量却不用增加新的Device Address 的作法。分页为Page 00h / 01h / 02h, 03h-7Fh 以及80h-FFh。虽然最多可以到256 Pages, 一般也就00h, 01h, 02h, 至多使用到03h。为了要指定分页, A2h:127 这个Data Address 被用来Page Select 选页, 由于这是1 个Byte, 可存放资料限于0 (00h) 到255 (FFh), 这也是为什么规范里, 最多256 Pages 可选。
A0h 主要用以存放基本身份识别资料
识别资料是最基本的内容, 供系统端辨识目前插入的光纤收发模块是什么类型的模块? 符合什么应用? 使用什么样的光纤及连接器? 可以传多远等。
上表说明了SFF-8472 的A0h Device 区块所对应的资料内容。自上而下, 我们可以对哪些资料存放于此有个概观:
· 光纤收发模块的种类, 应用
· 所搭配使用的光纤连接器介面
· 传输光信号的编码, 速度以及光波长
· 各种单多模光纤及Twin-ax 线缆的传输距离长度
· 供应商相关信息, 名称, OUI, 型号及版本码
· 产品序号及出厂日期
· 数位监控模式及所遵守的SFF-8472 版本别
· Check sum 检验和, 供系统判断内码是否完整
· 额外保留了供应商自订使用的区块
A2h 主要用以实现DDM 功能
DDM Digital Diagnostic Monitoring 简言之, 可以说是光纤模块对自身的健康状态进行监控及诊断。在交换机询问时, 回复当时的指标给系统, 供网管人员预判网路的可靠与否。
A2h 内存放了
· 各项监控参数的实时数据
· Warning 警示以及Alarm 告警指标规格, Warning 与Alarm Flag 灯号
· 模块的数位控制信号以及状态信号
· Signal Conditioning 信号品质调节选项
· Check sum 检验和以及前文提过的Page Select 选页功能
· Page 00-01h 存放使用者可写资料, Page 02h 则扩充了对光纤模块的预留控制信号选项
系统端的解读
多数系统端都可以某些方式读取光纤收发模块内的资料。以Cisco 交换机为例, Console 端输入特定指令, 所读回的模块信息其实正是经过Cisco 交换机作业系统所解读过的Memory Map。网管人员可以依此了解不同端口的光纤模块所对应的规格, 供应商及DDM 信息.