新聞中心

EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 基于對(duì)等網(wǎng)絡(luò)的醫(yī)學(xué)影像服務(wù)系統(tǒng)通訊平臺(tái)設(shè)計(jì)與應(yīng)用

基于對(duì)等網(wǎng)絡(luò)的醫(yī)學(xué)影像服務(wù)系統(tǒng)通訊平臺(tái)設(shè)計(jì)與應(yīng)用

作者: 時(shí)間:2012-05-25 來源:網(wǎng)絡(luò) 收藏

5)兩節(jié)點(diǎn)在多級(jí)NAT的后面時(shí),服務(wù)器只了解與之最近NAT的信息,依據(jù)其最外層NAT是否一樣,可分如圖2所列的兩種情況。

本文引用地址:http://m.butianyuan.cn/article/154835.htm

b.jpg


圖2(a)顯示了最外層NAT處在不同節(jié)點(diǎn)的關(guān)系,因它類似于上面的第3種情況,因此它們不能進(jìn)行直接訪問。圖2(b)顯示了最外層NAT處于相同節(jié)點(diǎn)上的關(guān)系,因它類似于上面的第4種情況,所以通過各自的私網(wǎng)端口和IP兩節(jié)點(diǎn)不能相互訪問。
3.2 建立點(diǎn)對(duì)點(diǎn)的連接
通過分析網(wǎng)絡(luò)節(jié)點(diǎn)的區(qū)域關(guān)系可知,當(dāng)兩節(jié)點(diǎn)都在同一個(gè)NAT的后面或都擁有公網(wǎng)IP時(shí),它們之間才能進(jìn)行直接的,否則兩節(jié)點(diǎn)就不能進(jìn)行直接的。
因目前大部分的NAT設(shè)備支持UDP穿洞技術(shù),在建立兩節(jié)點(diǎn)的直接通訊時(shí),讓連接的雙方都從內(nèi)部發(fā)出請(qǐng)求,并通過一個(gè)擁有公網(wǎng)IP地址的服務(wù)器來連接介紹,以便避開NAT的隔離保護(hù)。所以把UDP作為其基本的通訊協(xié)議,在建立節(jié)點(diǎn)索引列表時(shí)要求中心服務(wù)器或超級(jí)節(jié)點(diǎn),按照UDP穿洞技術(shù)的要求,不但要記錄公網(wǎng)的端口和IP地址,還要記錄節(jié)點(diǎn)的私網(wǎng)端口和IP地址。
假如分別用變量Peer1與Peer2來表示節(jié)點(diǎn)的網(wǎng)絡(luò)信息,用結(jié)構(gòu)體來定義節(jié)點(diǎn)的網(wǎng)絡(luò)信息,就可使用用下面C++偽代碼來實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的直接通訊。
以下兩種情況是在兩節(jié)點(diǎn)的私網(wǎng)IP與端口嘗試進(jìn)行時(shí)適用的:
1)若節(jié)點(diǎn)在本機(jī)和服務(wù)器上的端口與IP地址相同,說明其采用的是公網(wǎng)的地址空間。兩節(jié)點(diǎn)如果都采用公網(wǎng)的地址空間那么這兩個(gè)節(jié)點(diǎn)就可通過私網(wǎng)或公網(wǎng)的端口和IP地址進(jìn)行直接通訊。
2)若兩節(jié)點(diǎn)的外部IP是相同的,則表明兩節(jié)點(diǎn)最外層的NAT是相同的。若兩節(jié)點(diǎn)在不是多級(jí)NAT而是處在同一個(gè)局域網(wǎng)內(nèi)的情況下,就可通過節(jié)點(diǎn)的私網(wǎng)端口和IP地址直接進(jìn)行通訊。
由此可見,這兩種情況都可通過統(tǒng)一使用本地的通訊函數(shù)嘗試直接建立連接,至少可通過各自的私網(wǎng)端口和IP地址進(jìn)行通訊,并用C++偽代碼來實(shí)現(xiàn)。
在實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)通訊的過程中,若嘗試采用兩節(jié)點(diǎn)的私網(wǎng)端口與IP連接通訊的方式失敗時(shí),則要嘗試運(yùn)用UDP穿透技術(shù)。由于NAT具有保護(hù)與隔離的作用,所以在一般情況下只有內(nèi)部主機(jī)才能訪問外部主機(jī),而外部主機(jī)則只能沿著內(nèi)部主機(jī)發(fā)起的連接線路來訪問發(fā)起連接的主機(jī),即通過逆向連接的方式來訪問內(nèi)部特定的節(jié)點(diǎn),因此需要兩節(jié)點(diǎn)一起從內(nèi)部發(fā)起連接,并通過服務(wù)器進(jìn)行中介,才能實(shí)現(xiàn)直接通訊。
若以上兩種情況皆不成功的話,那么就可以判斷出兩個(gè)節(jié)點(diǎn)之間存在不具有UDP穿透技術(shù)的NAT和設(shè)備以及別的因素,造成兩節(jié)點(diǎn)之間不能直接通訊。本文作者使用服務(wù)器數(shù)據(jù)轉(zhuǎn)發(fā)的方法,來保證任務(wù)的成功運(yùn)行。在運(yùn)用混合式對(duì)等網(wǎng)絡(luò)結(jié)構(gòu)的情況下,只需對(duì)等網(wǎng)絡(luò)能夠被節(jié)點(diǎn)順利連接就說明節(jié)點(diǎn)和服務(wù)器之間的通訊是正常的。
如果兩節(jié)點(diǎn)之間想建立通訊時(shí),例如Peer1想聯(lián)系Peer2時(shí),Peer1只需要把數(shù)據(jù)發(fā)送給中心服務(wù)器,然后由中心服務(wù)器轉(zhuǎn)發(fā)給Peer2就可以了,然而在通訊過程中服務(wù)器都需要參與,會(huì)進(jìn)一步加大服務(wù)器的負(fù)擔(dān),所以應(yīng)盡量減少使用。其實(shí)這種服務(wù)器數(shù)據(jù)轉(zhuǎn)發(fā)的方式在現(xiàn)實(shí)生活中已很少采用,因目前UDP穿透技術(shù)很多的NAT設(shè)備都支持。

