Compliance-Codes: Bytes 3–10, 36 und erweiterte Tabellen · Spezifikationen und Standards · Optische Transceiver und Kabel · Dokumentation · CodingBox
CodingBox Dokumentation

Compliance-Codes: Bytes 3–10, 36 und erweiterte Tabellen

Ein Host erkennt nicht am Herstellernamen, was ein Modul ist — er erkennt es an den Compliance-Codes: Bitfeldern, die sagen „Ich bin 10GBASE-LR“ oder „Ich bin ein 1000BASE-T-Kupfer-SFP", plus einem einzelnen erweiterten Code für alles, was erfunden wurde, nachdem die Bitfelder ausgingen. Hosts nutzen sie, um den Modultyp zu benennen, zu entscheiden, welche Geschwindigkeiten sie anbieten, FEC und Breakout zu wählen, und — auf strikten Plattformen — ein Modul abzulehnen, dessen Codes nicht zum Port passen. Sie korrekt zu setzen ist der wichtigste Teil beim Kodieren eines Moduls.

Zwei Generationen der Kodierung

MechanismusWoFunktionsweise
Klassische BitfelderSFF-8472 Byte 3–10; SFF-8636 Byte 131–138 und 164ein Bit pro Standard; mehrere können gesetzt sein (Dual-Rate, Multi-Protokoll)
Extended Specification ComplianceSFF-8472 Byte 36; SFF-8636 Byte 192ein Wert aus SFF-8024 Tabelle 4-4: 25G, 100G, 200G, 400G, MSA-PMDs
AnwendungenCMIS-DeskriptorenHost-Schnittstellen-ID + Medien-Schnittstellen-ID + Lane-Anzahlen, mehrere pro Modul — siehe CMIS

Ein 25G- oder 100G-Modul lässt die meisten klassischen Bits leer und legt seine Identität in Byte 36 oder 192 ab; ein 10G/1G-Modul macht es umgekehrt. Dual-Rate-Module für 10G/25G nutzen beides.

SFF-8472 Byte 3–10 (SFP-Familie)

ByteBit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
3 — 10G Ethernet / InfiniBand10GBASE-ER10GBASE-LRM10GBASE-LR10GBASE-SRIB 1X SXIB 1X LXIB 1X Kupfer aktivIB 1X Kupfer passiv
4 — ESCON / SONETESCON MMF 1310 LEDESCON SMF 1310 LaserOC-192 Short ReachSONET-Reichweite Bit 1SONET-Reichweite Bit 2OC-48 langOC-48 mittelOC-48 kurz
5 — SONETreserviertOC-12 SM langOC-12 SM mittelOC-12 kurzreserviertOC-3 SM langOC-3 SM mittelOC-3 kurz
6 — EthernetBASE-PXBASE-BX10100BASE-FX100BASE-LX/LX101000BASE-T1000BASE-CX1000BASE-LX1000BASE-SX
7 — FC-Linklänge / -Technologiesehr lang (V)kurz (S)Zwischenreichweite (I)lang (L)mittel (M)reserviertKurzwellenlaser, linearer Rx (SA)Langwellenlaser (LC)
8 — FC-Technologie / -Kabelelektrisch, Inter-Enclosure (EL)Kurzwellenlaser ohne OFC (SN)Kurzwellenlaser mit OFC (SL)Langwellenlaser (LL)aktives Kabelpassives Kabelreserviertreserviert
9 — FC-MediumTwinax (TW)Twisted Pair (TP)Miniatur-Koax (MI)Video-Koax (TV)Multimode 62,5 µm (M6)Multimode 50 µm (M5/M5E)reserviertSinglemode (SM)
10 — FC-Geschwindigkeit1200 MB/s800 MB/s1600 MB/s400 MB/s3200 MB/s200 MB/ssiehe Byte 62100 MB/s

Byte 62 (Fibre Channel Speed 2) setzt die Geschwindigkeitsliste für 64GFC und höher fort. Byte 36 enthält den erweiterten Code. Byte 12 gibt die Nominalrate in ×100 Mb/s an (FFh → Byte 66 in ×250 Mb/s), Byte 11 die Kodierung, Byte 13 den Ratenkennwert für Ratenauswahl.

Typische SFP-Kodierungen

ModulByte 3Byte 6Byte 8Byte 36Byte 12Byte 11Wellenlänge
1000BASE-SX00h01h00h00h0Dh (1,3 Gb/s)01h 8B/10B850 nm
1000BASE-LX00h02h00h00h0Dh01h1310 nm
1000BASE-T Kupfer00h08h00h00h0Dh01h0 (entfällt)
10GBASE-SR10h00h00h00h67h (10,3 Gb/s)06h 64B/66B850 nm
10GBASE-LR20h00h00h00h67h06h1310 nm
10G passives DAC00h00h04h00h67h06h0, Byte 60 = Kabel-Compliance
25GBASE-SR00h00h00h02hFFh (Byte 66 = 67h → 25,75 Gb/s)06h850 nm
25GBASE-LR00h00h00h03hFFh / 67h06h1310 nm
25G passives DAC CA-25G-N00h00h04h0DhFFh / 67h06h0
10G/25G Dual-Rate-SR10h00h00h02hFFh / 67h06h850 nm

