摘 要:本文探討和研究了基于beowulf集群的“透明工廠型”工業(yè)以太網(wǎng)的構(gòu)架以及關(guān)鍵技術(shù),對“透明工廠型”工業(yè)以太網(wǎng)的研究和建設(shè)提供了一套可行切實(shí)的解決方案,對相關(guān)的研究具有指導(dǎo)意義。
關(guān)鍵詞:beowulf,集群,透明工廠,工業(yè)以太網(wǎng)
1、 前言
以太網(wǎng)是一種成功的信息網(wǎng)絡(luò)技術(shù),進(jìn)入市場已近30年了,在辦公自動化獲得了廣泛的應(yīng)用。以太網(wǎng)具有成本低、穩(wěn)定和可靠等諸多優(yōu)點(diǎn),它已經(jīng)成為最受歡迎的通信網(wǎng)絡(luò)之一。以太網(wǎng)的典型通信特點(diǎn)是隨機(jī)接入、載波偵聽、碰撞檢測和競爭沖突。
然而以太網(wǎng)是為面向辦公自動化等實(shí)時性要求不高的領(lǐng)域而設(shè)計的,傳輸報文具有排隊(duì)延遲不確定的缺陷,無法保證數(shù)據(jù)傳輸?shù)膶?shí)時性要求,所以無法在工業(yè)控制中得到有效的使用。隨著管控一體化技術(shù)的發(fā)展,迫切要求能將管理層的以太網(wǎng)向下延伸,直到設(shè)備層,形成一個統(tǒng)一的無需數(shù)據(jù)轉(zhuǎn)換的透明的數(shù)據(jù)鏈路。因此,工業(yè)以太網(wǎng)技術(shù)已經(jīng)成為人們關(guān)注的重點(diǎn),本文研究了基于beowulf集群的“透明工廠型”工業(yè)以太網(wǎng)構(gòu)建的有關(guān)問題,為高性能、低成本、高數(shù)據(jù)處理能力和實(shí)時性能的工業(yè)以太網(wǎng)建設(shè)提供了一套簡單便捷的解決方案。
2、 “透明工廠型”工業(yè)以太網(wǎng)
2.1 “透明工廠”及其特點(diǎn)
透明工廠是21世紀(jì)提出的一個創(chuàng)造性的戰(zhàn)略,它將構(gòu)建互連網(wǎng)基礎(chǔ)的技術(shù)與施耐德自動化的產(chǎn)品融合。其宗旨是將現(xiàn)存的、開放的和已經(jīng)證實(shí)的技術(shù)引入市場,從而消減專有系統(tǒng)的集成障礙。透明工廠的實(shí)施將大大減少系統(tǒng)集成的工作量,也會減少從設(shè)計和概念到實(shí)際運(yùn)行產(chǎn)品的時間?!巴该鞴S”是建立在新的信息技術(shù)和通訊技術(shù)基礎(chǔ)上的,這些技術(shù)包括OPC開放、軟件標(biāo)準(zhǔn)和Web技術(shù)等。透明工廠中的一個顯著的特點(diǎn)是將Web訪問的功能擴(kuò)展到I/O級,從而實(shí)現(xiàn)遠(yuǎn)程調(diào)解I/O的功能,而不僅僅是停留在訪問I/O信息。
2.2 “透明工廠型”工業(yè)以太網(wǎng)及其實(shí)質(zhì)分析
“透明工廠”型工業(yè)以太網(wǎng)是工業(yè)以太網(wǎng)的完全解決方案,也就是說企業(yè)網(wǎng)從上到下完全是由以太網(wǎng)組成。實(shí)現(xiàn)了整個工廠對用戶來說是“透明”的,如圖1是傳統(tǒng)混合型工業(yè)以太網(wǎng)和“透明工廠型”工業(yè)以太網(wǎng)的比較。
如圖1左側(cè)a的傳統(tǒng)混合型工業(yè)以太網(wǎng)其實(shí)是一種折中的方案,也是比較容易實(shí)現(xiàn)的方案,是目前許多公司的工業(yè)網(wǎng)絡(luò)架構(gòu)模型。在工業(yè)現(xiàn)場的管理層和車間層使用以太網(wǎng),向上可以和Internet連接,向下可以讀取車間里各個控制子系統(tǒng)的狀態(tài)信息。在設(shè)備層,仍然采用獨(dú)自的現(xiàn)場總線技術(shù),如CAN、Profibus、ASI 等。它們與以太網(wǎng)之間通過專用的網(wǎng)關(guān)連接。這種方案可以最大限度地利用現(xiàn)有以太網(wǎng)所能提供的通信功能。每個網(wǎng)關(guān)是以太網(wǎng)的節(jié)點(diǎn),同時也是下面子系統(tǒng)的主站。網(wǎng)關(guān)可以實(shí)現(xiàn)對子系統(tǒng)實(shí)時的控制,并把子系統(tǒng)內(nèi)部的信息進(jìn)行預(yù)處理,只把一些重要的信息按照TCP/IP 的幀的格式發(fā)送到以太網(wǎng)上。
這種方案的好處是避免以太網(wǎng)直接對傳感器和執(zhí)行器等底層設(shè)備的訪問,減少了以太網(wǎng)上實(shí)時數(shù)據(jù)的傳送量,減少了沖突的機(jī)會,在一定程度上避免了在惡劣的工業(yè)條件下傳輸實(shí)時數(shù)據(jù)出現(xiàn)遲延的問題。但這種模型還只是一個過渡型的結(jié)構(gòu),因?yàn)樵O(shè)備現(xiàn)場總線的繁多協(xié)議同樣影響著終端用戶的使用,而現(xiàn)場總線的統(tǒng)一開放的思想還是沒有完全實(shí)現(xiàn)。同時由于在工業(yè)環(huán)境下,以太網(wǎng)的可靠性和數(shù)據(jù)處理能力都會收到影響,在一定程度有所降低,在電磁兼容性方面也有待于進(jìn)一步提高
基于新型的“透明工廠型”工業(yè)以太網(wǎng)其網(wǎng)絡(luò)架構(gòu)模型如圖1右側(cè)b所示,其整個網(wǎng)絡(luò)是基于統(tǒng)一的協(xié)議,所以用戶可對從高層的管理層到底層的設(shè)備層的任一個設(shè)備進(jìn)行訪問,而無需知道這種訪問是如何進(jìn)行的。普通的傳感器、執(zhí)行器通過工業(yè)以太網(wǎng)I/O模塊連接到以太網(wǎng)上,管理層的主機(jī)可采用IP訪問的方式與各個設(shè)備進(jìn)行通信。這種方案的優(yōu)點(diǎn)是現(xiàn)場監(jiān)控網(wǎng)絡(luò)的全面解決方案,但實(shí)現(xiàn)起來還有許多技術(shù)問題需要解決。主要要對以太網(wǎng)進(jìn)行面向?qū)崟r控制的修改,還要在網(wǎng)絡(luò)層以上引入實(shí)時控制算法,彌補(bǔ)以太網(wǎng)在傳輸確定性數(shù)據(jù)方面先天性的不足。
而Beowulf 集群技術(shù)解決了如何通過使用普通PC來達(dá)到高性能、高實(shí)時的計算系統(tǒng)的問題。近年來,集群系統(tǒng)迅速發(fā)展,主要是因?yàn)榧航Y(jié)點(diǎn)為工作站系統(tǒng)的處理性能越來越強(qiáng),更快的處理器和更高效的多CPU機(jī)器已大量進(jìn)人市場,以及局域網(wǎng)新技術(shù)和新協(xié)議的引入,集群結(jié)點(diǎn)間的通信能獲得更高的帶寬和較小的延遲,集群系統(tǒng)比傳統(tǒng)的并行計算機(jī)更易于融合到已有的網(wǎng)絡(luò)系統(tǒng)中去。集群開發(fā)工具日臻成熟,其價格也愈加便宜并且易于構(gòu)建。另外集群的可擴(kuò)展性良好,結(jié)點(diǎn)的性能也很容易通過增加內(nèi)存或改善處理器性能獲得提高。因此采用集群技術(shù)來解決“透明工廠型”工業(yè)以太網(wǎng)的實(shí)施的難題已經(jīng)成為可能。下面討論如何通過建立beowulf集群系統(tǒng)來大大提高工業(yè)以太網(wǎng)的計算機(jī)處理性能和數(shù)據(jù)傳輸能力,解決工業(yè)以太網(wǎng)中實(shí)時性能的關(guān)鍵問題,來實(shí)現(xiàn)“透明工廠型”工業(yè)以太網(wǎng)的問題。
[align=center]

