Protocolos / IEC 60870-5-104 — IEC 104

I, S e U frames no IEC 104: sequência, confirmação e estado da sessão

Entenda o papel de I-frames, S-frames e U-frames, os números N(S)/N(R), STARTDT, STOPDT, TESTFR, janelas k/w e como diagnosticar travamentos.

6 min de leitura Conteúdo técnico autoral Publicado em 25/08/2026
Ilustração técnica autoral para I, S e U frames no IEC 104: sequência, confirmação e estado da sessão, 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.

Papel operacional dos frames IEC 104

FrameTransporta ASDU?Estado principal a observar
IsimN(S), N(R), janela k e conteúdo
SnãoN(R), janela w e t2
U STARTDTnãohabilitação da transferência
U STOPDTnãosuspensão controlada
U TESTFRnãoatividade na ociosidade por t3/t1

Analise cada direção com seus contadores independentes.

Três tipos de frame resolvem problemas diferentes

I-frame transporta ASDU e participa da numeração. S-frame confirma recepção quando não há dados de retorno. U-frame controla o estado da transferência com STARTDT, STOPDT e TESTFR. Misturar esses papéis produz diagnósticos equivocados, como procurar IOA em um S-frame ou considerar sessão operacional apenas porque o TCP está estabelecido.

Em uma captura, classifique cada APDU por direção e tipo. Depois acompanhe estado, sequência e conteúdo. Essa ordem evita que um evento visível desvie a análise de uma confirmação atrasada ou de um STARTDT ausente que antecede toda a falha.

N(S) identifica envio e N(R) confirma recepção

Cada ponta mantém contadores independentes. N(S) do I-frame indica o número que está sendo enviado naquela direção. N(R) declara o próximo número esperado da direção oposta, confirmando todos os anteriores. Como os valores estão deslocados nos octetos de controle, o analisador precisa retirar o bit reservado ao tipo antes de apresentar a sequência.

Uma confirmação não precisa repetir cada número individualmente; pode avançar cumulativamente. Salto para trás, número inesperado ou estagnação prolongada exige correlacionar restart, perda, duplicação, captura incompleta e implementação. O wrap da faixa é comportamento normal se ocorrer na fronteira prevista e sem quebra da ordem.

Comparação entre IEC 60870-5-101 serial e IEC 60870-5-104 sobre TCP/IP.
Os protocolos compartilham a semântica de telecontrole, mas usam transportes e controles de sessão diferentes. Fonte: Portal da Automação · Conteúdo autoral do portal.

I-frame combina dados e reconhecimento

Ao carregar uma ASDU, o I-frame atualiza N(S) e também informa N(R). Em comunicação bidirecional, dados de retorno podem reconhecer o sentido oposto sem S-frame separado. O número de I-frames pendentes não pode crescer indefinidamente: a janela k limita quanto o emissor envia antes de aguardar reconhecimento.

Analise o I-frame mais antigo ainda não confirmado, não apenas o último pacote. Se o tempo excede t1, a associação pode ser encerrada. Retransmissão do TCP pode atrasar a entrega e, indiretamente, fazer t1 expirar; aumentar o temporizador sem medir a rede oculta perda e amplia o tempo de detecção.

S-frame protege o fluxo predominantemente unidirecional

Quando o receptor não possui I-frame para devolver, emite S-frame com N(R). A janela w determina a quantidade de I-frames recebidos que provoca confirmação, enquanto t2 limita quanto essa confirmação pode esperar. Em telemetria intensa, S-frames regulares são esperados; sua ausência pode parar a origem ao atingir k.

Confirmação TCP e S-frame não são equivalentes. O primeiro confirma bytes ao sistema operacional; o segundo confirma APDUs à aplicação IEC 104. É possível ver ACKs TCP perfeitos enquanto o processo IEC 104 deixa de avançar. Essa distinção localiza falha no aplicativo remoto ou em sua fila.

STARTDT define quando dados podem circular

Após conectar, a estação controladora normalmente envia STARTDT act e espera STARTDT con. Somente então a transferência de ASDUs de usuário fica habilitada. Se GI é enviada antes do estado correto, o par pode descartar ou rejeitar. O log deve distinguir conexão criada de transferência iniciada.

Em redundância, duas associações podem existir, mas a política precisa definir qual recebe STARTDT. Ativar simultaneamente sem coordenação pode duplicar eventos ou comandos. Teste troca de ativo, sequência de STOPDT/STARTDT e comportamento dos dados durante o intervalo.

STOPDT e TESTFR tratam suspensão e ociosidade

STOPDT act/con suspende transferência de usuário mantendo a associação disponível conforme implementação. É útil em controle de estado e redundância, mas não deve ser confundido com desconexão TCP. TESTFR act/con verifica a associação após período ocioso definido por t3. Falha na confirmação é supervisionada por t1.

TESTFR não substitui observabilidade da rede nem valida ASDUs. Uma sessão pode responder ao teste e falhar no processamento de GI. Inclua ambos no comissionamento: primeiro o mecanismo de ociosidade, depois uma função de aplicação que prove o caminho completo.

Captura temporal revela a primeira divergência

Crie colunas para tipo, N(S), N(R), Type ID e COT. Separe direções e marque conexão, STARTDT, primeiro dado, confirmações e encerramento. Calcule quantidade pendente e intervalo até reconhecimento. O gráfico deve ser confrontado com latência, retransmissões TCP e CPU do front-end.

Captura em apenas uma ponta pode omitir perda ou atraso intermediário. Quando possível, sincronize duas capturas e compare. Não conclua duplicação da aplicação se o mesmo segmento é uma retransmissão TCP; use números de sequência das duas camadas para diferenciar.

Comissionamento inclui saturação e recuperação

Valide STARTDT, tráfego bidirecional, confirmação por I-frame e S-frame, ociosidade com TESTFR e STOPDT. Gere volume suficiente para exercitar w e k sem ultrapassar capacidade do sistema. Registre tempos e número máximo de pendências em condição normal e degradada.

Depois provoque perda, latência e restart controlados. Confirme expiração esperada, fechamento, reconexão, reinicialização de sequência e recomposição de dados. O aceite termina quando não há duplicação operacional, comando órfão ou backlog sem tratamento após o retorno.

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.

Trilhas em que este artigo se encaixa

Ver todas as trilhas de estudo →