Escolar Documentos
Profissional Documentos
Cultura Documentos
Paulo Roberto Pedroso de Oliveira paulo@ascx.com.br prpasc@gmail.com (11) 3378 8600 (11) 9935 9080 http://www.ascx.com.br
Camada de Enlace
Object Library Application Layer Transport Layer Data Link Layer Phisical Layer
Introduo
DNP - Distributed Network Protocol - GE Harris Utiliza camada de enlace do IEC 60870-5-2 Transferido para o grupo DNP em 1993 (www.dnp.org) Dominante na Amrica do Norte Conjunto de Documentao DNP V3.0 Data Link Layer DNP V3.0 Transport Functions DNP V3.0 Application Layer Specification DNP V3.0 Data Object Library
Camadas
Aplicao
Pseudo Transporte
TH
250bytes
TH
250bytes
TH
250 bytes
Enlace
Bloco zero com 10 bytes
TH
...
Formato FT3
At 16 blocos com 18 bytes. O ltimo bloco fica com o nmero de bytes quebrado.
Funes do DNP3
Estticos Referem-se aos valores correntes dos dados em determinado perodo. Classe 0 Eventos Dados que ocorreram mudanas. Estes eventos so classificados em trs classes: 1, 2, e 3
Polled Static
Integridade (Classe 0)
Nvel 1 Nvel 2
Descreve os requisitos do protocolo, ligeiramente maior que Nvel 1, que pode ser implementado tipicamente entre uma estao mestre e um grande IED ou UTR
Nvel 3
Descreve os requisitos do protocolo, maior que Nvel 2, que pode ser implementado entre uma estao de mestre e uma UTR mais avanada
START 05
SOURCE
CRC
Octeto de Controle
1 DIR PRM 0
FCB FCV
23
22
21
20
RES DFC
Funo
Octeto de Controle
DIR: Direo
1 = estao A para estao B 0 = estao B para estao A
RES: Reservado
DIR
PRM=1
FCB
FCV
F3
F2
F1
F0
FUNO 0 2 3 4 9
SERVIO Reset enlace remoto Funo TEST Dados do usurio Dados do usurio Requisita estado enlace
FCV 0 1 1 0 0
DIR
PRM=0
RES
DFC
F3
F2
F1
F0
FUNO 0 1 11 14 15
SERVIO ACK NACK: Enlace ocupado Estado do enlace Servio de enlace inoperante Servio no implementado
Exemplo
RX: 05 64 1E 44 00 00 01 00 16 0D E6 E8 81 00 00 20 02 17 04 0A 01 2F 0A 00 01 65 03 86 65 06 01 4E 0C 03 01 B0 FD 6C 88
Camada de Transporte
TH
1
Bloco 0
At 249 octetos
TH
Bloco 1
TH
Bloco 2
TH
1
Dados
At 292 octetos
Total octetos camada enlace Octetos de dados no cabealho TH - Transport Header Dados do usurio
octetos octeto
octetos octetos
=292 octetos
Transport Header
FIN
7
FIR
6 5 4
SEQUENCE
3 2 1 0
Ainda h quadros para enviar Ultimo quadro da seqncia Primeiro quadro da seqncia No o primeiro quadro da seqncia Nmero de seqncia dos quadros (0-63)
Exemplo
Application Protocolo Data Unit
TH
TH
TH
Exemplo
RX: 05 64 1E 44 00 00 01 00 16 0D E6 E8 81 00 00 20 02 17 04 0A 01 2F 0A 00 01 65 03 86 65 06 01 4E 0C 03 01 B0 FD 6C 88
Camada de Aplicao
Request/Response HEADER
Object HEADER
Dados
...
Object HEADER
Dados
1. Requisies e Respostas podem consistir de 1 ou fragmentos; 2. Cada fragmento deve poder ser processado individualmente
Cabealhos de Aplicao
Request Header
Application Control AC Function Code FC
1 octeto
1 octeto
2 octetos
Response Header
Application Control AC Function Code FC Internal Indications IIN
7 FIR
6 FIN
5 CON
SEQUENCE
Primeiro fragmento Ultimo fragmento Espera confirmao FC = 0 confirma mensagem SEQUENCE Nmero do fragmento 0 a 15 - Respostas a solicitaes do mestre 16 a 31 - Respostas no solicitadas
Exemplos
Caso 1
Mestre
Request CON=0 SEQ=7 Response CON=1 SEQ=7 Unsol Response CON=1 SEQ=24 CONFIRM SEQ=24
Escravo
Caso 2
Mestre
Request CON=1 SEQ=2 CONFIRM SEQ=2 Response CON=1 SEQ=2 CONFIRM SEQ=2
Escravo
Exemplos
Caso 3
Mestre
Request CON=0 SEQ=2 Response FIN=0, FIR=1 CON=1 SEQ=2 CONFIRM SEQ=2 Response FIN=1, FIR=0 CON=1 SEQ=3 CONFIRM SEQ=3 Request SEQ=4
Escravo
Caso 4
Mestre
Request CON=0 SEQ=3 Response CON=1 SEQ=3 Response
Time Out
CON=1 SEQ=3
Escravo
Cdigos de Funo Funes de Controle Select Operate Direct Operate Direct Operate sem reconhecimento
3 4 5 6
0 129 130
Indicaes Internas Primeiro Octeto Informa que uma mensagem de broadcast foi recebida por esta estao Dados Classe 1 disponveis Dados Classe 2 disponveis Dados Classe 1 disponveis Requisio de sincronizao Sada digital em estado local
Bit 0
Indicaes Internas Primeiro Octeto Dispositivo com condio anormal Dispositivo reinicializado
Bit 6 Bit 7
Indicaes Internas Segundo Octeto Funo no implementada Objeto desconhecido Qualidade, intervalo ou valor invalido Estouro do buffer de eventos Operao requerida j em execuo Configurao est corrompida
Request/Response HEADER
Object HEADER
Dados
...
Object HEADER
Dados
Objeto Qualificador
Range
Grupo
Octeto 1
Variao 0=todas
Octeto 2
7
Tamanho ndice
6 5 4 3
Cdigo Qualificador
2 1 0
Tamanho do ndice
objetos sem ndice objetos so prefixados com ndice de 1 octeto objetos so prefixados com ndice de 2 octetos objetos prefixados com ndice de 4 octetos objetos so prefixados com 1 octeto com o tamanho do objeto objetos so prefixados com 2 octetos com o tamanho do objeto objetos so prefixados com 4 octetos com o tamanho do objeto Reservado
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7 8 9
ndices de 1 octeto indicando inicio e fim no campo Range ndices de 2 octetos indicando inicio e fim no campo Range ndices de 4 octetos indicando inicio e fim no campo Range Endereo absoluto de 1 octeto no campo range Endereo absoluto de 2 octetos no campo range Endereo absoluto de 4 octetos no campo range Todos os objetos de um dado tipo (no h Ranger ou ndices) Campo Range: 1 octeto indicando o nmero de ndices e objetos Campo Range: 2 octetos indicando o nmero de ndices e objetos Campo Range: 4 octetos indicando o nmero de ndices e objetos
Cdigos 0 e 3 - Tamanho = 0
Inicio I1
....................
I2
Cdigos 1 e 4 - Tamanho = 0
Inicio I1 Fim I2 I1 I1+1
.......
I2
Cdigos 2 e 5 - Tamanho = 0
Inicio I1 I1 I1+1 I1+2 Inicio I2
................
I2
Cdigos 7 - Tamanho = 0
Quantidade Q
.......................................
PQ-1
Cdigo 7 - Tamanho = 1
Quantidade Q ndice I1 P0 ndice I2 P1
......
ndice IQ
PQ-1
Cdigo 7 - Tamanho = 2
Quantidade Q ndice I1 P0
.....
ndice IQ
PQ-1
Cdigos 8 - Tamanho = 0
...........................
PQ-1
Cdigo 8 - Tamanho = 1
Quantidade Q ndice I1 P0
.................
ndice IQ
PQ-1
Cdigo 8 - Tamanho = 2
Quantidade Q ndice I1 P0 ndice I2 ndice IQ P1 PQ-1
...................................................
Cabealhos de Aplicao
Request Header
Application Control AC Function Code FC
1 octeto
1 octeto
2 octetos
Response Header
Application Control AC Function Code FC Internal Indications IIN
Exemplo
Data Link
Application
FIN Fir Seq 81 = Response
RX:
Header
TH
05 64 1E 44 00 00 01 00 16 0D E6 E8 81 00 00 20 02 17 04 0A 01 2F 0A 00 01 65 03 86 65 06 01 4E 0C 03 01 B0 FD 6C 88
Internal Indication
Qualificador
Quantidade
CRC
Device Profile
Device Profile
Object Coding:
7 6 5 4 3 2 1 0
BS8 [0..7] On-line Restart Communication lost Remote forced data Local forced data Chatter filter Reserved State
= = = = = = = =
BS1 [0] <0, off-line; 1, on-line> BS1 [1] <0, normal; 1, restart> BS1 [2] <0, normal; 1, lost> BS1 [3] <0, normal; 1, forced> BS1 [4] <0, normal; 1, forced> BS1 [5] <0, normal; 1, filter on> BS1 [6] <0> BS1 [7] <0, 1 BIN>
Object Coding:
7 6 5 4 3 2 1 0
BS8 [0..7] On-line Restart Communication lost Remote forced data Local forced data Chatter filter Reserved State
= = = = = = = =
BS1 [0] <0, off-line; 1, on-line> BS1 [1] <0, normal; 1, restart> BS1 [2] <0, normal; 1, lost> BS1 [3] <0, normal; 1, forced> BS1 [4] <0, normal; 1, forced> BS1 [5] <0, normal; 1, filter on> BS1 [6] <0> BS1 [7] <0,1 BIN>
Narrative: This object is only reported when the current value is different than the last recorded or measured value. If the chatter filter is on, this object may only be reported when the new state has remained constant for a certain period of time.
SQ 2
{FLA G C urrent value } FLA G O n-line R estart C om m unication lost R em ote forced data Local forced data O ver-range R eference check R eserved }
= =
={ = = = = = = = =
<0, off-line; 1, on-line> <0, norm al; 1, restart> <0, norm al; 1, lost> <0, norm al; 1, forced> <0, norm al; 1, forced> <0, norm al; 1, over-range> <0, norm al; 1, error> <0>
Exemplo
TX: 05 64 0B C4 01 00 00 00 8C 85 C0 C9 01 1E 02 06 E0 45
RX: 05 64 02 00 8F FD 01 23 00 01 C1 A3 00 00 00 00 FF FF
6F 00 01 65 00 00 FF 00
44 1F B7 01 00 00 FF 00
00 01 6D 00 01 00 00 FF
00 86 01 00 00 00 00 FF
01 65 86 01 00 00 00 00
00 01 65 50 01 00 00 00
CF 90 01 0A 00 00 00 00
9F 0C 6F 01 00 00 00 00
E7 EA 0C 00 00 00 00 00
C9 8C 01 00 00 00 00 00
81 01 33 01 00 00 00 00
04 DF E3 00 00 00 00 00
00 09 90 AC 00 00 00 00
1E 01 0C D7 00 00 00 00
Exemplo
Descrio
Carrier Detect Receive Data Transmit Data Data Terminal Ready Signal Ground Data Set Ready Request to Send Clear to Send Ring Indicator
Sinal
CD RD TD DTR SG DSR RTS CTS RI
Pino
1 2 3 4 5 6 7 8 9
Obrigado !
DNP 3.0
Paulo Roberto Pedroso de Oliveira paulo@ascx.com.br prpasc@gmail.com (11) 3378 8600 (11) 9935 9080 http://www.ascx.com.br