(a) 傳統(tǒng)混合型工業(yè)以太網(wǎng)

(b) “透明工廠”型工業(yè)以太網(wǎng)
圖1、傳統(tǒng)混合型工業(yè)以太網(wǎng)與“透明工廠”型工業(yè)以太網(wǎng)比較[/align]
3、 Beowulf 集群系統(tǒng)
集群,是由一組獨(dú)立的計算機(jī)系統(tǒng)構(gòu)建的一個松耦合的多處理機(jī)系統(tǒng),系統(tǒng)中各進(jìn)程借助網(wǎng)絡(luò)實(shí)現(xiàn)通信、共享內(nèi)存?zhèn)鬟f信息,從而實(shí)現(xiàn)分布式并行計算。一組廉價的微機(jī)協(xié)同工作可以達(dá)到超級計算機(jī)的性能。目前,集群已經(jīng)成為各高性能計算機(jī)廠商的研究熱點(diǎn)。
Beowulf的定義至今還有爭議,但大多數(shù)人已經(jīng)贊同將用市售微機(jī)構(gòu)建的廉價計算集群的稱為Beowulf系統(tǒng)。第一個Beowulf于1994年誕生于美國航空航天局的戈達(dá)德空間飛行中心,該中心科學(xué)家Sterling和他的同事,將16臺Intel486微機(jī)用標(biāo)準(zhǔn)以太網(wǎng)連接成一個計算集群,獲得70兆flops的持續(xù)運(yùn)算能力,建造該集群僅費(fèi)4萬美元,而當(dāng)時市場上出售的具有相同性能的超級計算機(jī)約為100萬美元一臺。Beowulf 系統(tǒng)所具有的價格優(yōu)勢是傳統(tǒng)的并行計算機(jī)所無法比擬的。
Beowulf系統(tǒng)除了強(qiáng)大的計算能力和極為優(yōu)越的性價比,還具有其它諸多優(yōu)點(diǎn)。首先,它依賴的都是一些成熟的、容易獲得的計算機(jī)技術(shù)和設(shè)備,不存在技術(shù)上的風(fēng)險。其次,很多構(gòu)建Beowulf系統(tǒng)所用的軟件可以免費(fèi)從Internet網(wǎng)上下載,構(gòu)建方法手冊、幫助文件等都可以在Internet網(wǎng)上獲得,這不但降低Beowulf系統(tǒng)的成本,也使系統(tǒng)的構(gòu)建較為容易。第三、微機(jī)是應(yīng)用最為廣泛,最為廣大科研工作者熟悉的一類計算機(jī),Beowulf系統(tǒng)與現(xiàn)有軟、硬件結(jié)合,允許用戶在一個熟悉的硬件和軟件環(huán)境下開發(fā),調(diào)試和運(yùn)行并行程序,這為使用者帶來了很大的方便。第四、Beowulf系統(tǒng)具有良好的移植性,同時Beowulf系統(tǒng)亦具有良好的可伸縮性,這對系統(tǒng)的構(gòu)建、維護(hù)以及資源的充分利用都十分有利。
4、 基于beowulf集群的“透明工廠型”工業(yè)以太網(wǎng)的研究與實(shí)現(xiàn)
4.1 beowulf集群系統(tǒng)的構(gòu)建
PC集群屬于高性能集群計算、并行計算技術(shù)中的一種,集群構(gòu)建時組成部分可根據(jù)要運(yùn)行的主要應(yīng)用進(jìn)行調(diào)整,因此,構(gòu)造集群系統(tǒng)的方案可以根據(jù)具體需要調(diào)整。而Beowulf集群主要是使用普通的、相對廉價的計算機(jī)構(gòu)建能夠處理繁重計算的集群。這里我們采用PC集群構(gòu)建Beowulf 集群系統(tǒng)。Beowulf PC集群系統(tǒng)采用通用PC作為節(jié)點(diǎn),其各個節(jié)點(diǎn)由基于Intel、運(yùn)行Linux或Windows等通用操作系統(tǒng)的節(jié)點(diǎn)計算機(jī)緊密集成,它也可以存在多個網(wǎng)絡(luò)通信模式或路徑,在工業(yè)以太網(wǎng)環(huán)境下我們這里都采用以太網(wǎng)通信。
[align=center]

