VDM e métricas de FEC: enlaces PAM4
A 50G por lane e acima, a potência óptica deixa de ser um indicador de saúde suficiente: um enlace PAM4 com potência de Rx perfeita pode estar a um conector sujo de distância de erros não corrigíveis, e o primeiro sinal não é um dBm, mas uma taxa de erro de bit. Duas fontes fornecem esse número. Dentro do módulo, o VDM (Versatile Diagnostics Monitoring) do CMIS reporta o BER pré-FEC, o SNR e a saúde do laser por lane; no host, o decodificador de FEC conta codewords corrigidas e não corrigidas. Juntas, elas mostram a que distância um enlace está da falha enquanto ainda carrega tráfego sem perdas.
Por que o FEC mudou o diagnóstico
Todo PMD Ethernet de 25G+ em PAM4 (e a maioria dos de NRZ em 25G) assume FEC Reed-Solomon. A óptica tem permissão para entregar uma taxa de erro bruta de 10⁻⁵–10⁻⁴ porque o FEC a repara para 10⁻¹² ou melhor. A consequência: um enlace em degradação não mostra nenhum erro para o MAC até que o limite do FEC seja ultrapassado, e então falha abruptamente. O BER pré-FEC é o único indicador suave de margem.
| FEC | Código | Correção por codeword | Limite de BER pré-FEC para saída de 10⁻¹² (aprox.) | Usado por |
|---|---|---|---|---|
| BASE-R (“FC-FEC”, cláusula 74) | Fire code (2112, 2080) | rajadas de 11 bits | ≈ 10⁻⁷ … 10⁻⁸, ganho de ~2 dB | 10G/25G NRZ, CA-25G-S |
| RS-FEC KR4 (cláusula 91/108) | RS(528, 514) sobre GF(2¹⁰) | 7 símbolos | ≈ 5 × 10⁻⁵ | 25GBASE-CR/SR/LR, 100GBASE-SR4/CWDM4/CR4 |
| RS-FEC KP4 (cláusula 119/134) | RS(544, 514) | 15 símbolos | ≈ 2,4 × 10⁻⁴ | todas as lanes PAM4 de 50G: 50G/100G/200G/400G/800G |
| Concatenado / oFEC (coerente) | códigos interno + externo | — | ≈ 10⁻² … 2 × 10⁻² | 400ZR (CFEC), OpenZR+ (oFEC) |
Incompatibilidades de configuração: FEC, autonegociação e treinamento de enlace.
VDM — o que o módulo reporta
O VDM vive nas páginas 20h–2Fh do CMIS (organizadas em bancos a cada 8 lanes) e é anunciado na página 01h. Cada observável tem um descritor (tipo, lane), uma amostra ao vivo, quatro limiares e flags, exatamente como os monitores clássicos.
| Páginas | Conteúdo |
|---|---|
| 20h–23h | descritores: qual observável, qual lane, qual conjunto de limiares |
| 24h–27h | amostras (2 bytes cada) |
| 28h–2Bh | limiares: alarme alto/baixo, aviso alto/baixo |
| 2Ch–2Fh | flags e máscaras |
Tipos de observável (CMIS 4.0/5.x)
| ID | Observável | Unidade / formato | O que ele indica |
|---|---|---|---|
| 1 | Idade do laser | % (U16) | estimativa do fabricante da vida consumida |
| 2 | Corrente do TEC | % do máx. (S16) | carga do resfriador — Temperatura e tensão |
| 3 | Erro de frequência do laser | MHz (S16) | DWDM/ZR: distância em relação à grade |
| 4 | Temperatura do laser | °C (S16, 1/256) | lasers resfriados |
| 5 / 6 | eSNR, entrada media / host | dB (U16, 1/256) | SNR elétrico após a equalização — a “altura do olho” do PAM4; > 18–20 dB confortável, < 15 dB marginal (depende do fabricante) |
| 7 / 8 | parâmetro de transição de nível PAM4, media / host | dB | linearidade dos quatro níveis |
| 9 / 10 | BER pré-FEC mínimo, media / host | F16 | melhor valor no intervalo |
| 11 / 12 | BER pré-FEC máximo | F16 | pior valor no intervalo — o número para alertar |
| 13 / 14 | BER pré-FEC médio | F16 | — |
| 15 / 16 | BER pré-FEC atual | F16 | última amostra |
| 17–24 | FERC (contagem de taxa de erro de quadro) mín / máx / méd / atual, media / host | F16 | quadros não corrigíveis pós-FEC — deveria ser 0 |
| 128+ | conjunto coerente (CMIS 5.x): polarização do modulador, CD, DGD, SOPMD, OSNR, eSNR, fator Q, potência total/de sinal de Rx, offset de frequência da portadora… | vários | módulos 400ZR/ZR+ |
F16 é o formato de razão de 16 bits do CMIS: um expoente de 5 bits e uma mantissa de 11 bits, valor = mantissa × 10^(expoente − 24). Um BER pré-FEC de 1,5 × 10⁻⁶ é armazenado como mantissa 1500 com expoente 15. Lado media = a linha óptica; lado host = a interface elétrica com o ASIC do switch — um BER ruim no lado host aponta para o conector ou a placa, não para a fibra.
Contadores de FEC do lado host
O switch ou a NIC conta, por porta e frequentemente por lane:
| Contador | Saudável | Atenção | Falhando |
|---|---|---|---|
| Codewords corrigidas | crescimento lento (BER pré-FEC 10⁻⁸ … 10⁻⁶) | crescimento rápido (10⁻⁵ em KP4) | perto do limite |
| Codewords não corrigíveis | 0 | qualquer incremento | incrementos constantes = perda de quadros |
| Erros de símbolo por lane | equilibrados entre as lanes | uma lane dominando | a fibra/conector/laser dessa lane |
| BER pré-FEC (derivado) | < 10⁻⁷ | 10⁻⁶ … 10⁻⁵ | > 10⁻⁴ (KP4) |
Onde lê-los: show interfaces … fec / phy detail na maioria dos NOS (Verificando ópticas), ethtool -S (fec_corrected_blocks, fec_uncorrectable_blocks) e ethtool --show-fec no Linux, show interfaces counters fec no SONiC. Os contadores são cumulativos — zere-os e observe a taxa.
Lendo os dois juntos
| Potência de Rx | BER pré-FEC / eSNR | Não corrigíveis | Diagnóstico |
|---|---|---|---|
| na janela | < 10⁻⁷, eSNR alto | 0 | saudável, com margem |
| na janela | 10⁻⁵, eSNR caindo em uma lane | 0 | essa lane está degradando: fibra MPO suja, VCSEL envelhecendo, conector marginal — corrija antes que falhe (Diagnóstico por lane) |
| baixa | alto | alguns | problema de orçamento — Potência de Rx e o orçamento de potência |
| na janela, nas duas pontas | alto no lado host | alguns | elétrico: contato de gaiola/conector, placa, qualidade do DAC, ajustes de equalização incorretos |
| na janela | alto no lado media, todas as lanes | alguns | dispersão, classe de alcance incorreta, comprimento de onda fora do mux, polaridade parcialmente errada |
| boa | 0 erros, enlace oscila | 0 | não é um problema de sinal — incompatibilidade de FEC/AN, térmico, software |
Limiares e alertas
Os limiares do VDM são definidos pelo fabricante; o aviso alto típico para o BER pré-FEC fica em torno de um décimo do limite do FEC (2 × 10⁻⁵ em KP4). Para alertas, use taxas e tendências: um BER pré-FEC subindo uma década em uma semana é uma ordem de serviço independentemente dos limiares (Monitoramento). Erros não corrigíveis pós-FEC são sempre um incidente.
Onde o VDM está ausente
Módulos SFF-8472 e SFF-8636 não têm VDM: enlaces NRZ de 10G/25G/100G dependem dos contadores de FEC do host e da potência de Rx. Alguns módulos SFF-8636 expõem SNR ou BER específicos do fabricante nas páginas 20h–21h ou em bytes de fabricante — legíveis apenas com a ferramenta do fabricante. Para NRZ sem FEC (10G LR, 1G), os contadores de CRC/erro de entrada na interface são a única visão no nível de bit.
No CodingBox
Para módulos CMIS, o CodingBox lê os descritores e as amostras do VDM e os mostra por lane junto com os monitores clássicos em DDM, decodificando as razões F16 em números simples. Os contadores de FEC do host ficam fora do módulo e fora do programador — eles vêm do switch.