Cabling123 is now part of Wave2Wave.io! Learn more

Wave2Wave.io
Back to Resources
Technical Reference

CMIS Transceiver Programming & Breakout Configuration Guide

February 22, 2026
25 min read
Wave2Wave Engineering Team
800G OSFP to 4x200G QSFP112 Active Optical Cable breakout assembly

Download the Complete 53-Page Reference

Full register tables, all 10 configuration examples, APSEL activation procedure, and supplier programming template.

Download PDF

Introduction & Terminology

The Common Management Interface Specification (CMIS) defines how high-speed optical transceivers communicate with switches and NICs. For 400G and 800G deployments, CMIS application descriptors control which configurations a module supports - from straight connections to complex multi-way breakouts. Understanding these settings is essential for ordering the right modules and deploying them correctly across 800G OSFP and QSFP-DD transceivers.

This guide covers all CMIS-based form factors (OSFP, QSFP-DD, QSFP112, QSFP56, QSFP28), both Ethernet and InfiniBand protocols, and cable types including AOC, DAC, and AEC. Source references: SFF-8024 Rev 4.13 (July 2025) and OIF-CMIS-05.2 (April 2022).

Key Terms

TermDefinition
CMISCommon Management Interface Specification - OIF-CMIS-05.2 (April 2022)
Host CodeElectrical interface code for switch-side SerDes
Media CodeOptical/copper interface code for fiber/cable side
Lane CountHost:Media lane mapping (e.g., 0x88 = 8 host lanes : 8 media lanes)
Lane AssignmentHow lanes are grouped for breakout configurations
APSELApplication Select - which application descriptor to activate
BreakoutSplitting a high-speed port into multiple lower-speed ports

Module Types: DR vs FR vs SR

Understanding the optical type is essential for matching modules to deployment requirements. The module type determines reach, fiber count, and available breakout options.

TypeFull NameReachFiber CountBest For
DRDirect Detect500mParallel (8 or 16 fibers)Intra-building, same data hall
DR-2Direct Detect Extended2,000mParallel (8 or 16 fibers)Extended intra-campus backbone
FRFar Reach (WDM)2,000m2 fibers (wavelength mux)Building-to-building, limited fiber
LRLong Reach (WDM)10,000m2 fibers (wavelength mux)Campus-to-campus, metro DCI
SRShort Reach (MMF)100mParallel multimodeShort-reach, existing OM3/OM4

WDM breakout limitation: FR and LR modules use wavelength-division multiplexing - 4 wavelengths on 2 fibers. These wavelengths cannot be split into individual channels, so FR/LR modules generally do not support breakout configurations. Use DR modules for breakout deployments.

Ethernet vs InfiniBand Host Codes

The host electrical interface code tells the switch ASIC which protocol stack to use. Using the wrong host code will cause the module to fail initialization.

Protocol800G400G200G100G
Ethernet0x52 (800GAUI-8-L)0x50 (400GAUI-4-L)0x4E (200GAUI-2-L)0x4C (100GAUI-1-L)
InfiniBand NDR0x32 (IB NDR)0x32 (IB NDR)--
InfiniBand HDR--0x31 (IB HDR)-
InfiniBand EDR---0x30 (IB EDR)

Critical notes:

  • InfiniBand NDR uses the same host code (0x32) for both 800G and 400G. The lane count byte (0x88 vs 0x44) determines the speed.
  • Media codes are shared between Ethernet and InfiniBand. A DR8 module uses media code 0x56 regardless of protocol.
  • An InfiniBand module (host code 0x32) will NOT work in an Ethernet switch.

Common Deployments

PlatformProtocolHost CodeExample Use Case
Arista, Cisco, JuniperEthernet0x52, 0x50, etc.Data center spine, leaf
NVIDIA GB300InfiniBand NDR0x32AI/ML GPU compute
NVIDIA DGX H100InfiniBand HDR0x31HPC compute

Deployment Configuration Checklist

Before ordering or programming any module, gather these answers. Each question maps to a specific register value or physical constraint.

Switch & Port

  • 1.What is the switch make, model, and OS version?
  • 2.What port cage form factor? (OSFP, QSFP-DD, QSFP28)
  • 3.What is the port cage power budget (watts)?
  • 4.What CMIS revision does the switch support? (3.x, 4.x, 5.0, 5.1, 5.2)