圖2、Beowulf PC集群系統(tǒng)拓?fù)浣Y(jié)構(gòu)示意圖[/align]
如圖2所示,我們采用16臺CPU為PIV-2.66GHz、內(nèi)存為512M、硬盤為80GB/7200RPM、配有雙網(wǎng)卡的普通PC機(jī)作為節(jié)點(diǎn)組成集群機(jī),實(shí)現(xiàn)基于消息傳遞的分布式內(nèi)存的并行Beowulf PC集群系統(tǒng)。采用CISCO2900XL系列交換機(jī)(24口/100M),將交換機(jī)設(shè)置為3個虛擬網(wǎng)段,其中的一個網(wǎng)段設(shè)置為信息接收網(wǎng)段(LAN1) ,另一個網(wǎng)段設(shè)置為信息發(fā)送網(wǎng)段(LAN2 )。LAN1只負(fù)責(zé)接收來自節(jié)點(diǎn)計算機(jī)的消息,將接收到的消息發(fā)送到LAN2的各個端口,LAN2將消息發(fā)送到相應(yīng)的節(jié)點(diǎn)計算機(jī),以使各節(jié)點(diǎn)計算機(jī)的兩個網(wǎng)卡分別進(jìn)行消息的發(fā)送和接收,提高消息傳遞的速度。交換機(jī)的第3個網(wǎng)段用于將系統(tǒng)與局域網(wǎng)連接,從而實(shí)現(xiàn)遠(yuǎn)程登錄服務(wù)等功能。
為達(dá)到更快的運(yùn)行速度,可清除各節(jié)點(diǎn)操作系統(tǒng)中不必要的服務(wù)以提高應(yīng)用程序的執(zhí)行效率,并且可以采用將NFS通訊和數(shù)據(jù)通訊分別綁定在不同網(wǎng)卡上的方法提高數(shù)據(jù)傳輸速度,甚至可以在每個節(jié)點(diǎn)安裝三塊網(wǎng)卡,其中之一綁定NFS,另兩塊綁定數(shù)據(jù)通訊,達(dá)到高速通信的目的。同樣采用以上技術(shù),對于48個ATHLON 1G節(jié)點(diǎn)的Beowulf系統(tǒng),其峰值運(yùn)算速度可以達(dá)到38Gflops/sec。
4.2 軟件環(huán)境的搭建
通常在Beowulf集群上運(yùn)行的軟件是 Linux操作系統(tǒng)、并行虛處理機(jī) PVM(Parallel Virtual Machine),和消息傳遞接口MPI(Message Passing Interface)。集群環(huán)境中應(yīng)用較多的是消息傳遞模型。消息傳遞模型為編程者提供了靈活性但卻將各個并行執(zhí)行部分之間復(fù)雜的信息交換和協(xié)調(diào)控制的任務(wù)交給了編程者,增加了編程者的負(fù)擔(dān),這是消息傳遞編程模型的劣勢。
目前比較流行的消息傳遞軟件是并行虛擬機(jī)PVM(parallel virtual machine)和消息傳遞接口MPI(message passing interface)。MPI是一個顯示的消息傳遞模式,在其中,任務(wù)通過發(fā)送消息相互通信。其最大的優(yōu)點(diǎn)是高性能,點(diǎn)到點(diǎn)通信函數(shù)模型、可操作數(shù)據(jù)類型都比PVM豐富,群組通信的函數(shù)庫也更大,但是不如PVM靈活。MPI和PVM都提供了一套函數(shù)集,且各有所專。它們能在所有的并行平臺上運(yùn)行,包括PVP、SMP、MPP(massively parallel processor)、工作站和PC組成的集群系統(tǒng),并已經(jīng)在Windows平臺上實(shí)現(xiàn),提供了對C、Fortran和Java語言的綁定。Beowulf集群系統(tǒng)的微機(jī)操作系統(tǒng)多為:UNIX、Linux、WindowsNT/2000/XP。它們都具有很強(qiáng)網(wǎng)絡(luò)支持功能和可靠性。其中Linux作為著名的開放操作系統(tǒng),可以在Internet上免費(fèi)下載,被多數(shù)Beowulf系統(tǒng)作為操作系統(tǒng)。
在實(shí)際的項(xiàng)目實(shí)施中采用了Redhat Linux9.0操作系統(tǒng),安裝好Linux后,對Linux進(jìn)行網(wǎng)絡(luò)配置。在所有的結(jié)點(diǎn)微機(jī)上安裝TCP/IP網(wǎng)絡(luò)協(xié)議,并將所有的結(jié)點(diǎn)微機(jī)設(shè)置為同一工作組,結(jié)點(diǎn)微機(jī)定義不同的網(wǎng)絡(luò)名以便區(qū)分。再將結(jié)點(diǎn)微機(jī)上安裝MPI軟件MPICH1.2.5.2作為集群的支撐環(huán)境,并把存儲并行程序的硬盤分區(qū)或文件夾設(shè)置為共享。
4.3 Beowulf集群系統(tǒng)在“透明工廠型”工業(yè)以太網(wǎng)中的實(shí)施
[align=center]

