Requisitos de rede para ST 2022-7¶
Importante
Versão beta 2.1. O que está descrito aqui existe apenas na versão beta 2.1: ela é instalada a partir do repositório beta e somente com uma licença; a versão estável 2.0.2 e a versão de demonstração não têm isso. A versão beta é fornecida sem garantias, e o suporte é prestado na medida do possível (Programa de testes beta).
SMPTE ST 2022-7 é uma redundância sem interrupção: o mesmo fluxo RTP chega ao receptor por dois caminhos, e o receptor os junta em um só pelos números de sequência dos pacotes RTP. Um pacote perdido em um caminho é obtido do outro; não há comutação, e a perda não aparece na saída do receptor. A proteção é exatamente tão confiável quanto os caminhos são independentes: tudo o que os dois caminhos têm em comum continua sendo um ponto único de falha.
No Perfect Streamer, o segundo caminho é configurado nas entradas e saídas do tipo RTP (RTP):
a entrada recebe o segundo caminho —
path2-addressepath2-port, a interfacepath2-bind-if, a fonte SSMpath2-ssm-addresse a janela de esperapath-skew-ms;a saída envia os mesmos pacotes pelo segundo caminho —
path2-addressepath2-port, a interfacepath2-mcast-if.
Os dois caminhos devem levar um mesmo fluxo: o mesmo SSRC e a mesma numeração de pacotes. Se os caminhos diferirem, eles não são combinados — só o primeiro caminho é usado, e o nó gera um alerta de código 76 (input-paths-differ, Lista de alertas). As entradas e saídas Pro-MPEG tratam o segundo caminho da mesma forma que RTP; o FEC do segundo caminho vai para as suas próprias portas FEC, e a multiplexação Pro-MPEG não se combina com o segundo caminho (Pro-MPEG).
Dois caminhos independentes¶
O requisito principal são duas redes separadas, por convenção «vermelha» e «azul», cada uma com seus próprios switches, enlaces e alimentação. Um switch, um enlace de backbone ou uma fonte de alimentação comuns aos dois caminhos são um ponto único de falha, e quando falham os dois caminhos se perdem ao mesmo tempo.
No nó são recomendáveis duas placas de rede, uma para cada rede. O segundo caminho é atribuído a uma entrada pelo campo path2-bind-if e a uma saída pelo campo path2-mcast-if (o nome da interface ou o seu endereço IPv4; um valor vazio é a interface padrão do sistema). Se o segundo caminho da saída não pôde ser aberto, por exemplo porque path2-mcast-if indica um endereço que este servidor não tem, a saída continua enviando pelo primeiro caminho, e o erro do segundo caminho aparece nas estatísticas da saída.
Multicast¶
Se os caminhos são grupos multicast, cada uma das duas redes deve encaminhar multicast por si mesma:
o IGMP snooping está ativado nos switches;
em cada uma das duas redes funciona um IGMP querier. Sem ele, o snooping para de encaminhar o grupo após alguns minutos, e o caminho desaparece sem motivo aparente;
para a recepção com indicação da fonte (SSM,
path2-ssm-addresspara o segundo caminho) a rede deve suportar IGMPv3;se os caminhos passam por roteadores, o PIM está configurado nas duas redes, e o TTL dos pacotes é suficiente para atravessar todos os trechos.
Largura de banda¶
Cada caminho leva o fluxo inteiro, por isso o tráfego dobra: reserve para cada rede o bitrate completo do fluxo. Se FEC for adicionado ao fluxo, a parte dele também passa por cada caminho (Planejamento da largura de banda, da latência e das portas).
Diferença de atraso entre os caminhos¶
Os atrasos dos dois caminhos diferem, e a diferença deve caber na janela do receptor path-skew-ms: de 10 a 1000 ms, 450 ms por padrão — a classe C do padrão ST 2022-7 (fluxos abaixo de 270 Mbit/s). É o tempo máximo que o receptor espera por um pacote ausente do caminho atrasado. A espera é contada a partir do momento em que a lacuna é detectada, ou seja, quando o caminho adiantado já entregou os pacotes seguintes. A perda de vários pacotes no caminho adiantado é recuperada enquanto o caminho atrasado não estiver atrás mais do que path-skew-ms mais a duração desses pacotes.
Em redes reais, os caminhos costumam diferir em unidades ou dezenas de milissegundos. Se os atrasos dos caminhos forem conhecidos e próximos, path-skew-ms pode ser reduzido: o receptor passará a acrescentar menos atraso. O atraso próprio do fluxo no nó deve cobrir essa janela.
O que não é necessário¶
Quadros jumbo. Sete pacotes TS em um pacote RTP cabem na MTU comum de 1500 bytes.
PTP e sincronização de relógios. Os caminhos são alinhados pelos números de sequência dos pacotes RTP, e não pelo tempo — ao contrário do SMPTE ST 2110.
Funções especiais de ST 2022-7 nos switches. Basta o encaminhamento unicast ou multicast comum.
Recomendações¶
Em uma rede compartilhada com outro tráfego, dê aos fluxos prioridade de QoS (DSCP); caso contrário, um pico de tráfego alheio atrasará ou perderá pacotes nos dois caminhos ao mesmo tempo.
Não passe os dois caminhos por um mesmo enlace agregado (LAG) ou um mesmo enlace de backbone: é o mesmo ponto único de falha que um switch compartilhado.
Para uma saída em um grupo de reserva, os dois caminhos são enviados pelo nó escolhido como emissor do grupo. Defina
path2-mcast-ifem cada membro do grupo: os nós também acompanham o emissor pelo segundo caminho.