Protocolos / GOOSE

TimeAllowedToLive no GOOSE: como configurar sem perder interoperabilidade

TimeAllowedToLive no GOOSE: como configurar sem perder interoperabilidade. Entenda o mecanismo, os parâmetros relevantes, como validar em campo e quais evidências usar no diagnóstico.

12 min de leitura Publicado em 08/09/2026
Ilustração técnica autoral para TimeAllowedToLive no GOOSE: como configurar sem perder interoperabilidade, destacando o fluxo e os elementos centrais do assunto.
Ilustração técnica autoral do Portal da Automação, criada para o foco específico deste artigo.

GOOSE — campos Ethernet que precisam coincidir

CampoReferênciaComo comprovar
EtherType0x88B8Decodificação Ethernet/Wireshark.
MAC multicast01-0C-CD-01-00-00 … 01-0C-CD-01-01-FFFrame publicado e porta do subscriber.
802.1Q VID12 bits; projeto define o VLAN IDTag no frame + configuração das portas/trunks.
PCP3 bits (0–7)Tag 802.1Q + mapeamento da fila no switch.
APPID16 bitsFrame GOOSE e configuração SCL dos participantes.

Matriz específica — TimeAllowedToLive / configuração

Campo/elementoValor ou representaçãoComo fechar a evidência
APPID · configuração16 bitsConfirmar fluxo configurado.
stNum · configuraçãoestadoIncrementa quando DataSet muda.
sqNum · configuraçãoretransmissãoCresce no mesmo estado e evidencia gaps.
ConfRev / TAL · configuraçãorevisão / validadeComparar SCL e expiração no subscriber.

A matriz foi escolhida pelo foco “TimeAllowedToLive” e pela lente “configuração”; referências normativas e limites de fabricante continuam prevalecendo.

GOOSE — APPID, stNum, sqNum e ConfRev no mesmo diagnóstico

CampoO que representaMudança esperadaFalha que evidencia
APPIDIdentificador de aplicação do fluxo GOOSEPermanece coerente com o control blockFluxo/publicação diferente do esperado.
stNumNúmero do estado do DataSetIncrementa quando o estado publicado mudaLógica/DataSet não mudou apesar do processo.
sqNumSequência de retransmissões do mesmo estadoReinicia no novo estado e cresce nas repetiçõesGap, perda ou captura incompleta.
ConfRevRevisão da configuraçãoPermanece igual à revisão esperada pelo subscriberPublisher/subscriber com engenharia divergente.
TimeAllowedToLiveValidade temporal da mensagemCompatível com o próximo intervalo de publicaçãoSubscriber declara perda do publisher após expiração.
EtherTypeGOOSE diretamente sobre Ethernet0x88B8Dissector/protocolo diferente do esperado.

TimeAllowedToLive no sistema: o problema que esta função resolve

TimeAllowedToLive informa ao subscriber por quanto tempo a publicação pode ser considerada válida antes de declarar ausência do publisher. Ele acompanha o comportamento de retransmissão adaptativa do GOOSE.

No desenho de GOOSE, localize TimeAllowedToLive entre origem e destino e marque quais elementos dependem de timeout, perda de mensagens, TimeAllowedToLive. A definição deve permitir responder quem produz a informação, quem toma a decisão, onde o estado é mantido e qual evidência aparece primeiro quando algo sai do esperado.

Da origem ao efeito: sequência e estados de TimeAllowedToLive

Dimensione tempos com base nos intervalos de retransmissão definidos pela engenharia e na classe de desempenho requerida. Não aumente TAL apenas para esconder perda de rede.

Comece com uma troca mínima conhecida e depois acrescente eventos, exceções, temporização e funções opcionais. Uma sessão estabelecida não é critério suficiente: tipo, endereço, qualidade, sequência e tempo precisam chegar ao destino com a mesma semântica. Neste artigo, acompanhe dataset correto, timeout, perda de mensagens, TimeAllowedToLive como uma cadeia causal: condição de entrada → estado interno → decisão → saída → evidência. Esse percurso evita repetir definições e obriga cada bloco do texto a acrescentar um nível novo de explicação.

