Resumo

  • A máscara de um nível identifica os participantes da equação, não prova que o receptor possui todos os outros operandos.
  • Um nível pode reconstruir cabeçalho e prefixo enquanto outro deixa a cauda ausente; pacote completo, decodificação e reprodução continuam em aberto.

A equação certa ainda pode ser insolúvel

No ULP, cada nível tem seu próprio grupo. O bit i da máscara inclui o pacote de sequência N+i, onde N é a base. O Protection Length informa quantos octetos daquele nível entram no XOR. Essas informações tornam a equação identificável, mas não reduzem automaticamente o número de desconhecidos.

Se apenas o pacote-alvo faltar, a paridade e os operandos recebidos podem reconstruí-lo. Se outro pacote do mesmo grupo também faltar, uma única equação simples fica com duas incógnitas. A unidade FEC pode estar íntegra, corretamente associada e ainda ser inútil para aquele nível.

Proteção desigual produz resultados desiguais

RFC 5109 divide os dados em níveis de importância decrescente. O início costuma receber grupos menores e proteção mais forte; a parte posterior, grupos maiores. Uma unidade FEC pode carregar vários níveis, cada qual com comprimento e conjunto próprios.

Um pacote protegido em p também deve ser protegido em p-1, mas os grupos podem mudar e os níveis podem viajar em unidades FEC diferentes. Assim, o nível 0 pode ser resolvido e recuperar campos RTP, comprimento total e prefixo, enquanto o nível seguinte permanece insolúvel. A norma manda comparar o comprimento total recuperado com a carga realmente reconstruída para detectar parcialidade.

Seleção e reconstrução são etapas separadas

Primeiro a implementação escolhe quais pacotes mídia/FEC combinar. O algoritmo é local e troca custo de busca por oportunidade de recuperação. Depois, o procedimento normativo lê Ln, extrai os trechos no deslocamento correto, completa operandos curtos com zeros, executa XOR e encaixa o resultado. Só a concatenação de todos os níveis e a comparação de comprimento permitem afirmar pacote inteiro.

Uma combinação solucionável pode existir e não ser encontrada dentro do orçamento de CPU ou do prazo. Por isso o log deve guardar base, máscara, nível, comprimento, operandos presentes, incógnitas, intervalo reconstruído e teste de totalidade.

Continuidade da mídia não comprova proteção

Em sessão separada, a mídia não é alterada. Um receptor sem FEC pode ignorar a redundância. Na negociação, ele pode rejeitar FEC e aceitar mídia. Também há transporte como codificação redundante RFC 2198. Endereço, porta, tipo dinâmico e associação precisam ser conhecidos; mídia e proteção podem sofrer destinos distintos.

Uma reprodução visível pode significar ausência de perda, ocultação, reparo ou rejeição silenciosa do FEC. É preciso conservar oferta, resposta, versão da associação, recepção de cada fluxo e uso efetivo.

Resultado algébrico não é dado confiável

Paridade não autentica. Alterar FEC pode corromper bytes, criar comprimento excessivo e ampliar o trabalho computacional. RFC 5109 recomenda checagem antes da reconstrução e validação antes do uso. Integridade, geração de chaves, limites e aceitação do decodificador são etapas próprias.

Uma cauda contiguamente ausente pode ser mais tratável para alguns formatos, mas não existe garantia universal. Prefixo reconstruído não assegura frame decodificável nem chegada antes do playout.

Redundância participa do congestionamento

Mais FEC custa banda. Se a perda vier de congestionamento, aumentar o total pode aprofundá-la. A especificação proíbe aumento substancial da soma mídia+FEC à medida que a perda cresce e exige monitoramento em best effort. Recuperação deve ser avaliada junto com taxa total, fila e atraso.

Limite da afirmação

RFC 5109 é Standards Track de dezembro de 2007, substitui RFC 2733 e 3009 e introduz proteção desigual. Seu FEC não é retrocompatível, embora a mídia inalterada permaneça consumível. A máscara alcança até 48 posições. O documento não prova adoção, produto, operador, codec, taxa medida ou qualidade percebida.

Fontes