一種分布式虛擬現(xiàn)實系統(tǒng)網絡構建方法
【技術領域】
[0001]本發(fā)明涉及一種虛擬現(xiàn)實技術,特別是一種可擴展的分布式虛擬現(xiàn)實系統(tǒng)網絡構建技術。
【背景技術】
[0002]分布式虛擬現(xiàn)實系統(tǒng)將虛擬現(xiàn)實與網絡通訊相結合,提供一個共享虛擬空間以支持對象的仿真以及多個分布用戶的交互和通訊。盡管近年來網絡速度和主機處理能力在不斷提高,但當虛擬現(xiàn)實系統(tǒng)中存在大量的用戶和對象時,即使每個用戶只需要少量帶寬,成千上萬的用戶通訊需求累加起來也必定超過網絡所能承受的限度,且在異構的廣域網中各個用戶的接入速度和主機處理能力均有差異,速度慢的主機必然影響其他主機的響應速度乃至降低整個環(huán)境的響應性能。
[0003]興趣管理思想的提出實現(xiàn)了分布式虛擬現(xiàn)實系統(tǒng)中的對象通訊局部化,使得只有近距離的對象才能進行通訊,有效地降低整個虛擬環(huán)境的通訊量,成為解決分布式虛擬現(xiàn)實系統(tǒng)的可擴展性問題的關鍵技術。興趣管理方法從提出至今,已有數十種不同的實現(xiàn)方法,根據實現(xiàn)興趣管理的通訊結構的不同,大致可以分為:客戶/服務器結構(Client-Server)、對等結構(Peer-to-Peer)和混合結構。
[0004]客戶/服務器結構通常在服務器端實現(xiàn)興趣管理,可以比較容易地維護全局的空間信息,并做最準確的信息過濾;但由于服務器容易成為瓶頸,且一旦服務器發(fā)生故障,整個虛擬環(huán)境系統(tǒng)將無法正常工作,并且通訊時延較大,兩個網絡距離很近的主機之間的通訊也必須經過服務器轉發(fā)。對等結構則采用在發(fā)送端實現(xiàn)興趣管理,每個主機均運行相同的程序并維護整個虛擬環(huán)境的數據拷貝,因而不存在瓶頸,系統(tǒng)健壯性好;但通常需要一個服務器來解決新來者(new comer)加入的問題,即新加入者需要從某個服務器上獲得關于其他主機的信息,其他主機也需要從該服務器上獲得新加入者的信息。為了克服這兩種結構各自的缺點,F(xiàn)unkhouser提出了混合結構,雖然較好地解決了服務器瓶頸、場景數據的分布等問題,但是對分布式虛擬現(xiàn)實系統(tǒng)中所要求的可擴展性和用戶對通訊內容的頻繁的動態(tài)變更這兩個問題的解決都顯得束手無策。
[0005]
【發(fā)明內容】
[0006]為了解決以上問題,本發(fā)明采用基于內容的發(fā)布-訂購模式,把組播路由算法和主動路由技術結合起來,發(fā)明一種在分布式虛擬現(xiàn)實系統(tǒng)中具有較強可擴展性的網絡架構構建技術。
[0007]本算法解決其技術問題所采用的技術方案是:
提出一種基于CBT組播樹的網絡拓撲結構,實現(xiàn)了對象在不斷運動變化的狀態(tài)下能與其他對象進行快速準確的動態(tài)通訊,使得在虛擬現(xiàn)實系統(tǒng)中可以容納大量對象進行通訊。
[0008]提出一種基于發(fā)布/訂購模式的通訊協(xié)議,能根據數據包的內容進行主動過濾和轉發(fā),能有效地減輕系統(tǒng)的網絡負載,具有較好的可擴展性。
[0009]提出一種適合快速路由匹配算法,加快了匹配的速度,有效地提高了路由器的數據處理效率。
[0010]本算法的有益效果是:采用CBT組播樹的網絡拓撲結構,使得虛擬對象可現(xiàn)實進行快速準確的動態(tài)通訊;采用基于發(fā)布/訂購模式的通訊協(xié)議,減輕系統(tǒng)的網絡負載;采用快速路由匹配算法,高了路由器的數據處理效率。
[0011]
【具體實施方式】
[0012]下面結合具體實施例,進一步闡明本發(fā)明。
[0013]1.系統(tǒng)的通訊拓撲結構設計
在系統(tǒng)構建中,我們采用CBT(Core-based Tree)作為基本的通訊架構。在CBT中每個參與者可以同時擔當發(fā)布者和訂購者的角色,并共享一棵組播樹,同時通過CBT連接的任意參與者都可以進行通訊,且無論是進行訂購還是發(fā)布數據的流向都是任意的,屬于一種雙向共享組播樹的結構。CBT不僅結構簡單,易于擴展,而且與SBT (Source-based Tree)的通訊結構相比,能有效地減少主動路由器上的存儲規(guī)模。同時,該結構與發(fā)布-訂購模式相結合,對象可以在任何時刻通過簡單地向路由器發(fā)送新的訂購信息,藉此改變通訊關系,因此對象間通訊關系的改變是完全動態(tài)的,實現(xiàn)了對象在不斷運動變化的狀態(tài)下能與其他對象進行快速準確的動態(tài)通訊,使得在虛擬現(xiàn)實系統(tǒng)中容納大量對象進行通訊成為可能,提高了分布式虛擬現(xiàn)實系統(tǒng)的可擴展性。
[0014]在基于CBT通訊拓撲結構的分布式虛擬現(xiàn)實系統(tǒng)中,路由器被組織成樹狀結構,作為根節(jié)點的路由器(Core AR)被稱為核心路由器,負責整棵共享組播樹的構造和維護。其余的路由器則作為非葉子結點進行層次狀組織,連接作為葉子節(jié)點的參與者和服務器。在此通訊架構中,用戶將自身興趣通過興趣表達式的形式向最近的主動路由器訂購,CBT樹則負責維護所有用戶的訂購信息;同時用戶也將自身最新的數據信息通過最近的路由器向CBT樹發(fā)送,經過CBT樹中路由器的匹配和過濾,最終到達對其感興趣的用戶。
[0015]2.系統(tǒng)的路由協(xié)議設計
我們將設計基于發(fā)布/訂購模式的通訊協(xié)議:SRP(Subscript1n Routing Protocol)和RDP (Realtime Datagram Delivery Protocol)。考慮到訂購/發(fā)布信息動態(tài)的,而且其最大長度可能會超過網絡中數據包的最大幀的長度,如果直接在網絡層進行訂購信息的管理,還需要實現(xiàn)數據包的重組,因此,我們將上述協(xié)議配置在路由器的應用層,直接利用現(xiàn)有的協(xié)議(如UDP和TCP)對數據包進行發(fā)送。
[0016]SRP 包括的 UPDATE、QUIT、SUBSCRIBE、REPLY、ECH0_REQUEST、ECH0_REPLY 六個消息,其作用主要是構造組播樹、傳播路由信息、維護組播樹、退出組播樹。SRP協(xié)議中的所有消息通過UDP數據包進行發(fā)送,其中UPDATE消息和QUIT消息的發(fā)送采取Best-efforts方式,不保證可靠性,而SUBSCRIBE、REPLY、ECH0_REQUEST、ECH0_REPLY消息通過SRP協(xié)議中的重傳機制保證點到點的可靠性。SRP不同類型消息在路由器上的處理方式為:
①在路由器尚未加入組播樹的情況下,如果是