przegląd protokołu komunikacyjnego DNP3

wykorzystanie otwartych standardów komunikacji do kontroli Nadzorczej i akwizycji danych (SCADA) jest dobrze ugruntowane w coraz większej liczbie sektorów użyteczności publicznej i przemysłu na całym świecie. Przyniosło to znaczące korzyści we wdrażaniu i eksploatacji systemu.

DNP3 jest jednym z najbardziej udanych otwartych standardów SCADA przyjętych na całym świecie. W szczególności Sektor Wodny przyjął DNP3 dla komunikacji SCADA na szeroką skalę. Coraz częściej wykorzystuje się DNP3 w sektorach gazu i ropy naftowej.

koncepcja DNP3

DNP3 jest często źle rozumianym terminem, o którym być może słyszałeś, mówiąc o SCADA i systemach telemetrycznych.

zamieściliśmy tutaj kilka informacji, aby spróbować demystify DNP3 dla tych, którzy nie są tak technicznie doświadczonych z systemami telemetrycznymi. DNP oznacza Distributed Network Protocol.

po pierwsze, użyjemy analogii dwóch ludzi komunikujących się, aby pomóc zrozumieć, gdzie pasuje DNP3.

kiedy komunikujemy się między sobą, możemy korzystać z wielu różnych mediów komunikacyjnych, takich jak walkie talkie lub radio dwukierunkowe, stacjonarna linia telefoniczna, linia telefonii komórkowej lub być może przez Internet za pomocą skype lub podobnego. Podczas gdy medium, którego używamy, może się zmienić, konieczne będzie, abyśmy porozumiewali się tym samym językiem, tj. angielskim.

kiedy mówimy o komunikacji wokół naszych systemów SCADA i telemetrii, możemy również użyć różnych metod komunikacji, takich jak kabel Ethernet, radio i publiczne systemy telefoniczne, tak jak w przypadku komunikacji dwóch ludzi.

w tym przypadku jednak musimy również użyć tego samego języka, a językiem, którego zwykle używamy, jest DNP3.

tak więc, kiedy ktoś odnosi się do DNP3, odnosi się do urządzeń językowych i maszyn SCADA, które mówią, a nie do medium komunikacyjnego, którego używają, jak radio.

to jest powszechne błędne przekonanie dla ludzi, którzy nie są technicznie jasni na DNP3, więc miejmy nadzieję, że ta analogia wyjaśni rzeczy.

DNP3

DNP3 (Distributed Network Protocol) to grupa protokołów. Odgrywa ważną rolę w systemach SCADA, gdzie jest używany między komponentami systemu. Protokół został specjalnie opracowany, aby RTU mogły ze sobą rozmawiać

DNP3 jest oparty na modelu obiektowym, który znacznie zmniejsza mapowanie bitowe danych, które jest tradycyjnie wymagane przez inne mniej zorientowane obiektowo protokoły. Zmniejsza to również szeroką rozbieżność paradygmatów monitorowania stanu i kontroli, które zwykle występują w protokołach, które praktycznie nie dostarczają predefiniowanych obiektów.

puryści tych alternatywnych protokołów nalegaliby, aby każdy wymagany obiekt mógł być „zbudowany” z istniejących obiektów.

posiadanie pewnych wstępnie zdefiniowanych obiektów sprawia, że DNP3 jest nieco wygodniejszym szkieletem projektowania i wdrażania dla Inżynierów i techników SCADA.

DNP3 (Distributed Network Protocol) to zestaw protokołów komunikacyjnych stosowanych pomiędzy komponentami w systemach automatyki procesowej. Jego główne zastosowanie znajduje w instalacjach takich jak przedsiębiorstwa elektryczne i wodne. Zastosowanie w innych branżach nie jest powszechne.