Cadeia funcional entre TC e TP, IED de proteção e disjuntor.
A proteção depende da cadeia completa de medição, lógica, alimentação e circuito de trip. Fonte: Portal da Automação · Conteúdo autoral do portal.

Parâmetros e campos de TimeAllowedToLive: significado, efeito e validação

Os itens abaixo não são apenas nomes de configuração. Para cada parâmetro ou campo, o artigo registra o que ele representa, o efeito prático de um valor/estado incorreto e a evidência usada para confirmar a interpretação. Valores default e faixas exatas que dependem de fabricante ou firmware devem ser confirmados na documentação do equipamento, mas a relação causa → efeito precisa permanecer válida entre implementações.

Ao alterar TimeAllowedToLive, mude uma variável por vez e preserve o baseline. Um valor só deve ser considerado adequado quando o efeito esperado aparece na captura, no contador, no log ou no processo e quando a condição degradada continua dentro do requisito.

  • Test — O que é: elemento de engenharia relacionado a TimeAllowedToLive dentro de GOOSE; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com TimeAllowedToLive; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando endereço como evidência objetiva.
  • Simulation — O que é: elemento de engenharia relacionado a TimeAllowedToLive dentro de GOOSE; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com TimeAllowedToLive; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando campo como evidência objetiva.
  • Needs Commissioning — O que é: elemento de engenharia relacionado a TimeAllowedToLive dentro de GOOSE; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com TimeAllowedToLive; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando estado como evidência objetiva.
  • GOOSE publicado — O que é: elemento de engenharia relacionado a TimeAllowedToLive dentro de GOOSE; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com TimeAllowedToLive; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando sequência como evidência objetiva.
  • GOOSE recebido — O que é: elemento de engenharia relacionado a TimeAllowedToLive dentro de GOOSE; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com TimeAllowedToLive; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando timestamp como evidência objetiva.
  • subscription — O que é: elemento de engenharia relacionado a TimeAllowedToLive dentro de GOOSE; deve ser identificado pela representação real usada no equipamento/protocolo. Efeito: Seu valor ou estado altera a interação com TimeAllowedToLive; documente dependências e limite em vez de copiar um valor de outro projeto. Validar: comparar condição normal e uma alteração controlada usando qualidade como evidência objetiva.

Exemplo de implementação: transformando TimeAllowedToLive em requisito verificável

Para implementar TimeAllowedToLive em GOOSE, escolha uma função pequena que possa ser repetida sem ambiguidade. Prove primeiro dataset correto; depois acrescente timeout; por último force uma condição relacionada a perda de mensagens. Em cada etapa registre a mensagem esperada, o estado local e a reação da outra ponta. A sequência incremental reduz drasticamente tentativa e erro em projetos multivendor.

A decisão de engenharia para TimeAllowedToLive deve terminar em critérios mensuráveis. Use dataset correto como primeira evidência de sucesso e timeout como verificação de consistência; declare quanto tempo pode decorrer e o que deve sobreviver à reconexão. Se a interface do fabricante usa outro nome para perda de mensagens, mantenha uma tabela que ligue o rótulo comercial ao conceito do protocolo.

  • Definir uma condição normal de TimeAllowedToLive e salvar a evidência associada a dataset correto.
  • Escolher uma única variável relacionada a timeout e prever o efeito antes de alterar.
  • Repetir o mesmo teste e comparar perda de mensagens nas mesmas medições ou campos.
  • Registrar o critério que permite aceitar, rejeitar ou reverter a configuração de TimeAllowedToLive.

Sequência de configuração que reduz tentativa e erro

Configure TimeAllowedToLive do mínimo para o completo. Identifique as pontas e pré-requisitos, prove uma transação simples e só então habilite dependências como dataset correto, timeout, perda de mensagens. Essa ordem permite associar cada mudança ao efeito que introduziu.

