廠商資料欄位:名稱、OUI、PN、SN 與日期代碼
廠商塊是主機在 show interface transceiver 中顯示的內容,也是其兼容性策略比對的對象。規範精確定義了這些欄位、它們的長度和編碼方式,而主機對填充字元、大小寫和多餘位元組毫不寬容。本頁彙總了相關規則、各規範下的位元組範圍,以及會讓一個完全正常的模組被讀成亂碼的常見錯誤。
各欄位
| 欄位 | SFF-8472(SFP,A0h) | SFF-8636(QSFP,00h 頁面) | CMIS(00h 頁面) | INF-8077i(XFP) | 格式 |
|---|---|---|---|---|---|
| 廠商名稱 | 20–35 | 148–163 | 129–144 | 148–163 | 16 個 ASCII 字元 |
| 廠商 OUI | 37–39 | 165–167 | 145–147 | 165–167 | 3 位元組,由 IEEE 分配 |
| 廠商 PN | 40–55 | 168–183 | 148–163 | 168–183 | 16 個 ASCII 字元 |
| 廠商版本 | 56–59 | 184–185 | 164–165 | 184–185 | 4/2/2/2 個 ASCII 字元 |
| 廠商序號 | 68–83 | 196–211 | 166–181 | 196–211 | 16 個 ASCII 字元 |
| 日期代碼 | 84–91 | 212–219 | 182–189 | 212–219 | 8 個 ASCII 字元 |
| CLEI 代碼 | — | 02h 頁面,若位元組 129 位元 4 置位 | 190–199 | — | 10 個 ASCII 字元 |
| 廠商專用 | 96–127(A0h),A2h 用戶 EEPROM 128–247 | 224–255,02h 頁面 | 223–255,自定義頁面 | 224–255 | 自由使用 |
逐位元組映射:記憶體映射。
編碼規則
- 僅限 ASCII,可打印範圍為 20h–7Eh。不允許 NUL(00h)、FFh 或控制字元。
- 左對齊,用空格(20h)填充至欄位的完整長度。10 個字元的部件號後面應跟六個空格,而不是六個零。
- 廠商名稱是製造商(或品牌方)註冊的名稱,是主機用於比對的字元串,通常區分大小寫。
- OUI 是名稱欄位所屬公司的 24 位元 IEEE 組織唯一識別碼,高位元組在前; 00-00-00 表示未指定。主機很少檢查它,但 OUI 與名稱不一致,是識別被重新編碼模組的一個簡單特徵。
- 版本格式自由(常見形式為
A、01、1.0),沒有時填空格。 - 序號應在同一廠商內唯一;許多廠商會在其中嵌入年/週資訊和流水號;部分主機會利用其結構來識別自家模組。
- 日期代碼為
YYMMDD,後跟 2 個字元的廠商批次代碼(沒有時填空格):240315= 2024 年 3 月 15 日。 - CLEI(Common Language Equipment Identifier,通用語言設備識別碼)是一個 10 字元的電信資產代碼,主要出現在銷售給營運商的模組上。
主機比對的對象
| 主機行為 | 比對內容 | 常見於 |
|---|---|---|
| 名稱 + PN 查找 | 將廠商名稱和部件號與兼容性表比對 | 大多數企業級交換機 |
| PN 前綴/系列 | PN 的開頭幾個字元 | 擁有寬泛「受支援系列」列表的平台 |
| 廠商專用簽名 | 廠商區域中的哈希值或魔數,由序號和其他欄位計算得出 | 嚴格的 OEM 鎖定 |
| SN 模式 | 序號的結構 | 部分 OEM,用於保修和防偽 |
| OUI | IEEE 識別碼 | 少見;部分網卡和 NOS |
| 不比對 | 只要校驗和有效就接受 | 開放式交換機,以及大多數允許不受支援 SFP 的網卡 |
哪個平台採取哪種做法,以及如何應對,是 廠商鎖定和 第三方光模組的主題。
常見錯誤
| 錯誤 | 主機上的現象 |
|---|---|
| 用 NUL 而非空格填充 | 名稱被截斷或亂碼,模組被標記為不受支援 |
| 欄位多出一個位元組,溢出到下一欄位 | OUI 或 PN 損壞,校驗和不匹配 |
| 大小寫與參考值不同 | 兼容性表無法匹配 PN |
| 非 ASCII 位元組(UTF-8、西里爾字母) | 顯示問號或被拒絕 |
| 日期代碼的數字位置出現字母 | 顯示錯誤;部分主機會拒絕 |
| 廠商塊被修改,但校驗和未更新 | 模組無效,參見校驗和 |
| 名稱被修改,但廠商專用簽名未更新 | 在嚴格的平台上仍然不受支援 |
| 身份資訊與合規代碼或波長不一致 | 速率和類型不受支援,參見合規代碼 |
廠商專用區域
規範故意不定義廠商區域。製造商會在其中存放校準備份、生產數據、控制器配置,在帶鎖定的模組上還會存放認證數據。盲目覆寫這些區域可能使模組變磚或破壞其鎖定校驗;從參考模組複製這些內容但序號不匹配,通常也還是會導致校驗失敗。除非你了解該廠商的具體佈局,否則應將其視為不透明區域(EEPROM 重新編碼)。
在 CodingBox 中
EEPROM editor 將每個廠商欄位作為文本編輯,按精確長度用空格填充,拒絕非 ASCII 輸入,並在寫入時重新計算校驗和。 code database 保存完整的身份資訊,因此可以一步應用一個已知良好的廠商塊。
各映射中的廠商塊:SFF-8472 A0h 20–91、SFF-8636 上層頁面 148–219、CMIS 00h 頁面 129–199、XFP 表 01h 148–219。
PN 欄位背後各廠商的編號規則(Cisco、Juniper、Arista、Huawei、HPE、Dell、Nvidia、Brocade、MikroTik 等):OEM 部件號。