został opracowany do komunikacji między różnymi typami urządzeń do akwizycji danych i sterowania. Odgrywa kluczową rolę w systemach SCADAsystems, gdzie jest używany przez stacje główne SCADA (zwane centrami sterowania), Zdalne Terminale (RTU) i inteligentne urządzenia elektroniczne (IED). Służy przede wszystkim do komunikacji między stacją nadrzędną a RTU lub IED.

ICCP, protokół komunikacyjny Inter-Control Center (część IEC 60870-6), jest używany do komunikacji między stacjami nadrzędnymi.

Protokół sieci rozproszonej Komunikacja

co to jest DNP3?

DNP3 jest protokołem komunikacyjnym używanym w systemach SCADA / „zdalnego monitorowania”. Stał się bardzo popularny, ponieważ jest „otwarty”. Każdy producent może opracować sprzęt DNP3, który jest kompatybilny z innymi urządzeniami DNP3.

DNP3 używa modelu Master / Remote.

DNP3 jest zwykle używany między centralnymi mistrzami i szeroko rozprzestrzenionymi. Mistrz (pomyśl „Centrum Operacyjne”) łączy człowieka (Ciebie) i system monitorowania. Pilot (pomyśl „stacja podrzędna”) zapewnia interfejs między urządzeniem nadrzędnym a rzeczywistym urządzeniem(urządzeniami) monitorowanym lub kontrolowanym.

zarówno master, jak i remote używają biblioteki wspólnych obiektów do wymiany danych. Protokół DNP3 może być niezawodnie używany na nośnikach, które mogą podlegać hałaśliwym zakłóceniom.

DNP3 jest otwartym, inteligentnym, solidnym i wydajnym nowoczesnym protokołem SCADA. Może

  • żądać i odpowiadać wieloma typami danych w pojedynczych wiadomościach,
  • segmentować Wiadomości do wielu ramek, aby zapewnić doskonałe wykrywanie i odzyskiwanie błędów,
  • zawierać tylko zmienione dane w wiadomościach odpowiedzi,
  • przypisywać priorytety do pozycji danych i żądać pozycji danych okresowo na podstawie ich priorytetu,
  • odpowiadać bez żądania (niechciane),
  • obsługa synchronizacji czasu i standardowego formatu czasu,
  • zezwalaj na wiele Masterów i operacji peer-to-peer,
  • i Zezwalaj na definiowane przez użytkownika obiekty, w tym plik przeniesienie.

jak komunikują się elementy DNP3?

DNP3 używa 27 podstawowych kodów funkcyjnych do wymiany danych między Masterami (pomyśl „centrum sterowania”) i pilotami (pomyśl „pompa stoczni”). Niektóre z tych kodów funkcji umożliwiają mistrzowi żądanie i odbieranie informacji o statusie Z Pilota. Inne kody funkcji umożliwiają mistrzowi zmianę ustawień pilota.

inne kody funkcji są zdefiniowane dla mistrza DNP3 do sterowania pilotem-lub bieg obok pilota. Dostarczany jest jeden kod funkcji umożliwiający zdalnemu reagowanie niechcianą wiadomością na określone zdarzenia, które występują na jego obszarze.

jak widać, większość wiadomości są wydawane przez menedżera DNP3. Ponieważ Niezamówiona wiadomość może być inicjowana przez pilota, zwykle jest używana do zgłaszania alarmów.

to powiadamia Master DNP3, gdy tylko pojawi się stan alarmu, zamiast czekać na następne żądanie.

zrozumienie Biblioteki obiektów DNP3.

Framework DNP3 zawiera bibliotekę obiektów używanych w wielu systemach SCADA. Ta Biblioteka jest bezpłatna dla członków grupy użytkowników DNP. Odwiedź www.dnp.org po więcej. Te standardowe obiekty obejmują wejścia binarne. Będą one zgłaszać rzeczy, które mają dwa stany; zasilanie jest włączone lub wyłączone, panel dostępu jest otwarty lub zamknięty.

Innym popularnym obiektem jest Wejście analogowe, które służy do raportowania rzeczy, które mają zakres wartości. Prędkość wentylatora wyciągowego może wynosić od 40 do 400 obr. / min. Główne zasilanie może wynosić od 110 do 128 VAC.

