CodingBox ドキュメント

速度、レート、モードの問題

「25G ではリンクするが 10G ではしない」「100G ポートがブレークアウトしない」「銅線 SFP がこのスイッチでは死んでいるのに、あちらのスイッチでは正常」。これらは光学的な故障ではありません — 光そのものは正常です — ホストとモジュールの間でのレート、コーディング、モードの食い違いです。 25G の登場以降、チケットの大きな割合をこれが占めています。

マルチレートモジュール

モジュールは、対応するレートを識別ブロックに記載します(公称レート byte 12、コンプライアンスコード、拡張コンプライアンス byte 36/SFF-8024 Table 4-4)。ホストはこれを読み取り、申告されていないレートを拒否します。よくあるケース:

状況失敗する理由対処法
10G SFP+ を1Gで使用モジュールがデュアルレート非対応、またはホストポートが SFP+ ケージでの 1G に非対応デュアルレートモジュール(両方を申告)を使う、ホストの対応状況を確認する
25G SFP28 を10Gで使用CDR が 25G にしかロックしない、またはホストが 10G のコンプライアンスコードを要求する10G/25G デュアルレート CDR を持つモジュールを使う、または CDR バイパスを有効化する。10G のコンプライアンスバイトをコーディングする
10G 専用ポートに 1G SFPSFP+ ケージを 10G 専用で動作させるホストがある1G に対応したポートまたはプラットフォームを選ぶ
100G QSFP28 を40Gで使用対応例はほとんどない。レーンレートと FEC が異なる40G モジュールを使う

CDR が重要な理由:CDR — クロックとデータの再生

ブレークアウト

4レーンのポートは、4本の独立したリンクになり得ます。ただしホストとモジュールの両方がそれを許可している場合に限ります

  • パラレル光学系(SR4、PSM4、DR4)と DAC/AOC のブレークアウトケーブルはブレークアウトできます。各レーンが独立した光ファイバーペアです。
  • WDM 光学系(LR4、CWDM4、FR4)はできません — 4つの波長が1組の光ファイバーペア上を伝わり、1つの受信器で終端される必要があるためです。
  • ホストポートは、スイッチ側でブレークアウト(例:4×25G)に設定されている必要があります。対向側は、一致する FEC でシングルレーンのレートを動作させる必要があります。
  • CMIS モジュールは、対応するアプリケーション(page 01h)を申告します。そこに記載のないブレークアウトモードは利用できません(CMIS)。

FEC とオートネゴシエーション

25G 以上では、レベルは良好なのにトレーニングが一切完了しないリンクは、ほぼ必ずFEC の不一致です。片方が RS-FEC 有効、もう片方が無効というケースです。 DAC では、オートネゴシエーション(Clause 73)とリンクトレーニングを両端で有効にするか、両端で無効にしたうえで静的設定を一致させる必要があります。詳細はFEC、オートネゴシエーションとリンクトレーニングを参照してください。

銅線 SFP のモード

1000BASE-T SFP の内部には PHY が搭載されています。ホストとはSGMII(銅線側のオートネゴシエーションを伴う)、または単純な1000BASE-Xのいずれかで通信します。一方のモードでコーディングされたモジュールを、もう一方に設定されたポートに挿すと、断続的にしかリンクしないか、まったくリンクしません。典型的には「ベンダー A のスイッチでは動くが、ベンダー B では死んでいる」という形で現れます。ポートごとにモードを設定できるホストもありますが、そうでなければプラットフォームに合ったモジュールを選んでください(銅配線イーサネットと DAC)。

レート選択

マルチレート対応の SFP 系モジュールは、RS0/RS1 ピン、またはソフトウェアによるレート選択ビットを通じて受信器の帯域幅を切り替えます。モジュールは byte 13 でその方式を申告します。 RS を必要とするモジュールに対してホストが一度も RS を駆動しないと、受信器が誤ったレートグループのままになることがあります(レートとアプリケーションの選択)。

「Speed and type: not supported」

識別情報を検証するホストは、モジュールのベンダー文字列は受け入れても、レート/タイプの組み合わせは拒否することがあります。コンプライアンスコードにポートのモードが含まれていない、または 25G/100G 用の拡張コンプライアンスコードが欠けている場合です。正しいコンプライアンスバイトを(実際にハードウェアが対応するものだけ)コーディングすれば解決します(EEPROM のリコーディング)。

診断の手順

  1. 光レベルが正常であることを確認する(リンクが確立しない場合のチェックリストのステップ3–6)。
  2. ベンチでモジュールのレートコードを読み取る:byte 12、コンプライアンスコード、拡張コンプライアンス、レート識別子(メモリーマップ)。
  3. 両端のホストポート設定を比較する:速度、FEC、AN、ブレークアウト。
  4. CDR/LOL のフラグを確認する:低いレートで LOL になるレーンは CDR が原因である可能性が高い。
  5. ハードウェアがそのレートに対応しているのに識別情報がそれを示していない場合は、コーディングする。

CodingBox での作業

Check transceiver 画面は、公称レート、コンプライアンスコード、拡張コンプライアンスコードをデコードし、CMIS モジュールでは申告済みのアプリケーションを一覧表示します。 EEPROM editor では、チェックサムを再計算しながらレートとコンプライアンスのバイトを編集できます。正直な値を保ってください。光学系が実際には対応できないレートを申告すると、故障の形が「リンクしない」から「エラー付きでリンクする」に変わるだけです。

レートおよびタイプバイトのビットごとの意味と、モジュール種別ごとの典型的なコーディング:コンプライアンスコード

各 NOS における速度、FEC、オートネゴシエーション、ブレークアウトのコマンド:ポート設定のレシピ。ポートグループが特定の速度を拒否する理由:スイッチの内部

1G でしか動かない銅線 SFP、まったくリンクしない 100BASE-FX、2.5G スティック、10G でしか動かない 10GBASE-T SFP+ — その背後にある SGMII/1000BASE-X/USXGMII のモード問題:SGMII とシリアルギガビット


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