Em GOOSE, exporte a configuração antes e depois, registre firmware e mantenha uma tabela dos valores que precisam coincidir entre equipamentos. Inclua retorno após perda de enlace ou reboot no aceite.

  • Backup e firmware registrados antes de alterar TimeAllowedToLive
  • Transação mínima validada
  • dataset correto habilitado e testado isoladamente
  • timeout habilitado e testado isoladamente
  • perda de mensagens habilitado e testado isoladamente

Do “online” à prova técnica: validação de TimeAllowedToLive

Interrompa o publisher ou o caminho L2 e meça o tempo até o subscriber declarar timeout. Compare com o valor observado nos frames.

Defina a evidência antes do teste de TimeAllowedToLive. Para esta categoria, sinais úteis incluem endereço, campo, estado, sequência, timestamp, qualidade. Use estado inicial conhecido, estímulo reproduzível e resultado esperado; quando houver duas pontas, registre as duas, e quando houver gateway/firewall/conversor, registre também a transformação intermediária.

  • Validar dataset correto em condição normal
  • Forçar uma condição degradada ligada a timeout
  • Confirmar recuperação sem perder estado, evento ou evidência relevante
  • Salvar configuração, logs/captura e horário do teste como baseline

Quando TimeAllowedToLive dá errado: separar sintoma, causa e efeito

Timeouts esporádicos podem vir de perda/burst, bloqueio de porta, congestionamento ou temporização inadequada. TAL excessivamente alto aumenta o tempo para detectar publisher ausente.

Não conclua a partir do sintoma sozinho. Para TimeAllowedToLive, cruze pelo menos duas fontes de evidência e procure a primeira divergência. Se dataset correto, timeout, perda de mensagens estão corretos mas o resultado final continua errado, avance para a próxima fronteira do sistema em vez de alterar novamente um parâmetro já comprovado.

  • dataset correto: registre um caso saudável, um caso com falha e a diferença objetiva em estado.
  • timeout: registre um caso saudável, um caso com falha e a diferença objetiva em sequência.
  • perda de mensagens: registre um caso saudável, um caso com falha e a diferença objetiva em timestamp.
  • TimeAllowedToLive: registre um caso saudável, um caso com falha e a diferença objetiva em qualidade.

TimeAllowedToLive: dados exclusivos deste recorte (configuração)

Em TimeAllowedToLive, GOOSE deve ser comprovado por EtherType 0x88B8, MAC multicast 01-0C-CD-01-00-00…01-0C-CD-01-01-FF, APPID, stNum, sqNum, ConfRev e TimeAllowedToLive. Quando 802.1Q é usado, registre VID e PCP até a porta do subscriber.

Na configuração de TimeAllowedToLive, valide APPID primeiro e só depois habilite stNum; exporte o antes/depois para saber qual mudança alterou o comportamento.

  • APPID: 16 bits. Confirmar fluxo configurado.
  • stNum: estado. Incrementa quando DataSet muda.
  • sqNum: retransmissão. Cresce no mesmo estado e evidencia gaps.
  • ConfRev / TAL: revisão / validade. Comparar SCL e expiração no subscriber.

TimeAllowedToLive: Ethernet multicast, VLAN e prioridade do GOOSE — TimeAllowedToLive / configuração

Na configuração de TimeAllowedToLive, estabeleça primeiro o baseline de GOOSE publicado, altere uma única dependência e salve export/captura antes e depois. GOOSE opera diretamente sobre Ethernet com EtherType 0x88B8. Endereços multicast reservados para GOOSE usam a faixa 01-0C-CD-01-00-00 a 01-0C-CD-01-01-FF. Quando 802.1Q é usado, VID e PCP precisam ser coerentes com o projeto; PCP ocupa 3 bits no tag VLAN e deve ser tratado em conjunto com filas/QoS dos switches. O critério de encerramento para TimeAllowedToLive em configuração é obter o mesmo resultado em novo teste de GOOSE publicado, mantendo o ponto de medição e a condição inicial.