ta biblioteka ułatwia producentowi zaprojektowanie zdalnego respondera DNP3 w celu użycia tych typowych obiektów do raportowania do nadrzędnych dostawców. Ułatwia to również mistrzom integrację danych zebranych z pilotów i prezentowanie ich dla Ciebie.

bez tych ram wspólnych obiektów producenci muszą opracować własny model raportowania statusu i zapewniania możliwości kontroli. Modele te, często bardzo różne, muszą być następnie „zestawione” w wzorce i przekształcone w jakiś rodzaj wspólnych obiektów dla efektywnego zarządzania.

innym narzędziem często spotykanym w tych bardziej „otwartych” frameworkach jest własny interfejs lub moduł tłumaczenia do dostępu i sterowania pilotem.

obiekty w bibliotece DNP3 są podzielone na grupy i odmiany. Na przykład Grupa wejść analogowych ma sześć wariantów, aby dostarczyć 16 lub 32-bitowe wartości całkowite lub zmiennoprzecinkowe z bitmapą stanu lub bez niej.

Analogowa Grupa zdarzeń ma osiem odmian do dostarczania 16 lub 32-bitowych wartości całkowitych lub zmiennoprzecinkowych ze statusem bitmapy i ze znacznikiem czasu lub bez niego.

zauważ, że Analogowa Grupa zdarzeń nie zawiera zmian bez bitmapy statusu.

zrozumienie komunikacji warstwowej DNP3

DNP3 wykorzystuje warstwowy model komunikacji:

  • warstwa aplikacji łączy w sobie kilka części. Jest to jednostka danych usługi aplikacji (Asdu). Potem jest spakowany obiekt. W celu utworzenia jednostki danych protokołu aplikacji (APDU) dodano blok informacji sterujących protokołu aplikacji (APCI).
  • warstwa transportowa rozbija APDU na segmenty o maksymalnym rozmiarze 16 bajtów i łączy je z 8-bitowym nagłówkiem kontroli transportu i 16-bitowymi separatorami segmentu CRC w ramkę transportową.
  • warstwa łącza dodaje nagłówek do informacji sterujących i adresowych. Paczka jest już gotowa do dostarczenia.

warstwy te można odwzorować na czterowarstwowy model opracowany przez Departament Obrony (możesz przypomnieć pochodzenie Internetu DoD), pomijając warstwę Internetu DoD.

jeśli pakiet zostanie wysłany przez sieć LAN / WAN, trzy warstwy DNP3 są zwijane w warstwę aplikacji.

zmontowany Pakiet jest owinięty w protokół kontroli transportu (TCP) przez warstwę transportową, która z kolei jest owinięta w Protokół internetowy (IP) przez (nieco oczywistą) warstwę internetową.

User Datagram Protocol (UDP) może być również używany, ale przedstawia pewne dodatkowe problemy związane z niezawodnym dostarczaniem w zatłoczonych sieciach.

czwarta warstwa to warstwa interfejsu sieciowego, w której zmontowany Pakiet jest faktycznie połączony z jakimś rodzajem nośnika transportowego (na przykład skrętką miedzianą, współosiowym RG58 lub światłowodowym).

ten wielowarstwowy model może wydawać się nieco mylący, ale skutecznie izoluje zadania komunikacyjne i ostatecznie pomaga w projektowaniu i wdrażaniu sieci.

aby pokazać ten warstwowy model, spójrzmy na pojedyncze żądanie odczytu DNP3 przez sieć LAN. Master DNP3 chce poznać stan Zasilania Zdalnego I przygotowuje komunikat żądania odczytu dla tego obiektu.

po przejściu przez wszystkie trzy warstwy DNP3 wiadomość jest przekazywana do warstwy transportowej TCP/UDP. Warstwa transportowa dodaje blok danych, który identyfikuje Port główny i port, w którym oczekuje, że zdalny proces DNP3 będzie nasłuchiwał wiadomości. Pakiet jest następnie przekazywany do warstwy IP.