Die Längenbytes 14–19 müssen übereinstimmen: Ein SR-Modul gibt die OM3/OM4-Reichweite an, ein LR-Modul Kilometer, ein DAC Meter in Byte 18.

SFF-8636 Byte 131–138, 164 (QSFP-Familie)

ByteInhalt
131 — 10/40G EthernetBit 7 erweitert (Byte 192 verwenden), 6 10GBASE-LRM, 5 10GBASE-LR, 4 10GBASE-SR, 3 40GBASE-CR4, 2 40GBASE-SR4, 1 40GBASE-LR4, 0 40G aktives Kabel (XLPPI)
132 — SONETOC-48 lange/mittlere/kurze Reichweite, 40G OTN
133 — SAS/SATASAS 6 / 12 / 24 Gb/s
134 — Gigabit EthernetBit 3 1000BASE-T, 2 1000BASE-CX, 1 1000BASE-LX, 0 1000BASE-SX
135 — FC-Linklänge und -Technologiegleiche Bitbedeutungen wie SFP-Byte 7
136 — FC-SendertechnologieBits EL, SN, SL, LL wie SFP-Byte 8
137 — FC-MediumTW, TP, MI, TV, M6, M5, OM3, SM
138 — FC-Geschwindigkeit100 … 3200 MB/s, Extended-Flag
164 — Erweitertes ModulInfiniBand-Raten: SDR, DDR, QDR, FDR, EDR
192 — Extended ComplianceWert aus Tabelle 4-4

Typisch: 40GBASE-SR4 → Byte 131 = 04h, Byte 192 = 00h; 100GBASE-SR4 → Byte 131 = 80h (erweitert), Byte 192 = 02h; 100G CWDM4 → 80h/06h; 100GBASE-CR4 DAC → 80h/0Bh mit Steckverbinder 23h.

CMIS — Anwendungen statt Bits

Ein CMIS-Modul listet bis zu 15 Anwendungen auf, jede paart eine elektrische Host-Schnittstelle mit einer Medienschnittstelle (beides SFF-8024-Codes) und gibt Lane-Anzahlen an. Ein 400G-DR4-Modul könnte 400GAUI-8 ↔ 400GBASE-DR4 (8:4) und 100GAUI-2 ↔ 100GBASE-DR (2:1, für 4×100G-Breakout) ankündigen. Der Host wählt eine pro Datenpfad; was nicht angekündigt ist, kann nicht konfiguriert werden. Details und der Auswahlablauf: CMIS.

Wie Hosts die Codes verwenden

  • Benennung — die Typbezeichnung in der CLI (10GBASE-LR, QSFP-100G-SR4) wird aus diesen Bytes abgeleitet, oft das erste gesetzte Bit in einer festen Reihenfolge.
  • Geschwindigkeitsangebot — ein Host listet nur Raten, deren Code vorhanden ist; einem 25G-Modul mit Byte 36 = 02h, aber ohne Byte-3-Bit, wird kein 10G angeboten (Geschwindigkeit und Rate).
  • FEC-Auswahl — erweiterte Codes tragen die FEC-Annahme (CA-25G-L/S/N; CAUI-4 mit oder ohne RS-FEC), und manche Hosts setzen FEC danach (FEC und Link-Training).
  • Kupfer vs. optisch — Byte 8 Bit 2–3, Steckverbinder 23h und die Kupfertechnologien in Byte 147 schalten den Host auf DAC-Behandlung (Autonegotiation, Link-Training) um.
  • Policy — strikte Plattformen vergleichen die Codes mit dem Modus des Ports und mit ihrer Kompatibilitätsdatenbank; eine Abweichung ergibt unsupported oder speed and type not supported, selbst wenn der Herstellerblock akzeptiert wird (Herstellersperre).

Kodierregeln

  1. Setzen Sie nur Bits, die die Hardware tatsächlich erfüllt; wird 10GBASE-LR auf einem SR-Modul deklariert, wird aus „kein Link“ ein „Link mit Fehlern“.
  2. Halten Sie die gesamte Identität konsistent: Compliance ↔ Wellenlänge ↔ Längen ↔ Kodierung ↔ Nominalrate ↔ Steckverbinder ↔ Sendertechnologie.
  3. Füllen Sie für 25G+ Byte 36/192 und setzen Sie Byte 12/140 auf FFh mit der ×250-Mb/s-Rate in Byte 66/222.
  4. Kodieren Sie bei DAC die Kabeltechnologie-Bits, die Länge in Metern, den Steckverbinder 23h und die Dämpfungs-/Compliance-Bytes anstelle einer Wellenlänge.
  5. Berechnen Sie danach die Prüfsummen neu (Prüfsummen).

In CodingBox

Der Bildschirm Check transceiver dekodiert jedes der obigen Bits in Klartextnamen und listet CMIS-Anwendungen auf; der EEPROM-Editor bearbeitet die Code-Bytes feldweise, zeigt die resultierende Typbezeichnung und korrigiert CC_BASE und CC_EXT beim Schreiben.

Die vollständigen Bit-Tabellen in ihrem Byte-Kontext: SFF-8472-A0h-Karte (Byte 3–10, 36, 62), SFF-8636-Karte der oberen Seite (131–138, 164, 192), XFP-Karte (131–138).


Wenn Sie in diesem Artikel eine Ungenauigkeit oder einen Fehler finden, markieren Sie die betreffende Stelle und drücken Sie Ctrl+Enter, um .