Você está na página 1de 4

06/10/2022 10:25 Protocolo DNP3

Smart Grid- Padrão DNP3


Início Introdução Smart Grid Protocolo DNP3 Referências Perguntas Conclusão

Padrão DNP3

O que é:

O DNP3(Distributed Network Protocol) é um protocolo de comunicação de código aberto e está disponível em www.dnp.org, ele define dois tipos de
estações, uma mestre(master) e outra escrava(outstation), as quais serão abordadas nas próximas seções. Além disso, ele é amplamente utilizado
em Sistemas de Supervisão e Aquisição de Dados (SCADA - Supervisory Control and Data Acquisition), porque ele possibilita a comunicação entre
dispositivos dentro de um sistema de automação como as smart grids. A imagem a seguir retirada de [12] ilustra o funcionamento do DNP3.

Como todo protocolo o DNP3 define um conjunto de regras para que a comunicação entre dispotivos aconteça. O DNP3 é um protocolo para
transmissão de dados de um ponto A para um ponto B, que pode ser feita tanta por comunicação serial quanto IP. Diferente da maioria dos
protocolos que não se preocupam com a qualidade do serviço e trabalham com a ideologia do menor esforço o DNP3 foi desenvovido para otimizar a
comunicação já que deve ser utilizados em um sistema SCADA.

Ele também é dividido em cinco camadas, sendo elas: Camada do usuário (User Layer), Camada de Aplicação DNP3, Função Tansporte DNP3,
Camada de Enlace do DNP3, Camada física do DNP3.

Mestre e Escravo:

As chamadas estações escravas são componentes que coletam informações e transmitem para os computadores com grande poder de processamento
localizados nas centrais, e esses são as chamadas estações mestres, ou seja, "uma estação mestre é qualquer dispositivo com poder de
processamento e armazenamento de dados que interliga dispositivos remotos"[7]. A paritr dos dados coletados pelas estações escravas eles podem
determiar qual ação deve ser tomadas para o funcinamento do sistema. Portanto, a função do DNP3 é permitir a comunicação entre essas duas
categorias de dispositivos.

Topologias

Dentre as topologias possíveis destacam-se: ponto-a-ponto, ponto-multiponto, hierárquica e concentrador de dados. A imagem a seguir retirada de
[4] ilustra cada uma delas:

https://www.gta.ufrj.br/ensino/eel879/trabalhos_vf_2014_2/lyang/dnp3 1/4
06/10/2022 10:25 Protocolo DNP3

Na configuração ponto-a-ponto um estação mestre comunica-se com uma estação escrava, a conexão normalmente é feita através de uma conexão
dedicada ou pela linha telefônica.

Já na Multi-ponto uma estação mestre comunica-se com várias estações escravas, entretanto isso não é feito simultaneamente, ou seja, a estação
mestre comunica-se com uma de cada vez. A comunicação entre os dispositivos é feita dessa maneira para que a estação mestre faça requerimentos
a uma determinada estação escrava e envie outras requisições basedo na resposta da primeira. A conexão normalmente é feita través de linhas
telefônica, fibra ótica ou por frequências de rádio.

Já na Hierarquica pode haver várias estções mestres e escravas, porém, cada estação escrava deve respeitar apenas a relação com a sua estação
mestre, com isso, existem diversas relações mestre-escravo independentes entre si.

Por último temos a topologia Concentradora de Dados, nela vemos uma mistura entre o Multi-ponto e a Hierárquica, já que ainda há a ideia de
independência entre uma relação mestre-escravo, mas nessa estrutura cada estação mestre pode ter mais de uma estação escrava como na
configuração Multi-ponto.

As 5 camadas

Como já citado nas seções anteriores o DNP3 é composto por 5 camadas, as quais serão descritas nessa seção. A imagem a seguir retirada de [4]
ilustra a organização das camadas.

https://www.gta.ufrj.br/ensino/eel879/trabalhos_vf_2014_2/lyang/dnp3 2/4
06/10/2022 10:25 Protocolo DNP3

Camada de Enlace

Ela recebe e envia pacotes DNP3, e graças a ela a camada de transporte é confiável, pois é ela quem detecta possíveis erros nos pacotes como a
duplicidade. Os erros só podem ser encontrados devido ao formato dos frames do DNP3, que como a maioria dos pacotes é divido em cabeçalho e
carga útil, como demonstra a imagem a seguir retirada de [4]:

O parâmetro 'Sync' contém dois bytes e serve para identificar o início do frame. 'Lenght' indica o tamanho restante de octetos do frame sem incluir o
octeto do 'CRC'. Já o 'Link Control' é utilizado para coordenadar as ações dos emissores e dos receptores.'Destination Address' contém o endereço de
destino e o 'Source Address' o endereço do emissor. 'CRC' contém informações para detectar erros. Ainda existe um parâmetro opcional 'Link Layer
Confirmation', com ele ativo uma mensagem é enviado ao disposito que enviou o pacote confirmando o recebimento. O tamanho máximo de um
frame DNP3 é 292 octetos (incluindo o header).

Camada de Transporte

Na realidade ela é incorporada na camada de aplicação, a sua função é garantir a transmissão de pacotes, no disposito transmissor ela pode é
responsável em dividor um pacote caso ele ultrapasso o tamanho máximo de 292 octetos do Frame. Apesar da sua importância ela ocupa apenas um
octeto.

Camda de Aplicação

Aqui operam as aplicações do DNP3, entretanto, as mensagens dessa camada possuem um tamanho entre 2048 e 4096 bytes, portanto, é necessário
que elas sejam quebradas em diversos pacotes, uma mensagem de 2048 bytes deve ser dividida em 9 frames por exemplo. Embora essa divisão nos
faça pensar que a comunição seria prejudicada já que seria necessário um processamento para dividir cada mensagem a prática nos mostra que na
reliadade em ambientes com alto ruído esse procedimento tem mais sucesso que o envio de uma grande mensagem única.

Segurança e Autenticidade

Esse é o maior desafio do protocolo e uma das partes mais complexas da sua implementação, portanto apresentarei apenas uma introdução. Como
ele atua em sistemas de monitoramente de serviços importantes como as smart
grids é fundamental que ele esteja protegido contra possíveis

https://www.gta.ufrj.br/ensino/eel879/trabalhos_vf_2014_2/lyang/dnp3 3/4
06/10/2022 10:25 Protocolo DNP3
ataques. O sistema de segurança e autenticação é implementado na camada de aplicação e é baseado na ideia de "Message Authentication Code"
(MAC) e "pre-shared key" já que não ocorre encriptação de dados.

Um algoritmo MAC é um algoritmo matemático que recebe como entrada uma chave que deve ser pré-compartilhada e uma mensagem e gera como
saída uma 'hash', então o receptor que já possui a chave e conhece o MAC pode vereificar a autenticidade da mensagem e se ela foi alterado no
caminho. A imagem a seguir retirada de [14] ilustra o funcionamento de um algoritmo MAC.

INÍC IO | INTRODUÇ ÃO | SMART GRID | PADRÃO DNP3 | REFERÊNC IAS | PERGUNTAS | C ONC LUSÃO |
WEBSITE TEMPLATE BY HTML5 |C OPYRIGHT © SIMPLESTYLE_5 | C SS | SIMPLE WEB TEMPLATES BY HTML5

https://www.gta.ufrj.br/ensino/eel879/trabalhos_vf_2014_2/lyang/dnp3 4/4

Você também pode gostar