Protocol & Speed

  • 5.Ethernet or InfiniBand? If IB, what generation? (EDR, HDR, NDR)
  • 6.What is the target line rate per port? (100G, 200G, 400G, 800G)
  • 7.Is breakout required? If yes, how many ports at what speed?

Fiber & Reach

  • 8.What is the distance between endpoints? (determines DR/FR/SR)
  • 9.Single-mode (SMF) or multimode (MMF) fiber plant?
  • 10.What connector is on the patch panel? (MPO-16, MPO-12, LC)

The full 26-question questionnaire with validation cross-checks and a supplier programming specification template is included in the complete PDF guide.

Need help with transceiver specifications? Wave2Wave custom engineering programs transceivers to your exact vendor spec as part of our factory kitting service.

Transceiver Module Configurations

Select a form factor below to see the most common CMIS configurations. Each row shows the exact host code, media code, lane count, and lane assignment values that must be programmed into the module's Application Descriptors.

OSFP (Octal SFP) is the primary form factor for 800G deployments. Module identifier: 0x19. Supports up to 20W power and 8-lane breakout configurations.

800G DR8 - Ethernet

ConfigurationSpeedHost CodeMedia CodeLane CountLane AssignUse Case
1x800G (straight)800G0x520x56 (DR8)0x880x01Spine-to-spine
2x400G (split)400Gx20x500x1C (DR4)0x440x11Spine-to-leaf
4x200G (breakout)200Gx40x4E0x17 (DR4)0x220x55ToR to server
8x100G (breakout)100Gx80x4C0x14 (DR)0x110xFFLegacy connectivity

800G DR8 - InfiniBand NDR

InfiniBand NDR uses host code 0x32 for both 800G and 400G. The lane count byte determines the speed.

ConfigurationSpeedHost CodeMedia CodeLane CountLane AssignUse Case
1x800G (straight)800G0x320x56 (DR8)0x880x01GB300 compute port
2x400G (split)400Gx20x320x1C (DR4)0x440x11Dual-port compute

Other OSFP 800G Variants

ConfigurationSpeedHost CodeMedia CodeLane CountLane AssignUse Case
1x800G FR4800G0x520x7A (FR4)0x480x01Building-to-building
1x800G SR8800G0x520x12 (SR8)0x880x01Short-reach MMF
1x800G DR8-2800G0x520x57 (DR8-2)0x880x01Campus backbone, 2km
1x800G LR4800G0x820x7B (LR4)0x480x01Metro DCI, 10km

Cable Types: AOC vs DAC vs AEC

In addition to transceiver modules with separate fiber patch cords, data centers use integrated cable assemblies. Each type has distinct CMIS media codes and physical characteristics. Browse our full selection of CMIS 5.0-compliant 800G and 400G active cables.

TypeMediumMedia CodeMax ReachPowerBest Use
AOC (Active Optical)Fiber0x02100m1-3W/endCross-row, inter-rack
DAC (Direct Attach Copper)Copper0x042-5m0W (passive)Same-rack, lowest latency
AEC (Active Electrical)Copper0x037m0.5-2W/endAdjacent racks, copper extended
ACC (Active Copper)Copper0x037m0.5-2W/endSynonymous with AEC in many contexts

Latency comparison: DAC (passive copper) offers the lowest latency. AEC/ACC adds a small amount due to re-timers. AOC adds the most due to optical conversion. For AI/ML workloads where nanoseconds matter, DAC is preferred when reach allows.

Physical Breakout Reference

A breakout splits one high-speed port into multiple lower-speed connections. These diagrams show which combinations work physically. For breakout deployments requiring MPO-16 fiber infrastructure, ensure your patch panel connectors match.

800G OSFP Breakout Patterns

800G OSFP Breakout Options
===========================

1x800G (straight)
  [800G OSFP]========== 800G ==========[800G OSFP]
              MPO-16

2x400G (split) - Lane Assignment: 0x11
  [800G OSFP]=== 400G ===[400G QSFP-DD] (Leaf A)
  [Lanes 0-3]=== 400G ===[400G QSFP-DD] (Leaf B)
  [Lanes 4-7]

4x200G (breakout) - Lane Assignment: 0x55
  [800G OSFP]== 200G ==[200G QSFP56] (Server A)
  [Lanes 0-1]== 200G ==[200G QSFP56] (Server B)
  [Lanes 2-3]== 200G ==[200G QSFP56] (Server C)
  [Lanes 4-5]== 200G ==[200G QSFP56] (Server D)
  [Lanes 6-7]