Para configurar TimeAllowedToLive, valide VLAN na origem e no destino antes de habilitar o restante da função; isso evita compensar um erro com outro parâmetro. No diagnóstico de TimeAllowedToLive, verifique MAC destino, VLAN ID, PCP, APPID e entrega na porta do subscriber. “Frame visto no trunk” não prova que ele chegou ao IED. Use port mirroring/contadores multicast e, quando possível, captura no ponto mais próximo do assinante. Para este artigo de TimeAllowedToLive, a evidência ligada a VLAN deve ser armazenada com horário, origem e condição de teste, permitindo comparação posterior.

  • TimeAllowedToLive · configuração · GOOSE publicado: Filtro: eth.type == 0x88b8.
  • TimeAllowedToLive · configuração · GOOSE recebido: Confirmar MAC multicast GOOSE, VID/PCP e APPID conforme SCL/projeto.
  • TimeAllowedToLive · configuração · subscription: Validar flooding/filtragem multicast e membership quando o switch implementar mecanismos adicionais.
  • TimeAllowedToLive · configuração · VLAN: Correlacionar perda de GOOSE com counters, congestionamento e filas de prioridade.

TimeAllowedToLive: estado GOOSE comprovado pelos campos do frame — TimeAllowedToLive / configuração

Para configurar TimeAllowedToLive, valide perda de mensagens na origem e no destino antes de habilitar o restante da função; isso evita compensar um erro com outro parâmetro. Nos artigos de estado GOOSE, o quadro precisa ser lido campo a campo. EtherType 0x88B8 identifica GOOSE; APPID identifica o fluxo; stNum muda quando o estado do DataSet muda; sqNum avança nas retransmissões do mesmo estado; ConfRev permite verificar se publisher e subscriber usam a mesma revisão de engenharia; TimeAllowedToLive informa a validade temporal anunciada pelo publisher. Se perda de mensagens não reproduzir o comportamento esperado em TimeAllowedToLive, a hipótese deve ser revista antes de alterar outra camada do sistema.

Em TimeAllowedToLive, a mudança relacionada a EtherType deve ter rollback definido e um teste que prove que o novo valor realmente entrou em operação. Para TimeAllowedToLive, provoque uma mudança conhecida no DataSet e salve uma captura que contenha pelo menos o frame anterior, o primeiro frame após a transição e algumas retransmissões. O padrão esperado é stNum incrementar no novo estado e sqNum reiniciar a sequência e voltar a crescer. Se ConfRev não corresponde ao arquivo SCL implantado, Ethernet, VLAN e multicast podem estar perfeitos e mesmo assim a aplicação rejeitar o fluxo. O critério de encerramento para TimeAllowedToLive em configuração é obter o mesmo resultado em novo teste de EtherType, mantendo o ponto de medição e a condição inicial.

  • TimeAllowedToLive · configuração · dataset correto: Filtro Wireshark: eth.type == 0x88b8; registrar MAC destino, APPID, stNum, sqNum, ConfRev e TimeAllowedToLive.
  • TimeAllowedToLive · configuração · timeout: Comparar ConfRev capturado com a revisão no SCD/CID realmente carregado.
  • TimeAllowedToLive · configuração · perda de mensagens: Medir o intervalo das retransmissões rápidas e o heartbeat em regime.
  • TimeAllowedToLive · configuração · Ethernet multicast: Na perda de publisher, medir o tempo até TimeAllowedToLive expirar no subscriber.

Referências técnicas e normas

As explicações do Portal são autorais. Normas e fontes oficiais são priorizadas; materiais acadêmicos e documentação pública de fabricantes complementam a implementação e não substituem a edição normativa aplicável ao projeto.

Continue estudando

Os próximos conteúdos foram escolhidos para formar uma sequência técnica, relacionando fundamento, configuração, diagnóstico e aplicação.

Ver todas as trilhas de estudo →