Resumo

  • A RFC 3407 descreveu formatos que um terminal podia e queria suportar sem comprometer a configuração real.
  • Declaração, seleção por oferta/resposta e mídia funcionando eram três recibos independentes.

SDP usava a mesma linha para descrever a sessão e anunciar alternativas. Vários codecs numa linha m= podiam parecer suporte simultâneo, embora a memória e o processamento do DSP só permitissem uma combinação. Cada opção era possível isoladamente; o conjunto não era necessariamente executável.

A RFC 3407 acrescentou atributos simples e compatíveis com receptores antigos. O conjunto de capacidades ficava ao lado da configuração real. Uma descrição indicava possibilidade, não escolha. Para ativá-la, as partes ainda precisavam de outro mecanismo, como oferta/resposta.

O texto proibiu inferir sucesso. Receber um formato não garantia que uma tentativa posterior com ele seria aceita. O par, os recursos, a combinação e os parâmetros ainda podiam impedir o acordo. Capacidade autorizava investigação.

O conjunto era completo e temporal. Um número de sequência cobria tudo, e o conjunto novo invalidava o anterior. Como receptores podiam perder atualizações, saltos no contador módulo 256 não justificavam rejeição. O número identificava uma época, não uma entrega sem lacunas.

O nível da declaração definia alcance. Uma capacidade de sessão servia aos fluxos do tipo indicado. Uma capacidade de mídia pertencia apenas à linha associada. Sem fluxo correspondente, uma declaração global tinha alvo indefinido, salvo numa sessão com um único fluxo.

Parâmetros eram parte da evidência. cpar informava condições de formato ou banda; mínimo e máximo definiam uma faixa. Ignorá-los podia causar falha sem tornar falsa a declaração original. O rótulo do codec não bastava.

Números de capacidade eram referências locais ao conjunto atual, e lacunas eram toleradas. Um procedimento externo podia apontar para elas, mas o RFC não transformava referência em consentimento.

Renegociar opções sensíveis sem autenticação podia facilitar downgrade ou negação de serviço. Uma alternativa existente não era automaticamente segura para seleção.

A RFC 5939 depois definiu capacidades, configurações potenciais e reais e procedimentos de oferta/resposta. Recomendou o novo quadro, permitiu dupla descrição para compatibilidade e não declarou a RFC 3407 formalmente obsoleta. Sua negociação tampouco consumia as descrições antigas.

A lição vale para qualquer catálogo de funções: ele registra possibilidade em um instante e escopo. A decisão conjunta e o resultado operacional precisam de provas próprias.

Fontes