CodingBox ドキュメント

各 NOS によるモジュール検証の仕組み

「モジュール検出」から「ポートアップ」までの間に、どのネットワーク OS もモジュールの識別情報に対する検証を実行します。何を比較するか、比較が失敗したときに何をするか、管理者がそれをオーバーライドできるかは、ベンダー、プラットフォーム、リリースによって異なります——そしてこの違いこそが、トランシーバー互換性というテーマそのものです。このページでは、ベンダーの文書と現場での観測に基づき、各社の挙動を並べて示します。これにより、ベンチで読み取ったモジュールを、対象のボックスに照らして判断できるようになります。

検証対象になりうる項目

検証項目関係するバイト実施するプラットフォーム
チェックサム CC_BASE/CC_EXTSFP 63/95、QSFP 191/223、CMIS 222/255ほぼすべてのプラットフォーム——失敗するとinvalid EEPROMチェックサム
識別子/コネクター/エンコーディングの整合性SFP 0、2、11。QSFP 0、130、139大半のプラットフォーム。不明なタイプはそのまま表示される
コンプライアンスコードとポートの整合性SFP 3–10、36。QSFP 131–138、192。CMIS の application大半のプラットフォーム——speed and type not supportedコンプライアンスコード
ベンダー名 + 部品番号をリストと照合SFP 20–35、40–55。QSFP 148–163、168–183厳格および準厳格なプラットフォーム(部品番号
ベンダー固有の署名ベンダー領域(SFP 96–127、QSFP 224–255、CMIS カスタム領域)一部の OEM。シリアル番号に紐づくハッシュ
シリアル番号形式/日付コードSFP 68–91。QSFP 196–219まれ。サポートエンジニアが手動で確認する
電力クラスとポートの整合性SFP 64。QSFP 129/107。CMIS 200–201電力管理を実装しているすべてのプラットフォーム(電力と熱

ベンダーごとの挙動

以下は最近のリリース時点で公開されているコマンドと挙動です。詳細はプラットフォームとバージョンによって異なります。

ベンダー/NOS検証内容失敗時オーバーライドサードパーティ製の DDM
Cisco IOS/IOS-XE(Catalyst、ISR)ベンダー/PN リストとベンダー固有の検証。チェックサム%PHY-4-UNSUPPORTED_TRANSCEIVER、ポートがerrdisablegbic-invalid)、レーザーオフservice unsupported-transceiver(隠しコマンド)+ no errdisable detect cause gbic-invalid。全プラットフォーム対応ではない。TAC のサポート対象外受け入れられれば表示される。一部フィールドは空白
Cisco NX-OS(Nexus)上記と同様。多くの DC プラットフォームではより緩やかログを出しつつupになることが多い。厳格な SKU では errdisableservice unsupported-transceiver通常は表示される
Cisco IOS-XRプラットフォームごとの光モジュールリスト、電力クラスunsupported 状態。ポートがダウンのままのことがある限定的。プラットフォーム依存部分的
Arista EOSチェックサム、タイプの整合性unsupported をログに記録。リンクはアップする不要完全
Juniper Junos「supported」ラベル用のベンダー/PN リスト、チェックサムリンクは通常アップする。show chassis picunsupportedと表示する。一部の EX/QFX プラットフォームは未知の PN に対して DDM や速度を出さない公式なものはなし既知の PN では完全、未知の PN では部分的
Huawei VRPベンダー/PN。Huawei 製でない場合 → アラームphony トランシーバーアラームを繰り返しながらリンクアップ。一部プラットフォームは制限ありtransceiver phony-alarm-disable(システムビュー)完全
H3C ComwareVRP と同様アラームtransceiver phony-alarm-disable完全
HPE Aruba AOS-S/AOS-CXベンダー/PN リストunsupported、ポートダウンallow-unsupported-transceiver完全
Dell OS10/OS9/PowerConnectチェックサム。旧機種の一部はリスト照合ありログ記録。旧機種では errdisableservice unsupported-transceiver(旧機種)完全
Extreme EXOS/VOSSチェックサム、タイプログ記録、アップ完全
Ruckus/Brocade ICX(FastIron)チェックサム。一部機種では Brocade PN に対してのみ光学監視アップ。DDM が欠落することがある部分的
Brocade FOS(SAN)大半の Gen 5/6/7 プラットフォームで Brocade ブランドの PN とシリアルが必須ポートがMod_Inv、有効化されないなしBrocade 製光モジュールのみ
Nvidia/Mellanox(Onyx、Cumulus、IB)Ethernet:チェックサム、タイプ。InfiniBand:ファブリックマネージャーがケーブル情報を検証Ethernet はログを出しつつアップ。IB は速度低下または警告フラグのことがある完全
SONiC/ホワイトボックスプラットフォームプラグイン:チェックサム、CMIS の解析アップ。未知のフィールドは生の値で表示完全(プラグイン依存)
MikroTik RouterOS/SwOS解析以上の検証なしアップ完全
Ubiquiti解析以上の検証なしアップ完全
サーバー NIC(Intel、Broadcom、Mellanox)一部の Intel ファミリーはドライバーのホワイトリストドライバーがポートの起動を拒否するallow_unsupported_sfp=1 モジュールパラメーター(Intel ixgbe/i40e)ethtool -m 経由

ベンダーのオーバーライドが存在する場合、それは概して現状のまま提供されるものです——モジュールは動作しますが、ベンダーはその組み合わせのサポートを約束しません。フリートに関する判断はネットワークの管理者に委ねられます(サードパーティの光モジュール)。

「ベンダー X 向けにコーディングされた」が満たすべき条件

プラットフォームクラス受け入れの最低条件推奨される追加対応
許容的(Arista、SONiC、MikroTik、Extreme…)有効なチェックサム、整合性のあるタイプコード実際のベンダー名と PN——OEM コーディングをしても得るものはない
リスト照合型(Juniper、Aruba、Huawei/H3C、多くの SKU の NX-OS)プラットフォームのリストと完全に一致するベンダー名と PN、ポートに正しいコンプライアンスコード一致する PN サフィックス/グレード。現実的なシリアルと日付コード
署名照合型(Cisco IOS/IOS-XE、一部の XR)上記すべてに加え、そのシリアル用に算出されたベンダー固有領域PN と整合する識別情報フィールド(波長、伝送距離、技術方式)
ブランド限定型(Brocade FOS)Brocade のベンダー文字列と PN ファミリー、シリアル形式

ベンチ側の作業の詳細:ベンダーロックとコーディングEEPROM のリコーディング

拒否メッセージを読む

ログ/ステータス文字列意味次の手順
unsupported transceiverMod_Invphony識別情報がリストにないオーバーライドするか、リスト掲載の PN にコーディングする
invalid EEPROMchecksum errorCC_BASE/CC_EXT が誤っている再計算する(チェックサム
speed and type not supportedunknown media typeコンプライアンスコードがポートに適合しないコードを修正するか、別のポートモードを使う(速度とレート
power class exceeds、LowPwr で停止電力クラスとケージの不整合電力と熱
Module not ready、DP state の停滞CMIS の立ち上げCMIS の問題

これらの状態を確認する NOS ごとのコマンド:スイッチでの光モジュールの検証

ソフトウェアアップグレードによる変化

ベンダーはリリース間で検証を厳しくしたり緩めたりします——新しい署名検証、新しいサポート対象光モジュールリスト、隠しコマンドの削除、DDM 処理の変更。昨日まで動いていたサードパーティ製やコーディング済みの光モジュールのフリートが、アップグレード後に errdisable になることがあります(互換性マトリクスとファームウェア)。

CodingBox では

CodingBox は、上記の各検証が読み取る正確なバイト——ベンダー名、PN、チェックサム、コンプライアンスコード、電力クラス——を表示し、code database には特定のプラットフォームクラスが受け入れる識別情報が保存されます。コーディング後は試験用ポートで確認してください——最終判断を下すのはベンチではなくスイッチです(Check transceiver)。

サーバー側に対応する内容——NIC ベンダーごとのドライバーホワイトリスト、Intel のオーバーライド、Windows と ESXi の挙動:NIC でのトランシーバー互換性


この記事に不正確な点や誤りを見つけた場合は、該当する箇所を選択して Ctrl+Enter を押すと、できます。