4 對(duì)等網(wǎng)絡(luò)
4.1 構(gòu)架
架構(gòu)。

c.jpg


由圖3應(yīng)用架構(gòu)可知,對(duì)等網(wǎng)絡(luò)通訊是集圖像檢索服務(wù)、DICOM傳輸服務(wù)與影像會(huì)診服務(wù)等服務(wù)為基礎(chǔ)的,它是以應(yīng)用程序接口的方式為其他影像服務(wù)程序提供通訊管理與節(jié)點(diǎn)管理的功能,并負(fù)責(zé)連接管理網(wǎng)絡(luò)與物理網(wǎng)絡(luò)中的節(jié)點(diǎn)計(jì)算機(jī),以便實(shí)現(xiàn)其他醫(yī)學(xué)影像對(duì)等網(wǎng)絡(luò)的應(yīng)用。
4. 2 應(yīng)用實(shí)例
筆者以醫(yī)學(xué)影像對(duì)等網(wǎng)絡(luò)通訊平臺(tái)為基礎(chǔ),建立了醫(yī)學(xué)影像遠(yuǎn)程會(huì)診系統(tǒng)(簡(jiǎn)稱會(huì)診系統(tǒng))。在醫(yī)學(xué)影像遠(yuǎn)程會(huì)診系統(tǒng)中,當(dāng)會(huì)診的用戶連接到網(wǎng)絡(luò)時(shí),中心服務(wù)器將自動(dòng)下載在線用戶列表,使得用戶可以清晰的看到在線用戶的狀態(tài),若需要在線會(huì)診時(shí),依據(jù)點(diǎn)對(duì)點(diǎn)通訊連接的建立方式,有其中的一個(gè)會(huì)診用戶發(fā)出請(qǐng)求,經(jīng)由服務(wù)器輔助建立起兩個(gè)節(jié)點(diǎn)間的直接會(huì)診通訊。
在會(huì)診系統(tǒng)中通過醫(yī)學(xué)影像對(duì)等網(wǎng)絡(luò)通訊平臺(tái),實(shí)現(xiàn)了視頻對(duì)話、雙向語音、電子教鞭、DICOM影像同步顯示與操作等會(huì)診功能,從而使得會(huì)診參與的雙方雖然處在不同的位置也能感受到現(xiàn)場(chǎng)影像討論的效果。

5 結(jié)束語
文中通過建立醫(yī)學(xué)影像對(duì)等網(wǎng)絡(luò)通訊平臺(tái),針對(duì)點(diǎn)對(duì)點(diǎn)直接通訊與節(jié)點(diǎn)管理兩個(gè)方面提出了具體的解決方案,通過會(huì)診系統(tǒng)的成功使用可知,在實(shí)現(xiàn)其他對(duì)等任務(wù)方面醫(yī)學(xué)影像對(duì)等網(wǎng)絡(luò)通訊平臺(tái)提供了很大的方便,它也可當(dāng)作其他對(duì)等應(yīng)用的基礎(chǔ)平臺(tái)。


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