Treinamento em Redes de Automação Petrobras Parte 1

Treinamento em Redes de Automação Petrobras Parte 1

(Parte 7 de 9)

Utilizado quando é feita uma recepção com erros.

SYN 22H SYNchoronous idle

Utilizado em sistemas síncronos que necessitam manter caracteres na linha, mesmo quando estiver em repouso (idle).

ETB 23H End of

Transmission Block

Indica o final do bloco de dados e a existência de ao menos mais um bloco a ser transmitido. Às vezes é utilizado no lugar de ETX.

SENAI-SP 3/67

Redes de Automação – Treinamento Petrobrás

Formato de Pacotes Como exemplo, vamos verificar como formar pacotes a partir do uso de tais caracteres.

A tabela a seguir fornece alguns dos vários formatos possíveis para um Pacote, após a qual apresentamos um gráfico especial utilizado para representar esses - uma prática comum na documentação de um protocolo.

Diagrama de Pacotes possíveis.

Vamos verificar onde cada tipo de pacote poderia ser utilizado:

O pacote tipo 1 pode servir para enviar ao receptor alguma identificação do Transmissor e, ao transmissor, alguma identificação do receptor , se necessário. O pacote 2 pode ser enviado antes da transmissão efetiva de dados, com o nome original do arquivo, no Campo de Dados, que será transmitido.

SENAI-SP 34/67

Redes de Automação – Treinamento Petrobrás

O pacote tipo 3 transmite dados e avisa que o arquivo ainda não terminou, pelo uso de ETB.

de dados pode ter tamanho menor que os demais, este pacote pode ser menor também
Caso isso seja um inconveniente, é bom utilizar ETB no final do bloco de dados,

O pacote tipo 4 é uma outra opção que pode ser utilizada ao invés do pacote 2. O pacote 5 pode ser utilizado para o último bloco de dados. Como o último bloco preencher com espaço os bytes restantes para completar o tamanho do campo, e encerrar o mesmo com ETX.

Sessão de Transmissão Outro ponto que define um Protocolo é a forma com que o mesmo processa a transmissão; em outras palavras, como o Protocolo conduz a Sessão de Transmissão. Pode-se dizer que uma Sessão de Transmissão genérica de arquivo possui três etapas principais: Abertura, Transmissão e Encerramento. Estas podem ser subdividas em outras conforme o interesse do projetista. Vamos analisar essas três etapas principais resumidamente:

Abertura da Sessão O propósito desta etapa é o de estabelecer uma ligação (ou "link") entre Receptor e

Transmissor, ou seja, deve conter todas as tarefas necessárias para a conexão física entre os dois. A tabela abaixo contém um exemplo de possíveis tarefas executadas durante uma Abertura de Sessão, supondo uma comunicação via Modem entre um terminal e um computador que exige senha para acesso.

Tarefas Descrição

Obter número Busca o número a ser discado, solicitando-o ao operador ou ao banco de dados.

Discarnúmero

Solicita e aguarda do Modem a ligação telefônica. Caso positivo, passa controle à tarefa seguinte.

Enviar senha Transmite a senha e aguarda confirmação de acesso passando o controle à Sessão seguinte.

SENAI-SP 35/67

Redes de Automação – Treinamento Petrobrás

Sessão de Transmissão Esta diz respeito ao envio do arquivo propriamente dito; neste caso, deve-se proceder à confirmação ou não de cada Bloco de dados recebido. Esta confirmação pode ser realizada de duas formas distintas: confirmação por conjunto de Blocos ou Bloco-a-Bloco.

A transmissão com confirmação por conjunto de blocos considera um certo número de

Blocos, dentre o total, que formam uma espécie de "janela" de dados, como a figura abaixo mostra:

Transmissão com confirmação por conjunto de blocos.

SENAI-SP 36/67

Redes de Automação – Treinamento Petrobrás

Ao final da transmissão da janela , o

Receptor envia a confirmação ou não dos blocos recebidos, após o que o Transmissor procede à retransmissão apenas dos blocos com erros, ou seja, a retransmissão só é feita para os blocos errados, e não para a janela toda.

Este método exige maior habilidade do programador, pois o controle de seqüência de janelas é mais sofisticado.

Trecho de uma sessão de transmissão.

Na transmissão com confirmação bloco-a-bloco, o Receptor realiza uma confirmação a cada bloco recebido; assim, no caso de erro, realiza-se apenas a retransmissão do mesmo.

Uma transmissão que utiliza este método é mais lenta que a anterior, porém, é mais fácil de implementar.

SENAI-SP 37/67

Redes de Automação – Treinamento Petrobrás

Transmissão com confirmação bloco-a-bloco.

Encerramento da Sessão Esta parte do Protocolo deve trabalhar com as tarefas pertinentes à desconexão ou lógica estabelecida, liberando os canais de comunicação, memória alocada, fechando arquivos e tarefas afins.

Exemplo de Transmissão Vamos simular uma sessão de transmissão, utilizando os caracteres ASCII já vistos e os conceitos até agora estudados.

Sessão de Abertura Esta parte do protocolo deve obter a certeza da ligação entre Transmissor e Receptor; no exemplo da figura abaixo, isto é obtido pelo envio do caracter ENQ pelo Transmissor até que se obtenha uma resposta positiva do Receptor, no caso um ACK.

Este procedimento é chamado também de "sincronização", pois permite que ambos os lados do canal de comunicação preparem-se para o início da transmissão de dados propriamente dita.

SENAI-SP 38/67

Redes de Automação – Treinamento Petrobrás

Sessão de abertura.

Sessão de Transmissão

Uma vez estabelecida a ligação entre Tx e Rx, deixamos a sessão de Abertura e adentramos na sessão de Transmissão.

A figura abaixo mostra um trecho dela, note que o protocolo utilizado é o de confirmação por bloco, observe também o procedimento de retransmissão de pacote com erro (pacote # 6).

Sessão de transmissão.

SENAI-SP 39/67

Redes de Automação – Treinamento Petrobrás

Sessão de Encerramento

Após certificar-se do recebimento correto do último bloco de dados, o transmissor encerra a sessão de dados, enviando uma série de EOT até que receba o ACK do receptor - a partir daqui encerra-se a transmissão.

Sessão de encerramento.

Resumo

(Parte 7 de 9)

Comentários