tutaj dodaje się blok danych zawierający adresy IP i adresów dostępu do mediów Master i Remote. Następnie Pełny Pakiet jest przekazywany do warstwy interfejsu sieciowego.

warstwa interfejsu sieciowego sprawdza dostęp i dostępność mediów. Następnie umieszcza pakiet na nośniku do transmisji.

po przejściu przez mosty i routery (coś w rodzaju „nad rzeką i przez las”) w oparciu o informacje o IP, pakiet dociera do pilota.

tutaj przechodzi przez te same cztery warstwy w odwrotnej kolejności, jak u mistrza. Po pierwsze, jest ściągany z nośnika przez warstwę interfejsu sieciowego. Po sprawdzeniu, czy pakiet jest nienaruszony i poprawny, warstwa interfejsu sieciowego przekazuje go do warstwy IP.

warstwa IP sprawdza dostęp do mediów i adres IP i przekazuje je do warstwy tcp/UDP, gdzie port docelowy jest sprawdzany dla podłączonych aplikacji. Jeśli aplikacja nasłuchuje na porcie docelowym, Pakiet jest przekazywany do warstwy aplikacji. Jeśli aplikacja nasłuchująca jest zdalnym procesem DNP3, żądanie odczytu jest przekazywane.

przechodzi przez trzy warstwy, aby sprawdzić żądanie i zobaczyć, jakie informacje należy zebrać. Następnie zdalna odpowiedź podąża tą samą ścieżką w odwrotnym kierunku, aby dotrzeć do mistrza.

dnp3-communication

komunikat DNP3 przechodzi przez warstwy protokołu zarówno u menedżera, jak i agenta. Każda warstwa odpowiada na konkretne zadanie komunikacyjne.

pomoc w rozwiązywaniu problemów

znajomość tego warstwowego modelu DNP3 ułatwia znajdowanie i rozwiązywanie problemów sieciowych. Kiedy pojawia się problem, można po prostu wyśledzić go w dół, z jednego końca, do drugiego i w górę. Łącze LAN/WAN i lampki stanu wskazują na warstwę interfejsu sieciowego. ICMP echo requests and responses (pingi) dostarczają pewnych informacji dotyczących prawidłowego funkcjonowania warstwy IP.

wskaźniki przetwarzania DNP3 mogą być użyte do weryfikacji przejścia pakietu DNP3 przez warstwę TCP/UDP i funkcjonowania warstwy aplikacji.

każdy krok może być zweryfikowany niezależnie, dopóki wszystkie kroki nie będą działać poprawnie w komunikacji end-to-end.

zalety DNP3

DNP3 zapewnia multipleksowanie, fragmentację danych i wiele innych.

DNP3 jest protokołem warstwy 2. Oznacza to, że przewiduje:

  • fragmentacja danych.
  • sprawdzanie błędów.
  • kontrola linków.
  • sortowanie priorytetów.

zapewnia również usługi adresowania danych użytkownika w warstwie 2.

DNP3 umożliwia mówienie różnym urządzeniom w systemach automatyki procesowej. Protokół DNP3 jest szeroko stosowany w telemetrii elektrycznej, gazowej i wodnej przez przedsiębiorstwa użyteczności publicznej. Możliwe jest również wykorzystanie DNP3 w innych obszarach, choć nie jest to tak powszechne.

Komunikacja SCADA wykorzystuje protokół DNP3.

systemy SCADA wykorzystują protokół DNP3 do stosowania pomiędzy komponentami systemu. Protokół DNP3 umożliwia komunikację pomiędzy master systemu SCADA, RTU i inteligentnymi urządzeniami elektronicznymi (IED).

DNP3 został opracowany w celu zaspokojenia potrzeby standardowego protokołu, który pozwoliłby komponentom systemu SCADA opracowanym przez różnych dostawców rozmawiać. Używając IEC 60870-5 jako bazy, DNP3 został stworzony jako otwarty protokół do użycia w tych przypadkach.

