盧堯,任曉明(上海電機學院電氣學院,上海 01100)吳勇志,李繼先(菲尼克斯電氣有限公司,江蘇 南京 210000)
智能變電站中PROFINET設備的動態識別
盧堯,任曉明(上海電機學院電氣學院,上海01100)
吳勇志,李繼先(菲尼克斯電氣有限公司,江蘇南京210000)
隨著工業自動化程度不斷提高,PROFINET工業通信網絡變得越來越復雜也更容易出現故障。因此,一個可靠的PROFINET網絡故障診斷顯得尤為重要。為了實現PROFINET網絡拓撲可視化和故障快速定位,本文提出了一種基于SNMP讀取PROFINET網絡設備信息的方法。該方法將解析管理信息庫(MIB)中的MAC地址作為中間介質,使交換機與所連接的I/O設備的名稱和IP地址相關聯,實現交換機網絡與I/O設備的動態識別。此外,PC WORK上開發的軟件工具在PROFINET控制系統上進行試驗,驗證了該方法的可行性。
;SNMP;PROFINET;交換機
PROFINET由PROFIBUS國際組織(PROFIBUS International,PI)推出,是新一代基于工業以太網技術的自動化總線標準。兼容TCP/IP協議的實時以太網,能滿足過程控制、工廠自動化和運動控制實時通信要求,已有的系統無需修改就能集成到PROFINET中,系統具有高度開放性和兼容性。隨著工業自動化以及智能化程度的提高,PROFINET將會在工業以太網的應用得到普及。交換機在PROFINET這條“信息高速公路”起到至關重要的作用,將上層網絡與I/O設備相連。在設備運行過程中,故障發生的時候往往伴隨著網絡拓撲的改變。因此,有必要實時監控以交換機為核心的分布式控制系統,實現網絡拓撲可視化和網絡故障快速定位。
2.1簡單網絡管理協議(SNMP)
SNMP是由一系列規范和協議組成的通過收集到的網絡設備上產生的信息對其進行管理的一種方法。SNMP協議不會因為節點設備的品牌或者型號不同而對其不能進行統一管理,因為其有一個管理不同節點設備的平臺[1]。開通SNMP服務的節點設備可以通過SNMP協議獲取設備的相關配置信息,通過分析節點設備信息的變化就可以對網絡節點設備進行統一管理。
SNMP協議由兩部分構成,即網管工作站(network management station)和網管代理(network management agent)。網管工作站是控制和監視網絡節點的應用程序,代理是運行于各個被管理的網絡節點(主要存在于路由器和交換機)中的進程,它負責收集本設備的各種相關信息。為了便于查詢和管理這些信息,SNMP協議把它們進行分類定義,成為一個設備信息的集合,這就是它所定義的管理信息庫MIB。代理進程把收集到的相關信息都收入MIB庫,這些信息是用來對各個網絡節點之間相互連接關系的判斷依據。網管工作站和代理進程進行通信,SNMP定義了Get Request、Get Next Request、Set Request、Get Response、Trap等五種操作對設備進行信息查詢和參數設置。其協議模型如圖1所示。

圖1 SNMP協議模型
2.2發現和基本配置協議(Discovery and basic Configuration Protocol)
DCP是用于發現網絡中所有PROFINET設備,然后通過控制器(PLC)可以對PROFINET設備進行一系列設置,比如IP地址、默認網關、子網掩碼。所有PROFINET設備只要在物理上連接到網絡,就可以自動獲取通信所必須的設置。
2.3鏈路層發現協議(Link Layer Discovery Protocol)
LLDP是IEEE802.1AB 定義的一種臨近發現協議,用于發現PROFINET網絡中的鄰近設備。這個協議主要是會將自己的信息告訴鄰居設備,與此同時也會得到鄰居設備的詳細信息。LLDP協議首先對信息的公告,然后通過SNMP協議進行傳輸,最后將傳輸的信息保存在管理信息庫MIB中[2]。PROFINET網絡中開通LLDP協議的節點設備在收到其鄰居設備的交互信息時會將這個信息進行一定時間的存儲,以便對網絡的運行狀態進行監測。其原理示意圖如圖2所示。

圖2 LLDP原理示意圖
3.1管理信息庫(MIB)
MIB在概念上來說是一個數據庫,在其里面存放了被管理對象的控制信息和狀態信息,是TCP/IP協議的重要部分。MIB保存了SMI(Structure of Management Information,管理信息結構)定義的網絡節點數據和網絡協議數據,并且可以對每一個數據項進行必要的操作。對象標識符(OID)是SNMP代理提供的具有唯一標識的鍵值,MIB提供數字化OID到可讀文本的映射。通過SNMP操作讀取交換機OID值便可獲得交換機拓撲識別所需的信息,但是由于PROFINET網絡中的I/O設備缺失SNMP代理功能,也就無法直接通過SNMP來獲取PFOFINET網絡中交換機及I/O設備的完整信息。此時,為了實現拓撲可視化需要借助于MAC地址作為過渡環節。因為每臺PROFINET設備的MAC地址都是唯一的,可以采用SNMP采集交換機存儲在MIB中的IP/MAC地址表和MAC地址轉發表。這兩張表在PROFINET網絡識別中起到關鍵作用,在此簡單列出了一些生成拓撲信息圖所必須的信息,如表1所示。

