VxWorks環(huán)境下雙冗余以太網(wǎng)卡技術(shù)在底層驅(qū)動中的實現(xiàn)
隨著以太網(wǎng)的穩(wěn)定性、抗干擾性和帶寬問題的逐步改善,以太網(wǎng)正在大規(guī)模進入工業(yè)控制領(lǐng)域。用于工業(yè)過程控制、通信、航天器和導(dǎo)航系統(tǒng)中的網(wǎng)絡(luò)對可靠性及其響應(yīng)故障的快速性要求極高。當(dāng)前,冗余設(shè)計作為一種提高設(shè)備可靠性的有效方法,已經(jīng)得到了廣泛的應(yīng)用。對于網(wǎng)絡(luò)系統(tǒng)中的單個節(jié)點,常常需要對網(wǎng)卡進行雙冗余備份,即每個節(jié)點都采用2塊網(wǎng)卡(或2個網(wǎng)口),中間用集線器或交換機互連,當(dāng)正常通信的網(wǎng)卡或線路出現(xiàn)故障時,該節(jié)點能自動地切換到備份網(wǎng)卡進行通信。圖1為冗余網(wǎng)絡(luò)的一種典型聯(lián)接形式。
具有雙冗余網(wǎng)卡的節(jié)點雖然有2塊網(wǎng)卡,2條通道,但對于高層應(yīng)用系統(tǒng)來說,仍呈現(xiàn)單網(wǎng)卡的特征。具體來講,2塊網(wǎng)卡共有1個物理地址,1個IP地址。根據(jù) TCP/IP參考模型,TCP/IP協(xié)議族可以分為應(yīng)用層、傳輸層、網(wǎng)絡(luò)層和鏈路層4層,冗余網(wǎng)卡技術(shù)可以在其中各個層面中實現(xiàn)。
VxWorks、MUX與網(wǎng)卡驅(qū)動程序
嵌入式實時操作系統(tǒng)VxWorks的網(wǎng)絡(luò)協(xié)議棧與網(wǎng)絡(luò)設(shè)備驅(qū)動的接口有2種:一種是標(biāo)準(zhǔn)的BSD4.4Driver,它將Driver和協(xié)議緊密關(guān)聯(lián)在一起,不利于多協(xié)議的支持;另一種標(biāo)準(zhǔn)是VxWorks特有的,它將Driver和協(xié)議棧隔離開,使二者通過一個稱為MUX的薄層相連,使得網(wǎng)絡(luò)服務(wù)免受特定的網(wǎng)絡(luò)接口驅(qū)動程序的影響,達到Driver獨立于具體協(xié)議的目的,從而實現(xiàn)多協(xié)議的支持,三者間的關(guān)系如圖2所示。
評論