專利名稱:一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體涉及一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的技術(shù)。
背景技術(shù):
目前,隨著IP網(wǎng)絡(luò)的不斷發(fā)展,雖然網(wǎng)絡(luò)帶寬有了很大改善,但是由于各個網(wǎng)絡(luò) 之間互聯(lián)互通情況的不同,窄帶網(wǎng)絡(luò)與寬帶網(wǎng)絡(luò)長期并存。而實時屏幕共享及控制交互將 會占用大量網(wǎng)絡(luò)帶寬資源,對網(wǎng)絡(luò)帶寬要求較高;在屏幕共享及控制應(yīng)用中很多用戶只是 作為觀眾參加到交互中,這種用戶數(shù)量較大,如果這些用戶直接從轉(zhuǎn)發(fā)網(wǎng)關(guān)請求數(shù)據(jù),將會 給轉(zhuǎn)發(fā)網(wǎng)關(guān)帶來大量的不必要的數(shù)據(jù)壓力,進而影響整個實時交互系統(tǒng)的可擴展性和穩(wěn)定 性。在計算機屏幕共享及控制應(yīng)用中,都是基于客戶端/服務(wù)器模式的,而且存在如下一些 問題(1) 一個服務(wù)器只能被一個或少數(shù)幾個客戶端控制,一個服務(wù)器屏幕只能共享給 一個或少數(shù)幾個客戶端觀看。(2)當(dāng)被控制方和控制方分布在不同的局域網(wǎng)中時,通過部署公網(wǎng)服務(wù)器的方式 實現(xiàn)遠(yuǎn)程屏幕共享和控制,但這種方式占用大量公網(wǎng)帶寬資源,不符合工程實施中的現(xiàn)實 網(wǎng)絡(luò)條件。然而,這種需要隨著互聯(lián)網(wǎng)的高速發(fā)展需求越來越多越迫切,比如在大型科研院 所的協(xié)同辦公環(huán)境中,一個地域中的用戶需要看到另一個地域的用戶的桌面,并對其實施 控制,以便進行遠(yuǎn)程協(xié)助,以提高辦公效率,限于兩地之間公網(wǎng)帶寬資源而無法正常開展。 同時,在遠(yuǎn)程教學(xué)平臺中,需要遠(yuǎn)程高清晰屏幕共享及控制,以增強師生互動,提高教學(xué)質(zhì) 量、改善遠(yuǎn)程教育教學(xué)效果。
發(fā)明內(nèi)容
鑒于對大規(guī)模、異地、高清晰屏幕共享及控制的需求,本發(fā)明提供了一種大規(guī)模、 異地、遠(yuǎn)程高清晰屏幕數(shù)據(jù)高效傳輸、共享、同步控制的方法。實現(xiàn)了一個轉(zhuǎn)發(fā)網(wǎng)關(guān)在帶寬 充許的情況下,可容納6000多個子節(jié)點,且可擴展到無限個轉(zhuǎn)發(fā)網(wǎng)關(guān)。為了達(dá)到上述目的,本發(fā)明提供如下技術(shù)方案方法包括如下步驟步驟一轉(zhuǎn)發(fā)網(wǎng)關(guān)注冊域的轉(zhuǎn)發(fā)網(wǎng)關(guān)啟動后,向調(diào)度中心注冊,注冊成功后向調(diào)度中心提供本域相關(guān)信 息,并在適當(dāng)時機更新這些信息;步驟二 被控端與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊被控端通過源服務(wù)器Sender與轉(zhuǎn)發(fā)網(wǎng)關(guān)Router交互處理數(shù)據(jù);步驟三主控端與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊主控端通過主控端系統(tǒng)Receiver認(rèn)證準(zhǔn)許后登錄到本地域的轉(zhuǎn)發(fā)網(wǎng)關(guān)上,由轉(zhuǎn) 發(fā)網(wǎng)關(guān)為其提供服務(wù)。步驟四各域轉(zhuǎn)發(fā)網(wǎng)關(guān)之間通訊
轉(zhuǎn)發(fā)網(wǎng)關(guān)之間按需進行域之間的動態(tài)連接、數(shù)據(jù)交換、斷開等操作,實現(xiàn)跨域屏幕 共享及控制;其中所述步驟一進一步中包括如下步驟步驟1. 1 構(gòu)建并啟動調(diào)度中心構(gòu)建并啟動調(diào)度中心;步驟1. 2 網(wǎng)關(guān)連接調(diào)度中心啟動轉(zhuǎn)發(fā)網(wǎng)關(guān)并通過MBus消息處理中間件系統(tǒng)向調(diào)度中心注冊;步驟1. 3 注冊域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息轉(zhuǎn)發(fā)網(wǎng)關(guān)向調(diào)度中心提供本域的信息,如用戶注冊信息,會議信息,本域轉(zhuǎn)發(fā)網(wǎng)關(guān) 本身的地址信息等;步驟1. 4 適時更新域信息當(dāng)有用戶共享出桌面或有用戶登錄或退出時向調(diào)度中心提供本域的更新信息;其中所述步驟二進一步包括步驟步驟2. 1 被控端發(fā)送數(shù)據(jù)被控端通過源服務(wù)器Sender發(fā)送屏幕數(shù)據(jù)到轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟2.2 網(wǎng)關(guān)轉(zhuǎn)發(fā)數(shù)據(jù)轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)屏幕數(shù)據(jù)給主控端或其它域的轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟2. 3 主控端接收數(shù)據(jù)主控端通過源服務(wù)器接收轉(zhuǎn)發(fā)網(wǎng)關(guān)到來的控制數(shù)據(jù)步驟2. 4 被控端接收響應(yīng)被控端響應(yīng)從轉(zhuǎn)發(fā)網(wǎng)關(guān)收到的控制數(shù)據(jù)對應(yīng)的控制操作;其中所述步驟三進一步包括步驟步驟3.1:主控端登錄主控端系統(tǒng)用戶登錄本地域轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟3. 2:主控端認(rèn)證主控端系統(tǒng)用戶與轉(zhuǎn)發(fā)網(wǎng)關(guān)進行用戶認(rèn)證、能力集及版本協(xié)商;如果用戶認(rèn)證或 能力集協(xié)商或版本協(xié)商其一失敗,則阻止主控端系統(tǒng)登錄;步驟3. 3 主控端提供會議相關(guān)信息主控端系統(tǒng)用戶向本域內(nèi)的轉(zhuǎn)發(fā)網(wǎng)關(guān)提供其欲參加的桌面會議全局標(biāo)識等自身 相關(guān)的信息。桌面會議全局標(biāo)識是在整個系統(tǒng)中能唯一標(biāo)識一個桌面會議的標(biāo)識,一個桌 面會議是指一個或多個主控端用戶觀看、控制一個被控端用戶桌面形成的一個會議;步驟3. 4 域轉(zhuǎn)發(fā)網(wǎng)關(guān)驗證信息域轉(zhuǎn)發(fā)網(wǎng)關(guān)檢查該主控端系統(tǒng)用戶欲參加的會議是否存在,如不存在則阻止主控 端系統(tǒng)登錄并斷開與主控端系統(tǒng)的連接;步驟3. 5 域轉(zhuǎn)發(fā)網(wǎng)關(guān)驗證通過后轉(zhuǎn)發(fā)數(shù)據(jù)域轉(zhuǎn)發(fā)網(wǎng)關(guān)檢查其參加的會議是否存在,如存在則轉(zhuǎn)發(fā)會議數(shù)據(jù)給登錄的主控端系統(tǒng),主控端系統(tǒng)收到后進行解碼顯示;步驟3. 6 域轉(zhuǎn)發(fā)網(wǎng)關(guān)接收控制數(shù)據(jù)域轉(zhuǎn)發(fā)網(wǎng)關(guān)接收主控端系統(tǒng)發(fā)來的控制數(shù)據(jù);
步驟3. 7 域轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)域轉(zhuǎn)發(fā)網(wǎng)關(guān)非跨域轉(zhuǎn)發(fā)或跨域轉(zhuǎn)發(fā)控制數(shù)據(jù)給被控端用戶對應(yīng)的源服務(wù)器;步驟3. 8 被控端響應(yīng)操作被控端用戶對應(yīng)的源服務(wù)器響應(yīng)控制數(shù)據(jù)對應(yīng)的控制操作;其中所述步驟四進一步包括步驟步驟4.1:登錄轉(zhuǎn)發(fā)網(wǎng)關(guān)一個參加跨域桌面會議的主控端,以下簡稱第一主控端,登錄到其域的轉(zhuǎn)發(fā)網(wǎng)關(guān), 以下簡稱第一轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟4. 2 轉(zhuǎn)發(fā)網(wǎng)關(guān)根據(jù)會議類型向調(diào)度中心查詢第一轉(zhuǎn)發(fā)網(wǎng)關(guān)判斷第一主控端所參加的會議是本地會議還是跨域會議,若是跨域 會議則第一轉(zhuǎn)發(fā)網(wǎng)關(guān)向調(diào)度中心發(fā)出請求,調(diào)度中心經(jīng)調(diào)度策略后返回給第一主控端參與 的跨域會議所跨的另外一個域的轉(zhuǎn)發(fā)網(wǎng)關(guān)地址,該網(wǎng)關(guān)以下簡稱第二轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟4. 3 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)互聯(lián)第一轉(zhuǎn)發(fā)網(wǎng)關(guān)連接第二轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟4. 4 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)會晤第一轉(zhuǎn)發(fā)網(wǎng)關(guān)與第二轉(zhuǎn)發(fā)網(wǎng)關(guān)之間建立通訊進行會晤步驟4. 5 本域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息獲取第一轉(zhuǎn)發(fā)網(wǎng)關(guān)獲得第二轉(zhuǎn)發(fā)網(wǎng)關(guān)的用戶信息、第一屏數(shù)據(jù)、初始化數(shù)據(jù)等;步驟4. 6 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息獲取第二轉(zhuǎn)發(fā)網(wǎng)關(guān)獲得第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的會議信息及會議對應(yīng)人數(shù),并置第一轉(zhuǎn)發(fā)網(wǎng)關(guān) 的轉(zhuǎn)發(fā)需求標(biāo)志等;步驟4. 7 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)按需轉(zhuǎn)發(fā)第二轉(zhuǎn)發(fā)網(wǎng)關(guān)判斷第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的該會議轉(zhuǎn)發(fā)需求標(biāo)志,如為假不轉(zhuǎn)發(fā)該會議任 何數(shù)據(jù),為真則將本域該會議數(shù)據(jù),包括桌面數(shù)據(jù)和控制數(shù)據(jù),利用“輸入輸出完成端口(I/ OCompletion Port,簡稱為I0CP) ”技術(shù)轉(zhuǎn)發(fā)給第一轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟4. 8:主控端退出第一主控端從第一轉(zhuǎn)發(fā)網(wǎng)關(guān)退出,第一轉(zhuǎn)發(fā)網(wǎng)關(guān)向第二轉(zhuǎn)發(fā)網(wǎng)關(guān)和調(diào)度中心匯報 這一信息,以便在調(diào)度中心和第二轉(zhuǎn)發(fā)網(wǎng)關(guān)更新相關(guān)信息;步驟4. 9 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息更新第二轉(zhuǎn)發(fā)網(wǎng)關(guān)收到第一主控端從第一轉(zhuǎn)發(fā)網(wǎng)關(guān)退出的信息后,更新相應(yīng)的第一轉(zhuǎn) 發(fā)網(wǎng)關(guān)的相應(yīng)會議的人數(shù)計數(shù)器,如該會議的人數(shù)計數(shù)器變?yōu)?,則置第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的相應(yīng) 會議的轉(zhuǎn)發(fā)需求標(biāo)志為假,此后第二轉(zhuǎn)發(fā)網(wǎng)關(guān)不再給第一轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)任何有關(guān)該會議的 數(shù)據(jù);步驟4. 10 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)斷開連接第二轉(zhuǎn)發(fā)網(wǎng)關(guān)判斷第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的所有會議的轉(zhuǎn)發(fā)需求標(biāo)志,如均為假,則置第 一轉(zhuǎn)發(fā)網(wǎng)關(guān)的連接標(biāo)志為假,并斷開與第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的連接;本發(fā)明中的單臺轉(zhuǎn)發(fā)網(wǎng)關(guān)在帶寬充許的情況下可以接收6000主控端,而且在同 一個域內(nèi)可以有任意個源服務(wù)器形成各自的桌面會議,真正實現(xiàn)了多域多會議大規(guī)模遠(yuǎn)程 桌面共享控制。
在實際應(yīng)用中一個局域網(wǎng)可劃分為一個域,不同的域可以分布在同一物理地域如 同一個大樓,也可以分布在不同的物理地域如不同的城市。由于,本發(fā)明提供的系統(tǒng)方法可 擴展到無限臺轉(zhuǎn)發(fā)網(wǎng)關(guān),實現(xiàn)了跨無限域屏幕共享及控制。徹底解決了一個服務(wù)器只能被 一個或少數(shù)幾個客戶端控制,一個服務(wù)器屏幕只能共享給一個或少數(shù)幾個客戶端觀看,以 及當(dāng)被控制方和控制方分布在不同的局域網(wǎng)中時無法實現(xiàn)遠(yuǎn)程屏幕共享和控制等問題。由于本發(fā)明轉(zhuǎn)發(fā)網(wǎng)關(guān)的跨域數(shù)據(jù)轉(zhuǎn)發(fā)和本域內(nèi)的數(shù)據(jù)轉(zhuǎn)發(fā)均采用了 IOCP技術(shù), 所以大大提高了整體網(wǎng)絡(luò)的傳輸性能和CPU的處理效率,將數(shù)據(jù)高效穩(wěn)定的傳遞到客戶 端,既可以滿足單域用戶大量客戶端桌面共享控制需求,又可滿足多域用戶大量客戶端的 桌面共享控制需求,并有效地降低CPU和網(wǎng)絡(luò)負(fù)載,增強了魯棒性以應(yīng)對極端條件下網(wǎng)絡(luò) 狀況,從而使系統(tǒng)更加穩(wěn)定高效。本發(fā)明的優(yōu)點在于(1)使大規(guī)模的實時屏幕共享技術(shù)在大型企業(yè)、科研院所等機構(gòu)用戶中得以實現(xiàn)。 現(xiàn)有的屏幕共享技術(shù)僅能支持?jǐn)?shù)十人的規(guī)模,采用本發(fā)明的系統(tǒng)后能滿足大型企業(yè)、科研 院所、遠(yuǎn)程培訓(xùn)機構(gòu)數(shù)千人的并發(fā)屏幕共享;(2)跨域部署的轉(zhuǎn)發(fā)網(wǎng)關(guān)使得域之間的帶寬要求大大降低,節(jié)省了企業(yè)部署成本。 在通常規(guī)模的屏幕共享應(yīng)用中需要獨立IOOMHz帶寬的服務(wù)器作為轉(zhuǎn)發(fā)網(wǎng)關(guān),而在國內(nèi)大 部分中小企業(yè)只有4M以下出口帶寬的現(xiàn)有網(wǎng)絡(luò)條件下根本無法滿足需求,采用跨域部署 的轉(zhuǎn)發(fā)網(wǎng)關(guān)后利用企業(yè)現(xiàn)有網(wǎng)絡(luò)條件就能滿足應(yīng)用需求;(3)高效、可擴展的網(wǎng)絡(luò)架構(gòu),滿足各級用戶的需要;各域轉(zhuǎn)發(fā)網(wǎng)關(guān)的分布式部署 形成一個靈活、高效的網(wǎng)絡(luò)架構(gòu)。
圖1是本發(fā)明方法流程圖;圖2是本發(fā)明轉(zhuǎn)發(fā)網(wǎng)關(guān)注冊流程圖;圖3是本發(fā)明被控制與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊流程圖;圖4是本發(fā)明主控端與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊流程圖;圖5是本發(fā)明各域轉(zhuǎn)發(fā)網(wǎng)關(guān)之間通訊流程圖;圖6是本發(fā)明的調(diào)度中心結(jié)構(gòu)示意圖;圖7是本發(fā)明域的集中式管理網(wǎng)絡(luò)拓?fù)浼軜?gòu)示意圖;圖8是本發(fā)明域之間網(wǎng)狀連接網(wǎng)絡(luò)拓?fù)浼軜?gòu)示意圖。
具體實施例方式下面將結(jié)合附圖和實施例對本發(fā)明作進一步的詳細(xì)說明。本發(fā)明是一種大規(guī)模、異地、局域網(wǎng)間屏幕共享及控制方法,如圖1所示,該方法 包括如下步驟步驟一轉(zhuǎn)發(fā)網(wǎng)關(guān)注冊域的轉(zhuǎn)發(fā)網(wǎng)關(guān)啟動后,向調(diào)度中心注冊,注冊成功后向調(diào)度中心提供本域相關(guān)信 息,并在適當(dāng)時機更新這些信息。在具體實施過程中,一個局域網(wǎng)內(nèi)或同一區(qū)域內(nèi)的所有屏 幕共享用戶組成一個域,一個域內(nèi)部署一臺或兩臺以上轉(zhuǎn)發(fā)網(wǎng)關(guān)服務(wù)器。在所有域之上部署一臺調(diào)度中心負(fù)責(zé)管理所有的轉(zhuǎn)發(fā)網(wǎng)關(guān)。步驟二 被控端與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊被控端通過源服務(wù)器Sender與轉(zhuǎn)發(fā)網(wǎng)關(guān)Router交互處理數(shù)據(jù)。被控端的主要 功能是攔截被控端電腦的用戶操作,感知被控端電腦的屏幕變化,并將屏幕及相關(guān)數(shù)據(jù)編 碼后發(fā)送給主控端,以供主控端觀看,以及響應(yīng)來至主控端的鍵盤鼠標(biāo)消息,提供被控制功 能。步驟三主控端與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊主控端的主要功能是接受轉(zhuǎn)發(fā)網(wǎng)關(guān)提供給它的各類服務(wù),從轉(zhuǎn)發(fā)網(wǎng)關(guān)請求屏幕更 新數(shù)據(jù),解碼從轉(zhuǎn)發(fā)網(wǎng)關(guān)發(fā)來的屏幕數(shù)據(jù),顯示屏幕更新數(shù)據(jù)到主控端電腦屏幕上,發(fā)送主 控端的控制信息給轉(zhuǎn)發(fā)網(wǎng)關(guān),以控制被控端,其中主控端的控制數(shù)據(jù)是指鍵盤、鼠標(biāo)數(shù)據(jù)。 主控端通過主控端系統(tǒng)Receiver認(rèn)證準(zhǔn)許后登錄到本地域的轉(zhuǎn)發(fā)網(wǎng)關(guān)上,由轉(zhuǎn)發(fā)網(wǎng)關(guān)為 其提供服務(wù)。步驟四各域轉(zhuǎn)發(fā)網(wǎng)關(guān)之間通訊轉(zhuǎn)發(fā)網(wǎng)關(guān)之間按需進行域之間的動態(tài)連接、數(shù)據(jù)交換、斷開等操作,實現(xiàn)跨域屏幕 共享及控制。各域轉(zhuǎn)發(fā)網(wǎng)關(guān)之間在調(diào)度中心的協(xié)調(diào)下,根據(jù)會議相關(guān)信息進行網(wǎng)關(guān)之間的 跨域連接,并在相關(guān)域之間進行桌面數(shù)據(jù)的交換,組成一個邏輯轉(zhuǎn)發(fā)體系。會議結(jié)束后斷開 連接,恢復(fù)域轉(zhuǎn)發(fā)網(wǎng)關(guān)的獨立性;轉(zhuǎn)發(fā)網(wǎng)關(guān)在調(diào)度中心協(xié)調(diào)下的這種交互是實現(xiàn)跨域桌面 數(shù)據(jù)共享的核心。如圖2所示,所述的步驟一中包括如下步驟步驟1. 1 構(gòu)建并啟動調(diào)度中心如圖6所示,調(diào)度中心由調(diào)度模塊RServer、數(shù)據(jù)庫模塊DBServer、消息處理中間 件服務(wù)器MBusServer三個模塊組成。調(diào)度模塊RServer負(fù)責(zé)域轉(zhuǎn)發(fā)網(wǎng)關(guān)的具體調(diào)度工 作,數(shù)據(jù)庫模塊DBServer負(fù)責(zé)存儲域網(wǎng)關(guān)信息以及跨域桌面會議召開的相關(guān)信息,消息處 理中間件服務(wù)器MBusServer負(fù)責(zé)連接調(diào)度模塊、數(shù)據(jù)庫模塊,控制各域轉(zhuǎn)發(fā)網(wǎng)關(guān),以及作 為對外功能擴展時通訊接口。調(diào)度中心的這三個模塊部署在三臺服務(wù)器上,也可視情況部 署在同一臺服務(wù)器上。按順序分別啟動消息處理中間件服務(wù)器MBusServer、數(shù)據(jù)庫模塊 DBServer和調(diào)度模塊RServer,開始提供服務(wù);調(diào)度中心負(fù)責(zé)調(diào)度管理所有的轉(zhuǎn)發(fā)網(wǎng)關(guān),并實現(xiàn)負(fù)載均衡,轉(zhuǎn)發(fā)網(wǎng)關(guān)每當(dāng)有用戶出入時都會向調(diào)度中心匯報本轉(zhuǎn)發(fā)網(wǎng)關(guān)的最新信息,其中包括本轉(zhuǎn)發(fā)網(wǎng)關(guān)上擁有的本地 會議名及會議人數(shù),本轉(zhuǎn)發(fā)網(wǎng)關(guān)上正在轉(zhuǎn)發(fā)的跨域會議名及會議人數(shù),本轉(zhuǎn)發(fā)網(wǎng)關(guān)的CPU 負(fù)載,本轉(zhuǎn)發(fā)網(wǎng)關(guān)的帶寬占用情況,本轉(zhuǎn)發(fā)網(wǎng)關(guān)承載的總會議數(shù),本轉(zhuǎn)發(fā)網(wǎng)關(guān)上承載的總主 控端人數(shù),另一方面,調(diào)度中心每隔30秒主動向所有轉(zhuǎn)發(fā)網(wǎng)關(guān)詢問其當(dāng)時的轉(zhuǎn)發(fā)網(wǎng)關(guān)情 況,了解各轉(zhuǎn)發(fā)網(wǎng)關(guān)的實時負(fù)載。當(dāng)一個轉(zhuǎn)發(fā)網(wǎng)關(guān)需要轉(zhuǎn)發(fā)某會議的數(shù)據(jù)時,調(diào)度中心會 根據(jù)相應(yīng)的負(fù)載均衡的權(quán)值獲取方法選擇一個負(fù)載最輕并且能夠為該轉(zhuǎn)發(fā)網(wǎng)關(guān)服務(wù)的轉(zhuǎn) 發(fā)網(wǎng)關(guān)地址返回給請求的轉(zhuǎn)發(fā)網(wǎng)關(guān),其中的該轉(zhuǎn)發(fā)網(wǎng)關(guān)是指正在轉(zhuǎn)發(fā)該會議數(shù)據(jù)的轉(zhuǎn)發(fā)網(wǎng) 關(guān),然后請求的轉(zhuǎn)發(fā)網(wǎng)關(guān)連接由調(diào)度中心提供的網(wǎng)關(guān),接收該轉(zhuǎn)發(fā)網(wǎng)關(guān)的會議數(shù)據(jù),并為其 連接用戶提供服務(wù)。負(fù)載均衡采用的權(quán)值獲取公式對于一般服務(wù)器集群分布的網(wǎng)絡(luò)程序,總是優(yōu)先選擇CPU占用率低或者網(wǎng)絡(luò)帶寬占用率低的服務(wù)器為用戶提供服務(wù),本發(fā)明選擇“負(fù)載最輕的網(wǎng)關(guān)”時,采用CPU優(yōu)先法和 帶寬優(yōu)先法相結(jié)合的方法,綜合考慮兩者因素,在工程實踐中總結(jié)出其權(quán)值計算的具體方 法為當(dāng)CPU占用率大于或等于60%時,使用CPU優(yōu)先法CX0.6+BX0.4 ;當(dāng)CPU占用率小于60%時,使用帶寬優(yōu)先法CX0.4+BX0.6 ;其中C表示該轉(zhuǎn)發(fā)網(wǎng)關(guān)CPU的當(dāng)前占用率,B表示該轉(zhuǎn)發(fā)網(wǎng)關(guān)帶寬的當(dāng)前占用率。步驟1. 2 網(wǎng)關(guān)連接調(diào)度中心域轉(zhuǎn)發(fā)網(wǎng)關(guān)管理員手動啟動轉(zhuǎn)發(fā)網(wǎng)關(guān),或按照設(shè)置自動啟動轉(zhuǎn)發(fā)網(wǎng)關(guān)后,通過消息處理中間件MBus向調(diào)度中心提供初始連接信息,調(diào)度中心接收后在系統(tǒng)中注冊該網(wǎng)關(guān), 并向轉(zhuǎn)發(fā)網(wǎng)關(guān)請求網(wǎng)關(guān)具體參數(shù);步驟1. 3 注冊域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息轉(zhuǎn)發(fā)網(wǎng)關(guān)接受調(diào)度中心請求后向其提供本域的信息,如用戶注冊信息,會議信息, 本域轉(zhuǎn)發(fā)網(wǎng)關(guān)本身的地址、服務(wù)端口等信息,調(diào)度中心收到后完善轉(zhuǎn)發(fā)網(wǎng)關(guān)的注冊信息;步驟1. 4 適時更新域信息當(dāng)有用戶共享出桌面或有用戶登錄或退出時向調(diào)度中心提供本域的更新信息,用 于調(diào)度中心維護域轉(zhuǎn)發(fā)網(wǎng)關(guān)服務(wù)狀態(tài)。同時轉(zhuǎn)發(fā)網(wǎng)關(guān)向調(diào)度中心查詢桌面共享會議召開的 其他域網(wǎng)關(guān)信息,用于跨域桌面數(shù)據(jù)轉(zhuǎn)發(fā);如圖3所示,所述的步驟二進一步包括步驟步驟2. 1 被控端發(fā)送數(shù)據(jù)被控端的屏幕變化信息通過源服務(wù)器Sender發(fā)送屏幕數(shù)據(jù)到轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟2.2 網(wǎng)關(guān)轉(zhuǎn)發(fā)數(shù)據(jù)轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)屏幕數(shù)據(jù)給主控端或其它域的轉(zhuǎn)發(fā)網(wǎng)關(guān)。轉(zhuǎn)發(fā)網(wǎng)關(guān)通過查詢調(diào)度中 心獲取當(dāng)前召開的桌面會議的跨域信息后在本域內(nèi)向主控端或向其他域轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)屏 幕數(shù)據(jù),如果當(dāng)前會議僅在一個域內(nèi)召開,只需將屏幕數(shù)據(jù)轉(zhuǎn)發(fā)本域內(nèi)的主控端;如果當(dāng)前 會議跨域召開,則在域內(nèi)轉(zhuǎn)發(fā)的同時將屏幕數(shù)據(jù)轉(zhuǎn)發(fā)其他域的轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟2. 3 主控端接收數(shù)據(jù)主控端通過源服務(wù)器接收轉(zhuǎn)發(fā)網(wǎng)關(guān)到來的控制數(shù)據(jù)。主控端接收來自域轉(zhuǎn)發(fā)網(wǎng)關(guān) 的本域內(nèi)的被控端屏幕數(shù)據(jù)或來自其他域的控制數(shù)據(jù);步驟2. 4 被控端接收響應(yīng)被控端響應(yīng)從轉(zhuǎn)發(fā)網(wǎng)關(guān)收到的控制數(shù)據(jù)對應(yīng)的控制操作;如圖4所示,所述的步驟三進一步包括步驟步驟3.1:主控端登錄主控端登錄本地域轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟3. 2:主控端認(rèn)證主控端系統(tǒng)用戶與轉(zhuǎn)發(fā)網(wǎng)關(guān)進行用戶認(rèn)證、能力集及版本協(xié)商,如果用戶認(rèn)證或 能力集協(xié)商或版本協(xié)商其一失敗阻止主控端系統(tǒng)登錄;步驟3. 3 主控端提供會議相關(guān)信息主控端系統(tǒng)用戶向所在域的轉(zhuǎn)發(fā)網(wǎng)關(guān)提供其欲參加的桌面會議全局標(biāo)識等自身 相關(guān)的信息。桌面會議全局標(biāo)識是在整個系統(tǒng)中能唯一標(biāo)識一個桌面會議的標(biāo)識,一個桌面會議是指一個或多個主控端用戶觀看、控制一個被控端用戶桌面形成的一個會議。域轉(zhuǎn) 發(fā)網(wǎng)關(guān)將具有相同桌面會議全局標(biāo)識的被控端和主控端組成一個會話,各域轉(zhuǎn)發(fā)網(wǎng)關(guān)上具 有相同桌面會議全局標(biāo)識的會話通過查詢調(diào)度中心獲知對方所在網(wǎng)關(guān)地址后形成跨域轉(zhuǎn) 發(fā)。在傳統(tǒng)的屏幕共享系統(tǒng)中通常采用不同的在不同端口偵聽的方式來區(qū)分不同的會話, 這種方式在通訊上較為簡單,但是在實際應(yīng)用中需要在域轉(zhuǎn)發(fā)網(wǎng)關(guān)所在網(wǎng)絡(luò)設(shè)備的防火墻 上開放一系列端口以備程序偵聽使用,在大多數(shù)時候只會使用到其中的小部分端口,這樣 一來在安全上留下了隱患。而用桌面會議全局標(biāo)識的方式來區(qū)分會話只需要開發(fā)一個端 口,便于工程實施且安全程度高;步驟3. 4 域轉(zhuǎn)發(fā)網(wǎng)關(guān)驗證信息域轉(zhuǎn)發(fā)網(wǎng)關(guān)根據(jù)桌面會議全局標(biāo)識檢查該主控端系統(tǒng)用戶欲參加的會議是否存 在,如不存在則阻止主控端系統(tǒng)登錄并斷開與主控端系統(tǒng)的連接;步驟3. 5 域轉(zhuǎn)發(fā)網(wǎng)關(guān)驗證通過后轉(zhuǎn)發(fā)數(shù)據(jù)域轉(zhuǎn)發(fā)網(wǎng)關(guān)根據(jù)桌面會議全局標(biāo)識檢查其參加的會議是否存在,如存在則轉(zhuǎn)發(fā)會 議數(shù)據(jù)給登錄的主控端系統(tǒng),主控端系統(tǒng)收到后進行解碼顯示,主控端用戶即能在本地實 時看到遠(yuǎn)程被控端用戶的電腦屏幕變化,達(dá)到屏幕共享的目的;步驟3. 6 域轉(zhuǎn)發(fā)網(wǎng)關(guān)接收控制數(shù)據(jù)域轉(zhuǎn)發(fā)網(wǎng)關(guān)接收主控端系統(tǒng)發(fā)來的控制數(shù)據(jù);步驟3. 7 域轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)域轉(zhuǎn)發(fā)網(wǎng)關(guān)非跨域轉(zhuǎn)發(fā)或跨域轉(zhuǎn)發(fā)控制數(shù)據(jù)給被控端用戶對應(yīng)的源服務(wù)器。轉(zhuǎn)發(fā) 網(wǎng)關(guān)通過查詢調(diào)度中心獲取當(dāng)前召開的桌面會議的跨域信息后,在本域內(nèi)向被控端或向其 他域轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)控制數(shù)據(jù)。如果當(dāng)前會議僅在一個域內(nèi)召開,則將控制數(shù)據(jù)轉(zhuǎn)發(fā)本域內(nèi) 的被控端;如果當(dāng)前會議跨域召開,則只將屏幕數(shù)據(jù)轉(zhuǎn)發(fā)其他域的轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟3. 8 被控端響應(yīng)操作被控端用戶對應(yīng)的源服務(wù)器響應(yīng)控制數(shù)據(jù)對應(yīng)的控制操作。被控端接收控制數(shù)據(jù)后,模擬人的操作在屏幕上做出鼠標(biāo)移動、點擊或鍵盤按鍵等;如圖5所示,所述的步驟四進一步包括步驟步驟4.1:登錄轉(zhuǎn)發(fā)網(wǎng)關(guān)一個參加跨域桌面會議的主控端,以下簡稱第一主控端,登錄到其域的轉(zhuǎn)發(fā)網(wǎng)關(guān), 以下簡稱第一轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟4. 2 轉(zhuǎn)發(fā)網(wǎng)關(guān)根據(jù)會議類型向調(diào)度中心查詢 第一轉(zhuǎn)發(fā)網(wǎng)關(guān)判斷第一主控端所參加的會議是本地會議還是跨域會議,若是跨域 會議則第一轉(zhuǎn)發(fā)網(wǎng)關(guān)向調(diào)度中心發(fā)出請求,調(diào)度中心經(jīng)調(diào)度策略后返回給第一主控端參與 的跨域會議所跨的另外一個域的轉(zhuǎn)發(fā)網(wǎng)關(guān)地址,該網(wǎng)關(guān)以下簡稱第二轉(zhuǎn)發(fā)網(wǎng)關(guān);若不是跨 域會議則第一轉(zhuǎn)發(fā)網(wǎng)關(guān)只在域內(nèi)轉(zhuǎn)發(fā);步驟4. 3 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)互聯(lián)第一轉(zhuǎn)發(fā)網(wǎng)關(guān)連接第二轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟4. 4 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)會晤第一轉(zhuǎn)發(fā)網(wǎng)關(guān)與第二轉(zhuǎn)發(fā)網(wǎng)關(guān)之間建立通訊進行會晤;步驟4. 5 本域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息獲取
第一轉(zhuǎn)發(fā)網(wǎng)關(guān)獲得第二轉(zhuǎn)發(fā)網(wǎng)關(guān)的用戶信息、第一屏數(shù)據(jù)、初始化數(shù)據(jù)等;步驟4. 6 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息獲取第二轉(zhuǎn)發(fā)網(wǎng)關(guān)獲得第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的會議信息及會議對應(yīng)人數(shù),并置第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的轉(zhuǎn)發(fā)需求標(biāo)志等;步驟4. 7 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)按需轉(zhuǎn)發(fā)第二轉(zhuǎn)發(fā)網(wǎng)關(guān)判斷第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的該會議轉(zhuǎn)發(fā)需求標(biāo)志。如為假,則不轉(zhuǎn)發(fā)該會 議任何數(shù)據(jù);若為真,則將本域該會議數(shù)據(jù),包括桌面數(shù)據(jù)和控制數(shù)據(jù),利用IOCP技術(shù)轉(zhuǎn)發(fā) 給第一轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟4. 8:主控端退出第一主控端從第一轉(zhuǎn)發(fā)網(wǎng)關(guān)退出,第一轉(zhuǎn)發(fā)網(wǎng)關(guān)向第二轉(zhuǎn)發(fā)網(wǎng)關(guān)和調(diào)度中心匯報 這一信息,以便在調(diào)度中心和第二轉(zhuǎn)發(fā)網(wǎng)關(guān)更新相關(guān)信息;步驟4. 9 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息更新第二轉(zhuǎn)發(fā)網(wǎng)關(guān)收到第一主控端從第一轉(zhuǎn)發(fā)網(wǎng)關(guān)退出的信息后,更新相應(yīng)的第一轉(zhuǎn) 發(fā)網(wǎng)關(guān)的相應(yīng)會議的人數(shù)計數(shù)器,如該會議的人數(shù)計數(shù)器變?yōu)?,則置第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的相應(yīng) 會議的轉(zhuǎn)發(fā)需求標(biāo)志為假,此后第二轉(zhuǎn)發(fā)網(wǎng)關(guān)不再給第一轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)任何有關(guān)該會議的 數(shù)據(jù);步驟4. 10 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)斷開連接第二轉(zhuǎn)發(fā)網(wǎng)關(guān)判斷第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的所有會議的轉(zhuǎn)發(fā)需求標(biāo)志,如均為假,則置第 一轉(zhuǎn)發(fā)網(wǎng)關(guān)的連接標(biāo)志為假,并斷開與第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的連接;為實現(xiàn)本發(fā)明的方法,現(xiàn)提供一種用于實現(xiàn)上述共享控制方法的系統(tǒng),該系統(tǒng)包 括被控端用戶群、主控端用戶群、轉(zhuǎn)發(fā)網(wǎng)關(guān)以及調(diào)度中心,如圖6所示,所有參與桌 面共享控制會議的用戶既可以通過源服務(wù)器成為被控端也可以通過端系統(tǒng)成為主控端。不 論是主控端還是被控端,它們都需通過轉(zhuǎn)發(fā)網(wǎng)關(guān)提供的服務(wù)實現(xiàn)其控制或被控制、共享或 被共享功能。一個轉(zhuǎn)發(fā)網(wǎng)關(guān)下的被控端用戶群和主控端用戶群構(gòu)成一個物理或者邏輯上的 域,如Domainl,所有的轉(zhuǎn)發(fā)網(wǎng)關(guān)又通過調(diào)度中心集中管理統(tǒng)一調(diào)度并進行負(fù)載均衡,形成 了一個集中式管理和網(wǎng)狀連接相結(jié)合的體系結(jié)構(gòu),如圖7、圖8所示,這樣既有集中式易管 理的優(yōu)點,又有網(wǎng)絡(luò)式可減少傳輸瓶頸和單點故障的優(yōu)點,域與域之間通過數(shù)據(jù)通道和控 制通道相互連接,既有一定的獨立性,又相互聯(lián)系,管理方便,即管理方面使用集中式,在傳 輸方面采用網(wǎng)絡(luò)式,同時在服務(wù)層中我們對各服務(wù)器做了冗余和雙機熱備措施,確保了系 統(tǒng)的高可靠性。
權(quán)利要求
一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的方法,其特征在于,該方法包含以下步驟步驟一轉(zhuǎn)發(fā)網(wǎng)關(guān)注冊域的轉(zhuǎn)發(fā)網(wǎng)關(guān)啟動后,向調(diào)度中心注冊,注冊成功后向調(diào)度中心提供本域相關(guān)信息,并在適當(dāng)時機更新這些信息;在具體實施過程中,一個局域網(wǎng)內(nèi)或同一區(qū)域內(nèi)的所有屏幕共享用戶組成一個域,一個域內(nèi)部署一臺或兩臺以上轉(zhuǎn)發(fā)網(wǎng)關(guān)服務(wù)器;在所有域之上部署一臺調(diào)度中心負(fù)責(zé)管理所有的轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟二被控端與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊被控端通過源服務(wù)器Sender與轉(zhuǎn)發(fā)網(wǎng)關(guān)Router交互處理數(shù)據(jù);所述被控端攔截被控端電腦的用戶操作,感知被控端電腦的屏幕變化,并將屏幕及相關(guān)數(shù)據(jù)編碼后發(fā)送給主控端,以供主控端觀看,以及響應(yīng)來至主控端的鍵盤鼠標(biāo)消息,提供被控制功能;步驟三主控端與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊主控端通過主控端系統(tǒng)Receiver認(rèn)證準(zhǔn)許后登錄到本地域的轉(zhuǎn)發(fā)網(wǎng)關(guān)上,由轉(zhuǎn)發(fā)網(wǎng)關(guān)為其提供服務(wù);所述的主控端接受轉(zhuǎn)發(fā)網(wǎng)關(guān)提供的各類服務(wù),從轉(zhuǎn)發(fā)網(wǎng)關(guān)請求屏幕更新數(shù)據(jù),解碼從轉(zhuǎn)發(fā)網(wǎng)關(guān)發(fā)來的屏幕數(shù)據(jù),顯示屏幕更新數(shù)據(jù)到主控端電腦屏幕上,發(fā)送主控端的控制信息給轉(zhuǎn)發(fā)網(wǎng)關(guān),以控制被控端,其中主控端的控制數(shù)據(jù)是指鍵盤、鼠標(biāo)數(shù)據(jù);步驟四各域轉(zhuǎn)發(fā)網(wǎng)關(guān)之間通訊轉(zhuǎn)發(fā)網(wǎng)關(guān)之間進行域之間的動態(tài)連接、數(shù)據(jù)交換、斷開操作,實現(xiàn)跨域屏幕共享及控制;各域轉(zhuǎn)發(fā)網(wǎng)關(guān)之間在調(diào)度中心的協(xié)調(diào)下,根據(jù)會議相關(guān)信息進行網(wǎng)關(guān)之間的跨域連接,并在相關(guān)域之間進行桌面數(shù)據(jù)的交換,組成一個邏輯轉(zhuǎn)發(fā)體系;會議結(jié)束后斷開連接,恢復(fù)域轉(zhuǎn)發(fā)網(wǎng)關(guān)的獨立性。
2.如權(quán)利要求1所述的一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的方法,其特征在 于,所述的步驟一包括如下步驟步驟1.1:構(gòu)建并啟動調(diào)度中心調(diào)度中心由調(diào)度模塊RServer、數(shù)據(jù)庫模塊DBServer、消息處理中間件服務(wù)器 MBusServer三個模塊組成;調(diào)度模塊RServer負(fù)責(zé)域轉(zhuǎn)發(fā)網(wǎng)關(guān)的具體調(diào)度工作,數(shù)據(jù)庫模 塊DBServer負(fù)責(zé)存儲域網(wǎng)關(guān)信息以及跨域桌面會議召開的相關(guān)信息,消息處理中間件服 務(wù)器MBusServer負(fù)責(zé)連接調(diào)度模塊、數(shù)據(jù)庫模塊,控制各域轉(zhuǎn)發(fā)網(wǎng)關(guān),以及作為對外功能 擴展時通訊接口;調(diào)度中心的這三個模塊部署在三臺服務(wù)器上或部署在同一臺服務(wù)器上;按順序分別啟 動消息處理中間件服務(wù)器MBusServer、數(shù)據(jù)庫模塊DBServer和調(diào)度模塊RServer,開始提 供服務(wù);調(diào)度中心負(fù)責(zé)調(diào)度管理所有的轉(zhuǎn)發(fā)網(wǎng)關(guān),并實現(xiàn)負(fù)載均衡,轉(zhuǎn)發(fā)網(wǎng)關(guān)每當(dāng)有用戶出入 時都向調(diào)度中心匯報本轉(zhuǎn)發(fā)網(wǎng)關(guān)的最新信息,其中包括本轉(zhuǎn)發(fā)網(wǎng)關(guān)上擁有的本地會議名 及會議人數(shù),本轉(zhuǎn)發(fā)網(wǎng)關(guān)上正在轉(zhuǎn)發(fā)的跨域會議名及會議人數(shù),本轉(zhuǎn)發(fā)網(wǎng)關(guān)的CPU負(fù)載,本 轉(zhuǎn)發(fā)網(wǎng)關(guān)的帶寬占用情況,本轉(zhuǎn)發(fā)網(wǎng)關(guān)承載的總會議數(shù),本轉(zhuǎn)發(fā)網(wǎng)關(guān)上承載的總主控端人 數(shù);調(diào)度中心每隔30秒主動向所有轉(zhuǎn)發(fā)網(wǎng)關(guān)詢問其當(dāng)時的轉(zhuǎn)發(fā)網(wǎng)關(guān)情況,了解各轉(zhuǎn)發(fā)網(wǎng)關(guān)的實時負(fù)載;當(dāng)一個轉(zhuǎn)發(fā)網(wǎng)關(guān)需要轉(zhuǎn)發(fā)某會議的數(shù)據(jù)時,調(diào)度中心根據(jù)負(fù)載均衡的權(quán)值獲 取方法選擇一個負(fù)載最輕并且能夠為該轉(zhuǎn)發(fā)網(wǎng)關(guān)服務(wù)的轉(zhuǎn)發(fā)網(wǎng)關(guān)地址返回給請求的轉(zhuǎn)發(fā) 網(wǎng)關(guān),其中的該轉(zhuǎn)發(fā)網(wǎng)關(guān)是指正在轉(zhuǎn)發(fā)該會議數(shù)據(jù)的轉(zhuǎn)發(fā)網(wǎng)關(guān),然后請求的轉(zhuǎn)發(fā)網(wǎng)關(guān)連接 由調(diào)度中心提供的網(wǎng)關(guān),接收該轉(zhuǎn)發(fā)網(wǎng)關(guān)的會議數(shù)據(jù),并為其連接用戶提供服務(wù); 步驟1.2:網(wǎng)關(guān)連接調(diào)度中心域轉(zhuǎn)發(fā)網(wǎng)關(guān)管理員手動啟動轉(zhuǎn)發(fā)網(wǎng)關(guān),或按照設(shè)置自動啟動轉(zhuǎn)發(fā)網(wǎng)關(guān)后,通過消息處 理中間件MBus向調(diào)度中心提供初始連接信息,調(diào)度中心接收后在系統(tǒng)中注冊該網(wǎng)關(guān),并向 轉(zhuǎn)發(fā)網(wǎng)關(guān)請求網(wǎng)關(guān)具體參數(shù);步驟1.3:注冊域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息轉(zhuǎn)發(fā)網(wǎng)關(guān)接受調(diào)度中心請求后向其提供本域的信息,如用戶注冊信息、會議信息、本域 轉(zhuǎn)發(fā)網(wǎng)關(guān)本身的地址信息和服務(wù)端口信息,調(diào)度中心收到后完善轉(zhuǎn)發(fā)網(wǎng)關(guān)的注冊信息; 步驟1. 4 適時更新域信息當(dāng)有用戶共享出桌面或有用戶登錄或退出時,向調(diào)度中心提供本域的更新信息,用于 調(diào)度中心維護域轉(zhuǎn)發(fā)網(wǎng)關(guān)服務(wù)狀態(tài);同時轉(zhuǎn)發(fā)網(wǎng)關(guān)向調(diào)度中心查詢桌面共享會議召開的其 他域網(wǎng)關(guān)信息,用于跨域桌面數(shù)據(jù)轉(zhuǎn)發(fā)。
3.如權(quán)利要求2所述的一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的方法,其特征在 于,步驟1. 1中所述的負(fù)載均衡的權(quán)值獲取方法為優(yōu)先選擇CPU占用率低或者網(wǎng)絡(luò)帶寬占用率低的服務(wù)器為用戶提供服務(wù),選擇“負(fù)載 最輕的網(wǎng)關(guān)”時,采用CPU優(yōu)先法和帶寬優(yōu)先法相結(jié)合的方法;具體為 當(dāng)CPU占用率大于或等于60%時,使用CPU優(yōu)先法CX0. 6+BX0. 4 ; 當(dāng)CPU占用率小于60%時,使用帶寬優(yōu)先法CX0. 4+BX0. 6 ; 其中C表示該轉(zhuǎn)發(fā)網(wǎng)關(guān)CPU的當(dāng)前占用率,B表示該轉(zhuǎn)發(fā)網(wǎng)關(guān)帶寬的當(dāng)前占用率。
4.如權(quán)利要求1所述的一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的方法,其特征在 于,所述的步驟二包括如下步驟步驟2. 1 被控端發(fā)送數(shù)據(jù)被控端的屏幕變化信息通過源服務(wù)器Sender發(fā)送屏幕數(shù)據(jù)到轉(zhuǎn)發(fā)網(wǎng)關(guān); 步驟2. 2:網(wǎng)關(guān)轉(zhuǎn)發(fā)數(shù)據(jù)轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)屏幕數(shù)據(jù)給主控端或其它域的轉(zhuǎn)發(fā)網(wǎng)關(guān);轉(zhuǎn)發(fā)網(wǎng)關(guān)通過查詢調(diào)度中心獲 取當(dāng)前召開的桌面會議的跨域信息后在本域內(nèi)向主控端或向其他域轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)屏幕數(shù) 據(jù);如果當(dāng)前會議僅在一個域內(nèi)召開,只需將屏幕數(shù)據(jù)轉(zhuǎn)發(fā)本域內(nèi)的主控端;如果當(dāng)前會 議跨域召開,則在域內(nèi)轉(zhuǎn)發(fā)的同時將屏幕數(shù)據(jù)轉(zhuǎn)發(fā)其他域的轉(zhuǎn)發(fā)網(wǎng)關(guān); 步驟2. 3:主控端接收數(shù)據(jù)主控端通過源服務(wù)器接收轉(zhuǎn)發(fā)網(wǎng)關(guān)到來的控制數(shù)據(jù);主控端接收來自域轉(zhuǎn)發(fā)網(wǎng)關(guān)的本 域內(nèi)的被控端屏幕數(shù)據(jù)或來自其他域的控制數(shù)據(jù); 步驟2. 4 被控端接收響應(yīng)被控端響應(yīng)從轉(zhuǎn)發(fā)網(wǎng)關(guān)收到的控制數(shù)據(jù)對應(yīng)的控制操作。
5.如權(quán)利要求1所述的一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的方法,其特征在 于,所述的步驟三包括如下步驟步驟3. 1 主控端登錄 主控端登錄本地域轉(zhuǎn)發(fā)網(wǎng)關(guān); 步驟3. 2 主控端認(rèn)證主控端系統(tǒng)用戶與轉(zhuǎn)發(fā)網(wǎng)關(guān)進行用戶認(rèn)證、能力集及版本協(xié)商;如果用戶認(rèn)證或能力集協(xié)商或版本協(xié)商其一失敗,則阻止主控端系統(tǒng)登錄; 步驟3. 3 主控端提供會議相關(guān)信息主控端系統(tǒng)用戶向本域內(nèi)的轉(zhuǎn)發(fā)網(wǎng)關(guān)提供其欲參加的桌面會議全局標(biāo)識自身相關(guān)的 信息;域轉(zhuǎn)發(fā)網(wǎng)關(guān)將具有相同桌面會議全局標(biāo)識的被控端和主控端組成一個會話,各域轉(zhuǎn) 發(fā)網(wǎng)關(guān)上具有相同桌面會議全局標(biāo)識的會話通過查詢調(diào)度中心獲知對方所在網(wǎng)關(guān)地址后 形成跨域轉(zhuǎn)發(fā);步驟3. 4 域轉(zhuǎn)發(fā)網(wǎng)關(guān)驗證信息 域轉(zhuǎn)發(fā)網(wǎng)關(guān)根據(jù)桌面會議全局標(biāo)識檢查該主控端系統(tǒng)用戶欲參加的會議是否存在,如 不存在則阻止主控端系統(tǒng)登錄并斷開與主控端系統(tǒng)的連接; 步驟3. 5 域轉(zhuǎn)發(fā)網(wǎng)關(guān)驗證通過后轉(zhuǎn)發(fā)數(shù)據(jù)域轉(zhuǎn)發(fā)網(wǎng)關(guān)根據(jù)桌面會議全局標(biāo)識檢查其參加的會議是否存在,如存在則轉(zhuǎn)發(fā)會議數(shù) 據(jù)給登錄的主控端系統(tǒng),主控端系統(tǒng)收到后進行解碼顯示,主控端用戶即能在本地實時看 到遠(yuǎn)程被控端用戶的電腦屏幕變化,達(dá)到屏幕共享的目的; 步驟3. 6 域轉(zhuǎn)發(fā)網(wǎng)關(guān)接收控制數(shù)據(jù) 域轉(zhuǎn)發(fā)網(wǎng)關(guān)接收主控端系統(tǒng)發(fā)來的控制數(shù)據(jù); 步驟3. 7:域轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)域轉(zhuǎn)發(fā)網(wǎng)關(guān)非跨域轉(zhuǎn)發(fā)或跨域轉(zhuǎn)發(fā)控制數(shù)據(jù)給被控端用戶對應(yīng)的源服務(wù)器;轉(zhuǎn)發(fā)網(wǎng)關(guān) 通過查詢調(diào)度中心獲取當(dāng)前召開的桌面會議的跨域信息后,在本域內(nèi)向被控端或向其他域 轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)控制數(shù)據(jù);如果當(dāng)前會議僅在一個域內(nèi)召開,則將控制數(shù)據(jù)轉(zhuǎn)發(fā)本域內(nèi)的被控端;如果當(dāng)前會議 跨域召開,則只將屏幕數(shù)據(jù)轉(zhuǎn)發(fā)其他域的轉(zhuǎn)發(fā)網(wǎng)關(guān); 步驟3. 8 被控端響應(yīng)操作被控端用戶對應(yīng)的源服務(wù)器響應(yīng)控制數(shù)據(jù)對應(yīng)的控制操作;被控端接收控制數(shù)據(jù)后, 模擬人的操作在屏幕上做出鼠標(biāo)移動、點擊或鍵盤按鍵。
6.如權(quán)利要求5所述的一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的方法,其特征在 于,所述的步驟3. 3中的桌面會議全局標(biāo)識是在整個系統(tǒng)中能唯一標(biāo)識一個桌面會議的標(biāo) 識,一個桌面會議是指一個或多個主控端用戶觀看、控制一個被控端用戶桌面形成的一個 會議。
7.如權(quán)利要求1所述的一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的方法,其特征在 于,所述的步驟四包括如下步驟步驟4.1:登錄轉(zhuǎn)發(fā)網(wǎng)關(guān)一個參加跨域桌面會議的主控端,以下簡稱第一主控端,登錄到其域的轉(zhuǎn)發(fā)網(wǎng)關(guān),其域 的轉(zhuǎn)發(fā)網(wǎng)關(guān)簡稱第一轉(zhuǎn)發(fā)網(wǎng)關(guān);步驟4. 2 轉(zhuǎn)發(fā)網(wǎng)關(guān)根據(jù)會議類型向調(diào)度中心查詢第一轉(zhuǎn)發(fā)網(wǎng)關(guān)判斷第一主控端所參加的會議是本地會議還是跨域會議;若是跨域會議則第一轉(zhuǎn)發(fā)網(wǎng)關(guān)向調(diào)度中心發(fā)出請求,調(diào)度中心經(jīng)調(diào)度策略后返回給第 一主控端參與的跨域會議所跨的另外一個域的轉(zhuǎn)發(fā)網(wǎng)關(guān)地址,該網(wǎng)關(guān)以下簡稱第二轉(zhuǎn)發(fā)網(wǎng) 關(guān);若不是跨域會議則第一轉(zhuǎn)發(fā)網(wǎng)關(guān)只在域內(nèi)轉(zhuǎn)發(fā); 步驟4. 3:跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)互聯(lián) 第一轉(zhuǎn)發(fā)網(wǎng)關(guān)連接第二轉(zhuǎn)發(fā)網(wǎng)關(guān); 步驟4. 4:跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)會晤第一轉(zhuǎn)發(fā)網(wǎng)關(guān)與第二轉(zhuǎn)發(fā)網(wǎng)關(guān)之間建立通訊進行會晤; 步驟4. 5 本域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息獲取第一轉(zhuǎn)發(fā)網(wǎng)關(guān)獲得第二轉(zhuǎn)發(fā)網(wǎng)關(guān)的用戶信息、第一屏數(shù)據(jù)、初始化數(shù)據(jù); 步驟4. 6 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息獲取第二轉(zhuǎn)發(fā)網(wǎng)關(guān)獲得第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的會議信息及會議對應(yīng)人數(shù),并置第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的轉(zhuǎn) 發(fā)需求標(biāo)志;步驟4. 7 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)按需轉(zhuǎn)發(fā)第二轉(zhuǎn)發(fā)網(wǎng)關(guān)判斷第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的該會議轉(zhuǎn)發(fā)需求標(biāo)志;如為假,則不轉(zhuǎn)發(fā)該會議任何數(shù)據(jù);若為真,則將本域該會議數(shù)據(jù),包括桌面數(shù)據(jù)和控 制數(shù)據(jù),利用輸入輸出完成端口 IOCP技術(shù)轉(zhuǎn)發(fā)給第一轉(zhuǎn)發(fā)網(wǎng)關(guān);、 步驟4.8 主控端退出第一主控端從第一轉(zhuǎn)發(fā)網(wǎng)關(guān)退出,第一轉(zhuǎn)發(fā)網(wǎng)關(guān)向第二轉(zhuǎn)發(fā)網(wǎng)關(guān)和調(diào)度中心匯報這一 信息,以便在調(diào)度中心和第二轉(zhuǎn)發(fā)網(wǎng)關(guān)更新相關(guān)信息; 步驟4. 9 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)信息更新第二轉(zhuǎn)發(fā)網(wǎng)關(guān)收到第一主控端從第一轉(zhuǎn)發(fā)網(wǎng)關(guān)退出的信息后,更新相應(yīng)的第一轉(zhuǎn)發(fā)網(wǎng) 關(guān)的相應(yīng)會議的人數(shù)計數(shù)器;若該會議的人數(shù)計數(shù)器變?yōu)?,則置第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的相應(yīng)會議的轉(zhuǎn)發(fā)需求標(biāo)志為假,此 后第二轉(zhuǎn)發(fā)網(wǎng)關(guān)不再給第一轉(zhuǎn)發(fā)網(wǎng)關(guān)轉(zhuǎn)發(fā)任何有關(guān)該會議的數(shù)據(jù); 步驟4. 10 跨域轉(zhuǎn)發(fā)網(wǎng)關(guān)斷開連接第二轉(zhuǎn)發(fā)網(wǎng)關(guān)判斷第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的所有會議的轉(zhuǎn)發(fā)需求標(biāo)志;若均為假,則置第一轉(zhuǎn) 發(fā)網(wǎng)關(guān)的連接標(biāo)志為假,并斷開與第一轉(zhuǎn)發(fā)網(wǎng)關(guān)的連接。
全文摘要
本發(fā)明公開了一種大規(guī)模異地局域網(wǎng)間屏幕共享及控制的方法。該方法首先在域的轉(zhuǎn)發(fā)網(wǎng)關(guān)啟動后,向調(diào)度中心注冊,注冊成功后向調(diào)度中心提供本域相關(guān)信息,并適時更新這些信息;然后被控端通過源服務(wù)器與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊;接著主控端與轉(zhuǎn)發(fā)網(wǎng)關(guān)通訊;最后各域轉(zhuǎn)發(fā)網(wǎng)關(guān)之間通訊,轉(zhuǎn)發(fā)網(wǎng)關(guān)之間按需進行域之間的動態(tài)連接、數(shù)據(jù)交換、斷開連接等操作,實現(xiàn)跨域屏幕共享及控制功能。本發(fā)明可滿足單域和多域大規(guī)模桌面共享控制需求,整體提高網(wǎng)絡(luò)性能及CPU效率,有效降低CPU和網(wǎng)絡(luò)負(fù)載,從而提高系統(tǒng)的穩(wěn)定性和魯棒性。
文檔編號H04L29/06GK101808096SQ20101013121
公開日2010年8月18日 申請日期2010年3月22日 優(yōu)先權(quán)日2010年3月22日
發(fā)明者李曉耕 申請人:北京大用科技有限責(zé)任公司