表1 拓撲發現所需要的一些MIB變量
3.2交換機端口對應原理
PROFINET拓撲識別如圖3所示,基于上文所述的協議,可以得到IP地址表,IP/MAC地址表以及MAC地址轉發表。經過解析可以發現四個變量(IP,Name,MAC,Switch-Port)存在三種對應關系。由此可以得到I/O設備拓撲表,使得交換機的端口與所連接的I/O設備之間形成映射[3]。從IP地址表中可以讀取出耦合器的IP為192.168.18,名稱為axl-pn-bk-me。IP/MAC地址表中又能讀取到IP與MAC地址的關系,此時名稱為axl-pn-bk-me的耦合器對應的MAC地址為00:A0:45:8D:B8:B1。在MAC地址轉發表中,與MAC地址相對應的又是交換機的端口Switch-Port。最終借助于相同的MAC地址,將交換機的Switch-Port與端口所連接的I/O設備形成映射。

圖3 交換機端口對應原理示意圖
3.3PROFINET網絡拓撲識別流程

圖4 PROFINET網絡拓撲識別流程
步驟1:解析DCP獲得IP和I/O設備名稱之間的對應關系,并存儲到IP地址表。
步驟2:取源MAC地址和源IP地址或目的MAC地址和目的IP地址,生成IP/MAC地址表。
步驟3:通過S N M P從標準管理信息庫(M I B)中用“dotldTpFdbTable”表中的OID值來獲取交換機的MAC地址轉發表。
步驟4:通過SNMP用LLDP-MIB中的“lldpRemTable”的OID值來獲取交換機LLDP鄰居表,識別交換機之間的拓撲關系,最終生成PROFINET設備拓撲圖,并圖形化顯示拓撲關系和狀態。
步驟5:利用交換機的TRAP機制,實時監聽交換機各端口狀態變更事件(如端口中斷或端口連接),自動觸發上述網絡拓撲動態識別步驟,從而實現PROFINET設備拓撲動態生成及圖形化顯示。
將開發的網絡拓撲識別軟件應用于小型PROFINET控制系統,該系統由三臺管理型交換機、一臺可編程控制器(PLC)和一臺耦合器組成。實驗選用的設備如表2所示,所有的設備均支持PROFINET。

表2 實驗設備信息
拓撲軟件能正確地識別出交換機和所連接的I/O設備間的關系,拓撲圖形可以顯示網絡的連接細節。如上文所提到的名稱為axl-pn-bk-me的耦合器,與根交換機的4號端口相連。編號為sw2的交換機的3號口與根交換機的5號端口相連。模擬sw3與PROFINET網絡中斷,軟件會顯示sw3處出現中斷無法連接。
實驗結果驗證了基于SNMP對PROFINET網絡設備拓撲發現并圖形化顯示的可行性。拓撲構建和圖形可視化技術能夠動態、直觀地反映PROFINET網絡中設備的連接狀態,有助于PROFINET網絡實現快速故障定位。系統生成的拓撲結構圖如圖5所示。

圖5 系統生成的拓撲結構圖
[1]李玉,魏海平,王福威,等.代理服務器SNMP管理的設計與實現[J].石油化工高等學校學報,2004,17(2):94-97.
[2]曾干.基于鏈路層發現協議(LLDP)的物理網絡拓撲發現[J].電腦知識與技術:學術交流,2006,(20):45-46.
[3]張勇.基于SNMP的交換機溫度監控的實現[J].計算機與網絡,2009,35(17):66-68.
盧堯(1991-),江蘇人,碩士研究生,現就讀于上海電機學院,主要研究方向為電氣工程。
任曉明,浙江人,高工,博士,副教授,現職于上海電機學院。
吳勇志,安徽人,工程師,現就職于菲尼克斯電氣(南京)研發工程中心有限公司。
李繼先,山東人,工程師,現就職于菲尼克斯電氣(南京)研發工程中心有限公司。
Dynamic Recognition of PROFINET Equipment in Intelligent Substation
With the continuous improvement of industrial automation,the PROFINET industrial communication network grows in complexity and becomes more vulnerable to errors.Therefore,a reliable PROFINET network diagnosis is getting more and more important.In order to realize the PROFINET network topology visualization and the fast network fault location,this paper proposes an approach for getting the PROFINET network equipment information based on SNMP.This method would parse the MAC address in management information base(MIB)as intermediate medium,making the switch associate with name and IP address of the connected I/O device,realizing the dynamic identification between stitch network and I/O device.Besides,a software tool developed on PC WORK is applied in the PROFINET control system for validating the proposed approach.
SNMP;PROFINET;Switch
B
1003-0492(2016)07-0082-03
TP29