圖3、基于Beowulf集群的“透明工廠型”工業(yè)以太網(wǎng)拓?fù)浣Y(jié)構(gòu)圖[/align]
基于Beowulf集群的“透明工廠型”工業(yè)以太網(wǎng)構(gòu)架如圖3,Beowulf集群系統(tǒng)在新的工業(yè)以太網(wǎng)中和通用計算機(jī)一樣連接到中央交換機(jī),整個網(wǎng)絡(luò)分為4層,分別是計算機(jī)管理層(計算機(jī)中心),管理人員層(管理層),車間層(生產(chǎn)線上工業(yè)PC機(jī))以及設(shè)備層,各層通過高速中央交換機(jī)連接,另外通過Internet遠(yuǎn)程管理人員可以接入,對整個“透明工廠”進(jìn)行操控。當(dāng)然,要實(shí)現(xiàn)完全意義上的“透明工廠型”工業(yè)以太網(wǎng),還需要解決CSMA/ CD 監(jiān)聽機(jī)制的安全問題,數(shù)據(jù)的沖突問題等等其它有關(guān)的問題,這里限于篇幅,不一一討論。
5、性能測試與結(jié)果分析
工業(yè)以太網(wǎng)的測試通常包括以下幾個重要的指標(biāo):(1)最大響應(yīng)時間。對于每個節(jié)點(diǎn)的報文,在網(wǎng)絡(luò)正常運(yùn)行的情況下,報文從發(fā)送到接收后產(chǎn)生響應(yīng)所經(jīng)歷的最大的延遲時間。(2)數(shù)據(jù)包丟失率。在正常工作的情況下,指定時間內(nèi)數(shù)據(jù)包的丟失數(shù)目。(3)傳輸介質(zhì)。普通以太網(wǎng)傳輸介質(zhì)在工業(yè)現(xiàn)場的測試結(jié)果并不令人滿意。以太網(wǎng)的傳輸介質(zhì)是否能保證數(shù)據(jù)穩(wěn)定、可靠地傳輸是重要的選擇標(biāo)準(zhǔn)。(4)傳輸速率。在網(wǎng)絡(luò)正常工作的情況下,單位時間所能傳送的比特位數(shù)。
以動態(tài)通信量濾波型工業(yè)以太網(wǎng)的的標(biāo)準(zhǔn)測試條件:幀長度512 Byte ,測試時間600s,幀間距9.6μs做測試。測試結(jié)果如下:通信量:300MB/s,最大響應(yīng)時間:187.3ns;丟失幀數(shù):11。由測試的結(jié)果可見,在實(shí)時性要求不是極高的工業(yè)場合,這種方案已經(jīng)完成可以滿足要求。以上方案在太陽能電池生產(chǎn)線的工控機(jī)管理和控制的實(shí)施中成本節(jié)約了近80%,而同樣達(dá)到了良好的效果。
6、結(jié)論與展望
本文討論了如何構(gòu)建基于Beowulf集群的“透明工廠型”工業(yè)以太網(wǎng),該系統(tǒng)采用由微機(jī)及高速以太網(wǎng)絡(luò)組成的分布式、同構(gòu)、對等集群結(jié)構(gòu)形式,由16臺微機(jī)組成的Beowulf集群系統(tǒng)擔(dān)當(dāng)了以太網(wǎng)中計算中心與數(shù)據(jù)處理中心的重任,達(dá)到了高性能超級計算機(jī)的指標(biāo)。而以太網(wǎng)由于結(jié)構(gòu)簡單、構(gòu)造容易,可以低廉的價格獲取較高的局域網(wǎng)數(shù)據(jù)傳輸性能, 因而也和Beowulf 集群系統(tǒng)相輔相成,共同解決了工業(yè)以太網(wǎng)的數(shù)據(jù)傳輸實(shí)時問題。
參考文獻(xiàn):
1.Korch M,Rauber T. Evaluation of Task Pools for the Implementation of Parallel Irregular Algorithms[C]. Proceedings of the International Conference on Parallel Processing Workshops, 2002.
2.李貴明.俞國揚(yáng).羅家融.基于Linux的Beowulf集群的實(shí)現(xiàn)[J].計算機(jī)工程.2003: 29(II).
3.王韜.李曉明.SMP Cluster:如何開發(fā)兩級并行[J].計算機(jī)工程與科學(xué).2002,24(4).
4.李翀,羅家融,王華忠. 基于BEOWULF的PC集群系統(tǒng)設(shè)計及并行編程的研究[J].微計算機(jī)信息.2005,21(8-3):64-67