protokół ten był dostępny do szybkiego użycia w sieciach SCADA i spełniał wymagania określone przez organizacje Północnoamerykańskie.

DNP3 zapewnia niezawodność komunikacji dla mediów.

DNP3 zapewnia niezawodność komunikacji w trudnych warunkach mediów. Protokół jest w stanie uniknąć zniekształcenia przez EMI, komponenty systemu legacysystem i słabą transmisję ze względu na format komunikacji DNP3.

chociaż protokół ma sprawdzanie błędów, DNP3 nie jest zabezpieczony. Jest to ważna kwestia podczas planowania SCADA.

dlaczego jest tak popularny ?

istnieje kilka powodów, dla których DNP3 jest tak potężny i powszechnie stosowany w systemach telemetrycznych:-

  1. jest to standard i otwarty. Oznacza to, że” język ” jest łatwo dostępny, a wszystkie urządzenia DNP3 komunikują się tym samym językiem. Wczesne RTU komunikowały się przy użyciu zastrzeżonych protokołów, co oznaczało, że język, w którym się komunikowały, był znany tylko innym produktom produkowanym przez tego samego dostawcę. Obecnie wiele urządzeń jest wielojęzycznych, ponieważ będą komunikować się za pomocą zastrzeżonego protokołu, ale także umożliwiają komunikację za pomocą protokołu DNP3, zostało to zrobione przez wielu dostawców, aby umożliwić stopniową aktualizację ich sieci do DNP3 w czasie.
  2. jest to protokół routingu. Jest to szczególnie ważna i kluczowa cecha protokołu DNP3, ponieważ może komunikować się za pośrednictwem różnych sieci komunikacyjnych, aby dotrzeć do miejsca przeznaczenia wiadomości. Na przykład maszyna SCADA może być podłączona do połączenia Ethernet, ale RTU może być podłączone do połączenia radiowego, DNP3 może być przekierowany z połączenia Ethernet do połączenia radiowego za pośrednictwem pośredniego RTU. Brzmi to skomplikowanie, ale w prostych słowach byłoby tak, jakbyś rozmawiał przez połączenie telefoniczne ze swoim przyjacielem, a oni przekazywali wiadomość komuś przez pobliską krótkofalówkę. Moc DNP3 polega na tym, że można to zrobić bardzo łatwo w większości nowoczesnych RTU bez potrzeby skomplikowanego mapowania We/Wy.
  3. dobrze wykorzystuje kanał komunikacyjny. DNP3 został zaprojektowany tak, aby mógł działać zarówno w szybkich sieciach Ethernet, jak i w sieciach radiowych o niskiej prędkości i jest bardzo dobry w „komunikacji tylko wtedy, gdy jest to konieczne”. Na przykład, gdy pompa włącza lub wyłącza DNP3 wyśle wiadomość poprzez powiadomienie SCADA o tej jednej zmianie. Naprawione protokoły ankietowe, takie jak MODBUS, nie są w stanie tego osiągnąć, ponieważ muszą stale aktualizować wszystkie dane przez ankietowanie. Wracając do naszej ludzkiej analogii, to byłoby tak, jakbyś ciągle prosił przyjaciela, aby powiedział ci, co pokazuje sygnalizacja świetlna, w przykładzie protokołu ankietowego przyjaciel ciągle powtarzał zielone, zielone, zielone, zielone, czerwone, czerwone, czerwone co sekundę. Z DNP3 przyjaciel powie Ci tylko, gdy światło się zmieni, zużywając znacznie mniej przepustowości.
  4. wielu przyjaciół naraz. Co ten punkt numer 3 powyżej oznacza, że można prowadzić rozmowy z wieloma przyjaciółmi na raz i to jest rzeczywiście moc DNP3, pozwalając wielu przepompowni, podstacji lub studni gazowych komunikować się w tej samej sieci.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.