8x100G (breakout) - Lane Assignment: 0xFF
  [800G OSFP]- 100G -[100G QSFP28] x8 (Devices 1-8)
  [8 Lanes  ]  (1 lane each)
400G QSFP-DD Breakout Options
===============================

1x400G (straight)
  [400G QSFP-DD]======= 400G ========[400G QSFP-DD]
                MPO-12

2x200G (split) - Lane Assignment: 0x11
  [400G QSFP-DD]== 200G ==[200G QSFP56] (NIC Port A)
  [Lanes 0-1   ]== 200G ==[200G QSFP56] (NIC Port B)
  [Lanes 2-3   ]

4x100G (breakout) - Lane Assignment: 0x55
  [400G QSFP-DD]- 100G -[100G QSFP28] x4 (Servers 1-4)
  [4 Lanes     ]  (1 lane each)

Connector Types

Speed / PMDParallel ConnectorWDM ConnectorFiber Count
800G DR8MPO-16-16 (8 Tx + 8 Rx)
800G 2xDR42xMPO-12-8+8 (one MPO-12 per engine)
800G FR4 / LR4-LC Duplex2 (4 WDM wavelengths)
400G DR4MPO-12-8 (4 Tx + 4 Rx)
400G FR4 / LR4-6-LC Duplex2
100G DR / FR1 / LR1-LC Duplex2

Configuration Examples

Each example shows the exact CMIS register values for a real-world deployment scenario. Expand an example to see the register addresses, hex values, and verification notes.

5 additional examples with register-level values are included in the full PDF guide.

Need to program these configurations yourself? The CB-1 Transceiver Programming Module provides a GUI for viewing and editing complete CMIS memory maps across OSFP, QSFP-DD, and all supported form factors.

CLI Verification Commands

After deploying a CMIS-programmed module, verify the configuration from the switch CLI. These commands confirm that the module's application descriptors are accepted and all lanes are active.

TaskCisco NX-OSArista EOSNVIDIA MLNX-OS
APSEL / App Descriptorsshow hw internal linkctrl xcvr fcot-info front-port <PORT> rawshow interfaces Eth<PORT> transceiver propertiesmlxlink -d <DEV> -p <PORT> --cable
Lane State / Datapathshow hw internal linkctrl xcvr lane-state-info front-port <PORT>show interfaces Eth<PORT> hardware detailmlxlink -d <DEV> -p <PORT>
Transceiver Detailsshow interface Eth1/<PORT> transceiver detailsshow interfaces Eth<PORT> transceiver detailshow interfaces ethernet 1/<PORT> transceiver details
Interface Statusshow interface Eth1/<PORT> briefshow interfaces Eth<PORT> statusshow interfaces ethernet 1/<PORT>
Optical Power (DOM)show interface Eth1/<PORT> transceiver detailsshow interfaces Eth<PORT> transceiver dommlxlink -d <DEV> -p <PORT> --show_fec

PASS / FAIL Criteria

ConditionVerdictAction
All lanes CONFIG_ACCEPTED + ACTIVATEDPASSProceed with installation
All lanes CONFIG_ACCEPTED + INITIALIZEDPASS (warming up)Wait 30 seconds, re-check
Some lanes ACCEPTED, some REJECTEDFAILStop. Contact W2W Engineering with lane-state output.
Module state = MODULE_LOW_POWERWAITModule is initializing. Wait 60 seconds.

Get the Complete Reference Guide

The full 53-page PDF includes content not covered on this page:

  • -Complete Ethernet & InfiniBand Application Tables (all hex codes)
  • -Full CMIS Register Reference (Page 0x00, 0x01 register maps)
  • -All 10 configuration examples with register-level values
  • -APSEL Activation Procedure for CMIS 5.x
  • -Supplier Programming Specification Template
Download Full Guide (PDF)

Related Articles

Everything you need to know about designing, implementing, and maintaining structured cabling systems in modern data centers.
Compare Cat6A and Cat8 specifications, performance, and use cases for modern data center copper infrastructure.

Need Help with Transceiver Configuration?

Our optical engineering team can help with CMIS programming, multi-vendor compatibility, and custom transceiver specifications for your deployment.

Talk to Our Engineers