Send Sequence Number no IEC 104: conceito, função e onde se aplica
Send Sequence Number no IEC 104: conceito, função e onde se aplica. Entenda o mecanismo, os parâmetros relevantes, como validar em campo e quais evidências usar no diagnóstico.
IEC 104: APDU, I/S/U e parâmetros que controlam a sessão
Como ler esta figura
APCI / Control Field
Controla formato I/S/U, estado lógico e numeração N(S)/N(R).
Na implementação: Sequência travada, ACK atrasado ou TESTFR repetitivo deve ser correlacionado com timers e janelas, não só com TCP.
I-format
Transporta ASDU e usa números de envio e recebimento para acompanhar a sequência.
Na implementação: Compare N(S) e N(R) nos dois sentidos para encontrar a primeira divergência ou ACK ausente.
S-format
Confirma recepção sem transportar uma ASDU.
Na implementação: É diretamente relacionado ao controle de fluxo e ao limiar w/t2.
U-format
Executa STARTDT, STOPDT e TESTFR para controlar/testar a transferência.
Na implementação: STARTDT não é comando de processo; é habilitação da transferência de dados IEC 104.
ASDU
Type ID, VSQ, COT, CA e IOA dão significado às medidas, estados, eventos e comandos.
Na implementação: TCP saudável com CA/IOA/COT errados continua sendo uma integração quebrada.
t0, t1, t2, t3, k e w
Definem estabelecimento, confirmações, ociosidade e janelas de mensagens.
Na implementação: Dimensione usando RTT real, carga e requisitos da aplicação; não copie defaults entre fabricantes sem validar.
IEC 104 — t0/t1/t2/t3/k/w: função, sintoma e medição
| Parâmetro | Referência comum | Função | Sintoma de ajuste/problema | Como medir |
|---|---|---|---|---|
| t0 | 30 s | Timeout de estabelecimento da conexão | Conexão não completa ou cai durante abertura | Tempo entre tentativa TCP/sessão e estabelecimento/abandono. |
| t1 | 15 s | Espera por confirmação de APDU enviada/teste | Reconexões ou timeout com I-frame sem ack | Delta entre envio e avanço de N(R) / confirmação esperada. |
| t2 | 10 s | Atraso máximo para confirmação S-frame | Acks excessivamente tardios | Tempo do primeiro I-frame recebido até S-frame quando w não é atingido antes. |
| t3 | 20 s | Supervisão de enlace ocioso com TESTFR | Sessão silenciosa sem teste ou testes frequentes demais | Tempo de ociosidade até TESTFR ACT e retorno TESTFR CON. |
| k | 12 | Máximo de I-frames enviados sem confirmação | Janela trava sob perda/latência | Maior diferença observada entre N(S) enviado e N(R) confirmado. |
| w | 8 | Quantidade de I-frames recebidos antes de confirmar | S-frames demais ou confirmação tardia | Contar I-frames recebidos entre confirmações S-frame. |
Os números são valores de referência amplamente adotados em perfis IEC 104; confirme a edição, o perfil de interoperabilidade e o equipamento.
Matriz específica — Send Sequence Number / fundamentos
| Campo/elemento | Valor ou representação | Como fechar a evidência |
|---|---|---|
| I-frame · fundamentos | ASDU + N(S)/N(R) | Conferir incremento e acknowledgements. |
| S-frame · fundamentos | N(R) | Confirmar janela recebida sem ASDU. |
| U-frame · fundamentos | STARTDT/STOPDT/TESTFR | Confirmar ACT/CON e estado da sessão. |
| TCP 2404 · fundamentos | transporte | Separar reset/retransmission TCP de falha IEC104. |
A matriz foi escolhida pelo foco “Send Sequence Number” e pela lente “fundamentos”; referências normativas e limites de fabricante continuam prevalecendo.
SCADA/IED — campos obrigatórios para “Send Sequence Number”
| Campo/etapa | Exemplo de evidência | Falha concreta |
|---|---|---|
| Valor bruto | contador/registro/objeto recebido | Escala errada mascarada pela IHM. |
| Scaling + unidade | ganho, offset, EU | Valor numericamente plausível porém incorreto. |
| Quality | good/bad/invalid/blocked/substituted conforme protocolo | SCADA exibe dado sem indicar validade. |
| Source timestamp | tempo gerado no IED/RTU | SOE fora de ordem por relógio ou perda de timestamp. |
| Receive/display time | tempo no FEP/SCADA | Latência de transporte/processamento. |
| Command lifecycle | envio, ack, atuação e retorno | Ack de protocolo sem atuação física. |
Métricas — como medir “Send Sequence Number” sem perder contexto
| Métrica | Unidade/fórmula | Campo adicional obrigatório | Sintoma associado |
|---|---|---|---|
| RTT/latência | ms | p95/p99, tamanho e direção | Timeout, atraso de atualização ou comando lento. |
| Jitter | ms | método e janela | Variação de entrega, buffer e instabilidade temporal. |
| Packet loss | % + burst | enviados/recebidos e maior sequência perdida | Retries, gaps de eventos, sessão degradada. |
| Throughput | kb/s ou Mb/s | carga/overhead e janela | Fila, congestionamento ou capacidade insuficiente. |
| Disponibilidade | (T−down)/T ×100% | período e critério de down | SLA e impacto operacional. |
| MTTR / MTBF | h ou min | definição de falha/restauração | Manutenibilidade e recorrência. |
| BER | bits errados / bits transmitidos | N de bits e nível do enlace | Degradação física antes de perda completa. |
Send Sequence Number no sistema: o problema que esta função resolve
Os números de sequência mantêm a ordem e a confirmação dos I-frames. Cada lado precisa acompanhar corretamente o que enviou e o que reconheceu.
Para aprender Send Sequence Number sem depender de uma tela específica de fabricante, separe função, entradas, saídas e dependências. Em IEC 60870-5-104 — IEC 104, os pontos mais próximos deste recorte são prioridades, buffers, Send Sequence Number. O leitor iniciante deve conseguir dizer quem produz a informação e quem a usa; o leitor experiente deve conseguir apontar o limite entre comportamento normal, exceção e implementação particular do equipamento.
Da origem ao efeito: sequência e estados de Send Sequence Number
Analise sequência junto a K/W/T1/T2; não trate contador isolado como parâmetro de configuração comum.
Implemente primeiro uma troca mínima e conhecida entre as duas pontas. Depois acrescente eventos, exceções, temporização e funções opcionais. Uma sessão estabelecida não é critério suficiente: o dado precisa manter tipo, qualidade, endereço, sequência e tempo até o destino. Durante o estudo, acompanhe timestamps, prioridades, buffers, Send Sequence Number como uma cadeia causal. Para cada item, pergunte o que o altera, como aparece no tráfego ou no equipamento e qual seria o primeiro sintoma se estivesse incorreto.
- timestamps — defina primeiro o que representa em IEC 60870-5-104 — IEC 104 e qual elemento produz ou consome essa informação; depois identifique em que condição ele muda.
- prioridades — relacione o valor ou estado ao efeito sobre Send Sequence Number; registre também qual campo permite confirmar que a interpretação está correta.
- buffers — na configuração, verifique dependências nas duas pontas e evite copiar valor de outro projeto sem comparar topologia, versão e capacidade do equipamento.
- Send Sequence Number — no diagnóstico, associe pelo menos um sintoma de configuração errada e uma evidência que diferencie esse sintoma de falha física ou de rede.
- Control Station — no comissionamento, crie um estímulo que faça o item mudar de forma previsível e registre antes/depois, horário e resposta observada.
O que acontece por dentro quando Send Sequence Number entra em ação
O fundamento de Send Sequence Number aparece nas transições. Acompanhe uma operação normal do início ao fim e marque quando timestamps e prioridades mudam. Depois repita mentalmente o fluxo com perda de comunicação, reinício ou dado inválido. Essa comparação revela quais campos representam estado e quais apenas transportam informação.
Em Send Sequence Number, a primeira tarefa é identificar qual variável, campo ou estado muda e em que fronteira isso pode ser observado. Relacione timestamps, prioridades e buffers ao fluxo de IEC 60870-5-104 — IEC 104. Para cada um, registre uma evidência objetiva e um efeito esperado. Essa ligação transforma uma recomendação genérica em mecanismo verificável.
- Descrever a sequência normal de Send Sequence Number
- Descrever uma exceção sem recorrer a “reiniciar e testar”
- Identificar o papel de timestamps
- Identificar o papel de prioridades
Exemplo de implementação: transformando Send Sequence Number em requisito verificável
Para implementar Send Sequence Number em IEC 60870-5-104 — IEC 104, escolha uma função pequena que possa ser repetida sem ambiguidade. Prove primeiro timestamps; depois acrescente prioridades; por último force uma condição relacionada a buffers. 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 Send Sequence Number deve terminar em critérios mensuráveis. Use timestamps como primeira evidência de sucesso e prioridades 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 buffers, mantenha uma tabela que ligue o rótulo comercial ao conceito do protocolo.
- Definir uma condição normal de Send Sequence Number e salvar a evidência associada a timestamps.
- Escolher uma única variável relacionada a prioridades e prever o efeito antes de alterar.
- Repetir o mesmo teste e comparar buffers nas mesmas medições ou campos.
- Registrar o critério que permite aceitar, rejeitar ou reverter a configuração de Send Sequence Number.
Critérios objetivos para aceitar Send Sequence Number em campo
Em captura contínua, procure progressão monotônica e acknowledgements coerentes.
Defina evidência antes de testar Send Sequence Number. Para esta categoria, sinais úteis incluem endereço, campo, estado, sequência, timestamp, qualidade. O teste deve ter estado inicial conhecido, estímulo reproduzível e resultado esperado. Quando houver dois equipamentos, registre os dois lados; quando houver gateway, registre também a transformação intermediária.
- Validar timestamps em condição normal
- Forçar uma condição degradada ligada a prioridades
- Confirmar recuperação sem perder estado, evento ou evidência relevante
- Salvar configuração, logs/captura e horário do teste como baseline
Caso bom x caso ruim: isolando a causa em Send Sequence Number
Salto, repetição ou ausência de reconhecimento pode apontar para perda, captura incompleta, reconexão ou problema de implementação.
Não conclua a partir do sintoma sozinho. Para Send Sequence Number, cruze pelo menos duas fontes de evidência e procure a primeira divergência. Se timestamps, prioridades, buffers estão corretos mas o resultado final continua errado, avance para a próxima fronteira do sistema em vez de alterar parâmetros já comprovados.
- timestamps: registre um caso saudável, um caso com falha e a diferença objetiva em estado.
- prioridades: registre um caso saudável, um caso com falha e a diferença objetiva em sequência.
- buffers: registre um caso saudável, um caso com falha e a diferença objetiva em timestamp.
- Send Sequence Number: registre um caso saudável, um caso com falha e a diferença objetiva em qualidade.
Send Sequence Number: dados exclusivos deste recorte (fundamentos)
O recorte Send Sequence Number precisa distinguir APDU/APCI e I/S/U frames. I-frame transporta ASDU e N(S)/N(R); S-frame confirma recepção com N(R); U-frame controla STARTDT, STOPDT e TESTFR. IEC 104 usa tipicamente TCP 2404. Sequência travada ou TESTFR sem CON aponta para estado de sessão, não para erro de objeto.
Nos fundamentos de Send Sequence Number, acompanhe a transição que altera I-frame e confirme como S-frame reage antes, durante e depois do evento.
- I-frame: ASDU + N(S)/N(R). Conferir incremento e acknowledgements.
- S-frame: N(R). Confirmar janela recebida sem ASDU.
- U-frame: STARTDT/STOPDT/TESTFR. Confirmar ACT/CON e estado da sessão.
- TCP 2404: transporte. Separar reset/retransmission TCP de falha IEC104.
Send Sequence Number: timers e janelas que governam a sessão IEC 104 — Send Sequence Number / fundamentos
Nos fundamentos de Send Sequence Number, trate sincronização como parte de uma sequência causal: condição inicial, transição, campo alterado e reação do outro lado. Em IEC 60870-5-104, t0 limita o estabelecimento da conexão; t1 limita a espera por confirmação de APDUs enviadas/teste; t2 limita quanto o receptor pode postergar um S-frame de confirmação; t3 detecta ociosidade e dispara TESTFR; k limita I-frames enviados sem confirmação e w define quantos I-frames recebidos podem acumular antes de um S-frame. Valores de referência frequentemente usados são t0=30 s, t1=15 s, t2=10 s, t3=20 s, k=12 e w=8, sempre sujeitos ao perfil e ao fabricante. O critério de encerramento para Send Sequence Number em fundamentos é obter o mesmo resultado em novo teste de sincronização, mantendo o ponto de medição e a condição inicial.
O mecanismo de Send Sequence Number deve ser lido a partir de prioridades; observe qual estado antecede a mudança e qual confirmação prova que ela terminou. O diagnóstico de Send Sequence Number precisa observar tempo na captura, não apenas a tela de parâmetros. Um t1 expirando costuma aparecer como APDU enviada sem avanço de N(R); t3 aparece após período ocioso seguido de TESTFR ACT/CON; k/w aparecem na distância entre N(S) e N(R) e na frequência dos S-frames. t2 deve permanecer menor que t1 para não criar uma política de confirmação incoerente. Para este artigo de Send Sequence Number, a evidência ligada a prioridades deve ser armazenada com horário, origem e condição de teste, permitindo comparação posterior.
- Send Sequence Number · fundamentos · sincronização: Wireshark: acompanhar I/S/U frames, N(S), N(R), TESTFR ACT/CON e timestamps da captura.
- Send Sequence Number · fundamentos · spontaneous transmission: Medir o intervalo real entre o último tráfego e TESTFR para validar t3.
- Send Sequence Number · fundamentos · timestamps: Medir quantos I-frames ficam outstanding para validar k e a política de ack w/t2.
- Send Sequence Number · fundamentos · prioridades: Não aumentar t1 para esconder perda TCP, processamento lento ou janela de confirmação mal dimensionada.
Send Sequence Number: valor, qualidade, tempo e ciclo de comando ponta a ponta — Send Sequence Number / fundamentos
O mecanismo de Send Sequence Number deve ser lido a partir de Cliente; observe qual estado antecede a mudança e qual confirmação prova que ela terminou. Um ponto SCADA não é apenas um valor. Para Send Sequence Number, registre endereço/tag de origem, valor bruto, escala/unidade, quality, timestamp de origem, timestamp de recepção e timestamp de apresentação. Deadband deve ser expressa na unidade ou porcentagem definida e testada em torno do limiar; SOE exige preservar a ordem pelo tempo de origem, não pela ordem de chegada ao servidor. Se Cliente não reproduzir o comportamento esperado em Send Sequence Number, a hipótese deve ser revista antes de alterar outra camada do sistema.
Para explicar por que Send Sequence Number funciona, use Gateway como ponto de partida e siga a mudança até o efeito mensurável no protocolo ou processo. Comandos precisam ser separados em intenção, envio pelo protocolo, confirmação de protocolo, atuação do equipamento e retorno de posição. Em religador/IED/RTU, um “operate success” sem mudança do contato ou telemetria não encerra o teste. Em historian, preserve raw value, quality e source timestamp antes de qualquer agregação. Em alarmes, registre condição de entrada, prioridade, debounce/deadband, ack e retorno ao normal. O critério de encerramento para Send Sequence Number em fundamentos é obter o mesmo resultado em novo teste de Gateway, mantendo o ponto de medição e a condição inicial.
- Send Sequence Number · fundamentos · Control Station: Telemetria: raw → scaling → engineering unit → quality → source timestamp → SCADA timestamp.
- Send Sequence Number · fundamentos · Controlled Station: SOE: comparar timestamp de origem e sequência recebida em uma rajada de eventos.
- Send Sequence Number · fundamentos · Cliente: Comando: request → protocol confirmation → physical action → indication/return.
- Send Sequence Number · fundamentos · Servidor: Historian: validar valor, quality e timestamp antes de compressão/agregação.
Send Sequence Number: definição matemática, unidade e janela de medição — Send Sequence Number / fundamentos
Para explicar por que Send Sequence Number funciona, use APDU como ponto de partida e siga a mudança até o efeito mensurável no protocolo ou processo. Uma métrica sem método não é comparável. Latência de ida e volta (RTT) deve ser registrada em ms com tamanho de pacote, direção e percentis; jitter deve declarar o cálculo usado; packet loss é pacotes perdidos dividido por pacotes enviados, mas a rajada máxima costuma ser mais importante para protocolos de automação. Throughput é taxa útil em bit/s e não deve ser confundido com capacidade nominal de 100 Mb/s ou 1 Gb/s. Para este artigo de Send Sequence Number, a evidência ligada a APDU deve ser armazenada com horário, origem e condição de teste, permitindo comparação posterior.
Nos fundamentos de Send Sequence Number, trate I-Frame como parte de uma sequência causal: condição inicial, transição, campo alterado e reação do outro lado. Disponibilidade em uma janela pode ser calculada como (tempo total − indisponibilidade)/tempo total × 100%. MTTR é tempo médio para restaurar o serviço após falha; MTBF é tempo médio entre falhas reparáveis. BER é bits errados/bits transmitidos. Para Send Sequence Number, registre N da amostra, duração, p50/p95/p99, máximo, maior rajada, carga e condição do enlace; depois correlacione com timeout/retry ou atraso percebido pelo SCADA. Se I-Frame não reproduzir o comportamento esperado em Send Sequence Number, a hipótese deve ser revista antes de alterar outra camada do sistema.
- Send Sequence Number · fundamentos · Gateway: Latência/RTT: ms, p50/p95/p99/máximo e direção.
- Send Sequence Number · fundamentos · RTU: Packet loss: %, número absoluto e maior burst consecutivo.
- Send Sequence Number · fundamentos · TCP/IP: Throughput/bandwidth: kb/s ou Mb/s, janela e overhead do protocolo.
- Send Sequence Number · fundamentos · porta padrão 2404: Disponibilidade/MTTR/MTBF: definir claramente início/fim da falha e período observado.
- Send Sequence Number · fundamentos · APDU: BER: erros de bit ÷ bits transmitidos; registrar duração e nível de sinal junto do resultado.
Referências técnicas
As explicações do Portal são autorais. Use as fontes oficiais e materiais públicos de implementação abaixo para confirmar edição, escopo, capacidades e comportamento do equipamento utilizado no seu projeto.
- IEC 60870-5-104:2006+AMD1:2016 CSV — IEC. Versão consolidada listada pela IEC para o companion standard IEC 60870-5-104.
- IEC 60870-5:2026 SER — Transmission protocols — IEC. Pacote oficial da série IEC 60870-5.
Continue estudando
Os próximos conteúdos foram escolhidos pelo mecanismo deste artigo. A ideia é formar uma sequência técnica, não apenas listar páginas do mesmo tema.