DNP(Distributed Network Protocol,分布式網絡規約)是一種應用于自動化組件之間的通訊協議,常見于電力、水處理等行業。SCADA可以使用DNP協議與主站、RTU、及IED進行通訊。
DNP協議標準由IEEE提出,參考了IEC 870-5、以及其他一些IEC協議。主要為了解決SCADA行業中,協議混雜、沒有公認標準的問題。
DNP協議有一定的可靠性,這種可靠性可以用來對抗惡劣環境中產生的電磁干擾、元件老化等信號失真現象,但不保證在黑客的攻擊下、或者惡意破壞控制系統的情況下的可靠性。
DNP協議提供了對數據的分片、重組、數據校驗、鏈路控制、優先級等一些列的服務,在協議中大量使用了CRC校驗來保證數據的準確性。以下是一些DNP協議的特點:
- DNP3.0規約是一種分布式網絡協議,適用于要求高度安全、中等速率和中等吞吐量的數據通信領域。
- DNP3.0規約以IEC870-5標準為基礎,該規約非常靈活,滿足目前和未來發展的要求,且與硬件結構無關。
- DNP3.0規約采用網絡通信方式。
- DNP3.0規約支持點對點、一點多址、多點多址和對等的通信方式。
- DNP3.0規約支持問答式和自動上報數據傳輸方式。
- DNP3.0規約支持通信沖突碰撞避免/檢測方式,能保證數據傳輸的可靠性。
- DNP3.0規約支持傳送帶時標的量,尤其有利于配電自動化系統采集分時電度值和分析事故原因。
- 靈活采取適當的掃描方式,DNP3.0規約可以在一定程度上實現實時優先級。
協議格式
DNP3.0規約的文本共分4部分:數據鏈路層規約,傳輸功能,應用層規約及數據對象庫。
數據鏈路層規約
數據鏈路層規約文件規定了DNP3.0版的數據鏈路層,鏈路規約數據單元(LPDU)以及數據鏈路服務和傳輸規程。
數據鏈路層采用一種可變幀長格式:FT3。
傳輸功能
這部分定義對于DNP數據鏈路層充當偽傳輸層的傳輸層功能。偽傳輸層功能專門設計用于在原方站和副方站之間傳送超出鏈路規約數據單元(LPDU)定義長度的信息。
傳輸層報頭數據塊
其中:傳輸層報頭——傳輸控制字,1個字節;數據塊——用戶數據,1~249個字節。
應用規約
這部分定義了應用層報文(APDU)的格式。這里,主站被定義為發送請求報文的站,而外站則為從屬設備。被請求回送報文的RTU或智能終端(IEDs)是事先規定了的。在DNP內,只有被指定的主站能夠發送應用層的請求報文,而外站則只能發送應用層的響應報文。
應用報文格式
其中:請求(響應)報頭——標識報文的目的,包含應用規約控制信息(APCI);對象標題——標識后隨的數據對象;數據——在對象標題內的指定類型的數據對象。
####### 應用報文報頭字段的定義
請求報頭分應用控制、功能碼兩個字段。每個字段為8位的字節;響應報頭分應用控制、功能碼、內部信號字3個字段。每個字段也為8位的字節。
對象標題
報文的對象標題制定包含在報文中的數據對象或是被用來響應此報文的數據對象。
DNP3.0 協議是:
DNP(Distributed Network Protocol,分布式網絡規約)是一種應用于自動化組件之間的通訊協議,常見于電力、水處理等行業。SCADA可以使用DNP協議與主站、RTU、及IED進行通訊。
DNP協議標準由IEEE提出,參考了IEC 870-5、以及其他一些IEC協議。主要為了解決SCADA行業中,協議混雜、沒有公認標準的問題。
DNP協議有一定的可靠性,這種可靠性可以用來對抗惡劣環境中產生的電磁干擾、元件老化等信號失真現象,但不保證在黑客的攻擊下、或者惡意破壞控制系統的情況下的可靠性。
DNP協議提供了對數據的分片、重組、數據校驗、鏈路控制、優先級等一些列的服務,在協議中大量使用了CRC校驗來保證數據的準確性。以
下是一些DNP協議的特點:
DNP3.0規約是一種分布式網絡協議,適用于要求高度安全、中等速率和中等吞吐量的數據通信領域。
DNP3.0規約以IEC870-5標準為基礎,該規約非常靈活,滿足目前和未來發展的要求,且與硬件結構無關。
DNP3.0規約采用網絡通信方式。
DNP3.0規約支持點對點、一點多址、多點多址和對等的通信方式。
DNP3.0規約支持問答式和自動上報數據傳輸方式。
DNP3.0規約支持通信沖突碰撞避免/檢測方式,能保證數據傳輸的可靠性。
DNP3.0規約支持傳送帶時標的量,尤其有利于配電自動化系統采集分時電度值和分析事故原因。
靈活采取適當的掃描方式,DNP3.0規約可以在一定程度上實現實時優先級。