基于VxWorks的微機保護裝置網(wǎng)絡(luò )通信設計
摘要:針對微機保護系統對采樣數據傳輸的實(shí)時(shí)性需要,給出了一種基于VxWorks嵌入式實(shí)時(shí)操作系統的微機保護系統網(wǎng)絡(luò )通信實(shí)現方案。該方案利用VxWorks的靈活通信機制,并通過(guò)建立基于雙緩沖消息隊列的客戶(hù)端/服務(wù)器通信模型來(lái)提高系統的實(shí)時(shí)性和可靠性。
關(guān)鍵詞:VxWorks;微機保護;網(wǎng)絡(luò )通信;客戶(hù)端/服務(wù)器
0 引言
隨著(zhù)科學(xué)技術(shù)的不斷發(fā)展,人們對網(wǎng)絡(luò )進(jìn)程間通信的性能要求也越來(lái)越高,傳統的網(wǎng)絡(luò )通信方式已經(jīng)不能滿(mǎn)足需要。目前,越來(lái)越多的嵌入式設備都可以通過(guò)各種形式接入到網(wǎng)絡(luò ),以實(shí)現與網(wǎng)絡(luò )上其他各類(lèi)型的主機互聯(lián)。這在很大程度上得益于TCP/IP協(xié)議在嵌入式領(lǐng)域中的應用。本文選用VxWorks實(shí)時(shí)操作系統,并利用VxWorks對TCP/IP協(xié)議、多任務(wù)以及BSD Socket的良好支持,給出了一種可方便地實(shí)現網(wǎng)絡(luò )通信的方法。
1 VxWorks網(wǎng)絡(luò )協(xié)議
VxWorks通常使用以太網(wǎng)作為最底層傳輸媒介。而在傳輸媒介的上一層,VxWorks則用TCP/IP協(xié)議來(lái)用于VxWorks進(jìn)程與其它主機環(huán)境進(jìn)程之間的傳輸數據。用戶(hù)程序需要的就是在TCP/IP層之上進(jìn)行通信。因此,利用VxWorks對多任務(wù)和Socket的良好支持,可以方便的實(shí)現網(wǎng)絡(luò )通信。
TCP/IP是VxWorks提供的網(wǎng)絡(luò )間進(jìn)程通信的主要機制,它主要包括三個(gè)協(xié)議:Internet協(xié)議、IP協(xié)議和傳輸層協(xié)議。其中Internet協(xié)議是處于TCP和UDP之上的一組協(xié)議專(zhuān)門(mén)開(kāi)發(fā)的應用程序,包括telnet、文件傳輸協(xié)議(FTP)等。IP層也稱(chēng)網(wǎng)絡(luò )層,它包括Internet協(xié)議(IP)、網(wǎng)際控制報文協(xié)議(ICMP)和地址識別協(xié)議(ARP);其中IP協(xié)議是TCP/IP協(xié)議族的基礎,該協(xié)議被設計成互聯(lián)分組交換通信網(wǎng),現已形成了一個(gè)網(wǎng)際通信環(huán)境,它負責在源主機和目的地主機之間傳輸來(lái)自其較高層軟件的(稱(chēng)為數據報文的)數據塊,它在源和目的地之間可提供非連接型傳遞服務(wù);而傳輸層協(xié)議包括傳輸控制協(xié)議,主要有面向連接的TCP和無(wú)連接數據報UDP兩種協(xié)議。
VxWorks網(wǎng)絡(luò )協(xié)議是一個(gè)基于開(kāi)放系統的互連(OSI)模型,而且系統為了向高層協(xié)議層提供一個(gè)統一的、規范的、方便協(xié)議移植的網(wǎng)絡(luò )接口,在高層IP層之下添加了一個(gè)MUX層,由MUX層負責與網(wǎng)絡(luò )底層驅動(dòng)的交互。這樣做可以使用戶(hù)在設計協(xié)議中不必關(guān)心網(wǎng)絡(luò )底層的數據傳遞,而在設計網(wǎng)絡(luò )驅動(dòng)程序時(shí)也不必關(guān)心協(xié)議棧的結構,因而大大方便了對其進(jìn)行的開(kāi)發(fā)。VxWorks網(wǎng)絡(luò )協(xié)議的結構如圖1所示。
評論