專利名稱:移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制,尤其是利用移動(dòng)通訊設(shè)備作客戶終端的系統(tǒng)及其方法。
背景技術(shù):
目前已經(jīng)有多種遠(yuǎn)程訪問(wèn)和控制計(jì)算機(jī)的技術(shù)。這類技術(shù)通??梢苑譃橐韵聨追N1)利用遙控器來(lái)遙控計(jì)算機(jī)作一些有限的特別指令,如開關(guān)機(jī)、播放光盤等(例如“一種實(shí)現(xiàn)遙控計(jì)算機(jī)的通用方法”,專利號(hào)96102482.8);2)利用非網(wǎng)絡(luò)裝置來(lái)對(duì)計(jì)算機(jī)直接遙控(例如“用無(wú)線電遙控計(jì)算機(jī)的裝置”,專利號(hào)99815630.2);3)利用計(jì)算機(jī)網(wǎng)絡(luò),如互聯(lián)網(wǎng)或局域網(wǎng),來(lái)遠(yuǎn)程訪問(wèn)和控制計(jì)算機(jī),例如微軟的遠(yuǎn)程桌面協(xié)議(Remote DesktopProtocol)、劍橋大學(xué)虛擬網(wǎng)絡(luò)計(jì)算項(xiàng)目的遠(yuǎn)程幀緩沖(Remote Frame Buffer)協(xié)議等。第一類技術(shù)僅允許用戶在短距離內(nèi)實(shí)現(xiàn)非常有限的遠(yuǎn)程控制功能。第二類技術(shù)允許用戶如同使用本地鼠標(biāo)和鍵盤一樣訪問(wèn)和控制計(jì)算機(jī),但仍僅局限于短距離內(nèi)。此兩類技術(shù)都需要額外的特殊硬件,這既提高了應(yīng)用成本,又降低了通用性。第三類技術(shù)用于計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制,利用已通用及標(biāo)準(zhǔn)的網(wǎng)絡(luò)作中介媒體,對(duì)遠(yuǎn)程計(jì)算機(jī)作局部甚至全功能的訪問(wèn)和操控,目前已經(jīng)比較成熟,并且相當(dāng)普及。然而,如果將之用于移動(dòng)通信設(shè)備,如手機(jī)或者掌上電腦(PDA),則面臨著許多問(wèn)題,因?yàn)檫@些技術(shù)設(shè)計(jì)之初是針對(duì)以計(jì)算機(jī)作為客戶終端的,并沒有考慮到移動(dòng)通信設(shè)備的情況,如有限的計(jì)算能力、存儲(chǔ)空間和顯示屏幕等。同時(shí),不同的移動(dòng)通信設(shè)備又有著不同的規(guī)格。這些問(wèn)題使得第三類技術(shù)在移動(dòng)通信設(shè)備中的應(yīng)用變得非常困難甚至不可能。
發(fā)明內(nèi)容
為了克服現(xiàn)有的上述第三類技術(shù)(即利用計(jì)算機(jī)網(wǎng)絡(luò)來(lái)作遠(yuǎn)程訪問(wèn)和控制計(jì)算機(jī)的技術(shù))不能應(yīng)用在移動(dòng)通信設(shè)備上的問(wèn)題,本發(fā)明結(jié)合了移動(dòng)通信技術(shù)和計(jì)算機(jī)遠(yuǎn)程訪問(wèn)控制技術(shù),提供一個(gè)移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制系統(tǒng)及其方法,讓用戶可以隨時(shí)隨地使用便攜的移動(dòng)通信設(shè)備,通過(guò)隨處可用的移動(dòng)通信網(wǎng)絡(luò),遠(yuǎn)程訪問(wèn)和控制已連入計(jì)算機(jī)網(wǎng)絡(luò)的計(jì)算機(jī)。用戶不再局限于移動(dòng)通信設(shè)備有限的計(jì)算能力和存儲(chǔ)空間,也不再受限于有限的信息和數(shù)據(jù)。本發(fā)明讓用戶可以執(zhí)行遠(yuǎn)程計(jì)算機(jī)的所有程序,訪問(wèn)、處理并存儲(chǔ)遠(yuǎn)程計(jì)算機(jī)的所有數(shù)據(jù),令用戶如同坐在遠(yuǎn)程計(jì)算機(jī)旁操作一樣。
本發(fā)明所設(shè)計(jì)的移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制系統(tǒng)包括a.移動(dòng)通信設(shè)備,能支持?jǐn)?shù)據(jù)服務(wù)和數(shù)據(jù)雙向傳輸,設(shè)有屏幕輸出及提供下列一個(gè)或以上的用戶輸入方法“單手鍵盤”(ITU-T標(biāo)準(zhǔn)電話鍵盤),“雙手鍵盤”(“QWERTY”鍵盤)和觸摸屏;
b.移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制客戶端(簡(jiǎn)作“客戶端”),為移動(dòng)通信設(shè)備可下載軟件,安裝在移動(dòng)通信設(shè)備上,為移動(dòng)通信設(shè)備用戶提供了一個(gè)遠(yuǎn)程訪問(wèn)和控制界面。它顯示了遠(yuǎn)程計(jì)算機(jī)的顯示畫面,對(duì)于屏幕小于遠(yuǎn)程計(jì)算機(jī)屏幕的移動(dòng)通信設(shè)備,允許用戶以屏幕卷動(dòng)來(lái)顯示遠(yuǎn)程計(jì)算機(jī)顯示畫面的不同部分,并且提供畫面縮放功能,讓用戶能夠看到一個(gè)遠(yuǎn)程計(jì)算機(jī)顯示畫面部份的縮略圖;同時(shí)也允許用戶通過(guò)標(biāo)準(zhǔn)的鍵盤和鼠標(biāo)事件來(lái)控制遠(yuǎn)程計(jì)算機(jī),對(duì)沒有標(biāo)準(zhǔn)鍵盤和鼠標(biāo)輸入的移動(dòng)通信設(shè)備提供輸入事件模擬;c.移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),能接入互聯(lián)網(wǎng),用于提供用戶利用移動(dòng)通信設(shè)備訪問(wèn)遠(yuǎn)程計(jì)算機(jī)的通信通道;d.遠(yuǎn)程計(jì)算機(jī),已接入互聯(lián)網(wǎng),并安裝有計(jì)算機(jī)遠(yuǎn)程訪問(wèn)和控制服務(wù)器程序(簡(jiǎn)作“服務(wù)器程序”);e.移動(dòng)通信設(shè)備適配層(簡(jiǎn)作“適配層”),為計(jì)算機(jī)軟件,安裝在遠(yuǎn)程計(jì)算機(jī)上,通過(guò)模擬自己為遠(yuǎn)程客戶,在客戶端和服務(wù)器程序之間作中介,轉(zhuǎn)發(fā)請(qǐng)求和回應(yīng),并對(duì)于計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制協(xié)議中不適用于移動(dòng)通信設(shè)備的內(nèi)容,作出適配及改變。
有了上述的軟,硬件設(shè)施作為基礎(chǔ),本發(fā)明的目的可以采用如下的技術(shù)措施來(lái)實(shí)現(xiàn),設(shè)計(jì)一種移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制方法,該方法包括如下步驟a.客戶端與適配層建立連接,并告知適配層客戶端參數(shù),包括客戶端設(shè)備的屏幕參數(shù)(分辨率、色彩深度)、所支持的畫面數(shù)據(jù)編碼格式和推薦使用的畫面數(shù)據(jù)編碼格式、顯示畫面數(shù)據(jù)的象素格式;b.適配層根據(jù)a.步驟所獲得的數(shù)據(jù),確定傳送給客戶端的顯示畫面數(shù)據(jù)的編碼和象素格式并通知客戶端。后續(xù)的屏幕數(shù)據(jù)傳輸將應(yīng)用此編碼和象素格式;c.適配層與服務(wù)器程序建立連接,使用與該服務(wù)器程序相匹配的計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制協(xié)議來(lái)通信;d.適配層從服務(wù)器程序取得第一個(gè)顯示畫面,并通知客戶端進(jìn)入畫面事件更新控制循環(huán);e.在畫面事件更新控制循環(huán)階段中,適配層不斷從服務(wù)器程序獲取畫面更新數(shù)據(jù),在客戶端要求時(shí)發(fā)送畫面更新,并將客戶端產(chǎn)生的事件更新轉(zhuǎn)發(fā)到服務(wù)器程序。
畫面事件更新控制循環(huán)是由下述三項(xiàng)措施所組成的,為實(shí)現(xiàn)本發(fā)明目的的核心步驟,包括a.畫面更新數(shù)據(jù)獲取-適配層不斷從服務(wù)器程序獲取屏幕刷新數(shù)據(jù),所獲得的屏幕刷新數(shù)據(jù)不會(huì)立即直接發(fā)送給客戶端,而是用以在緩存中重建整個(gè)刷新后的屏幕;b.客戶端畫面更新-客戶端要求適配層發(fā)送一個(gè)長(zhǎng)方形屏幕區(qū)域的畫面更新,該長(zhǎng)方形屏幕區(qū)域在適配層緩存中的整個(gè)遠(yuǎn)程計(jì)算機(jī)屏幕畫面區(qū)域范圍之內(nèi);適配層僅在客戶端要求時(shí)才會(huì)發(fā)送顯示畫面的更新數(shù)據(jù)給客戶端;若客戶端當(dāng)前的畫面縮放比例為一比一,則適配層將該長(zhǎng)方形屏幕區(qū)域的畫面以移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制方法所述的a.、b.步驟中協(xié)商確定的編碼進(jìn)行圖像編碼,并傳送至客戶端;若客戶端當(dāng)前的畫面縮放比例不為一比一,則適配層先將該長(zhǎng)方形屏幕區(qū)域的畫面以當(dāng)前的畫面縮放比例進(jìn)行縮放,然后再以在移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制方法所述的a.、b.步驟中協(xié)商確定的編碼進(jìn)行圖像編碼,并傳送至客戶端;c.事件更新-當(dāng)用戶按下鍵盤鍵或者鼠標(biāo)鍵時(shí)(包括模擬的鍵盤和鼠標(biāo)鍵),客戶端將輸入事件傳送給適配層,適配層接收客戶端送來(lái)的輸入事件,并將之轉(zhuǎn)發(fā)到服務(wù)器程序。服務(wù)器程序收到來(lái)自客戶端的事件更新,通過(guò)與操作系統(tǒng)的接口改變了遠(yuǎn)程計(jì)算機(jī)的鍵盤和鼠標(biāo)狀態(tài);服務(wù)器程序還通過(guò)與操作系統(tǒng)的接口抓取遠(yuǎn)程計(jì)算機(jī)的屏幕畫面,通過(guò)適配層發(fā)送至客戶端,達(dá)到了利用移動(dòng)通信設(shè)備來(lái)作遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制的目的。
本發(fā)明的有益效果是a.用戶不須要為計(jì)算機(jī)或移動(dòng)通信設(shè)備增加額外的硬件;b.利用已成熟并相當(dāng)普及的計(jì)算機(jī)遠(yuǎn)程訪問(wèn)和控制技術(shù);c.功能強(qiáng)大。所有遠(yuǎn)程計(jì)算機(jī)內(nèi)的程序均可執(zhí)行,程序本身無(wú)需任何改動(dòng),亦無(wú)需在開發(fā)程序時(shí)特別為移動(dòng)遠(yuǎn)程控制和訪問(wèn)設(shè)計(jì)。所有遠(yuǎn)程計(jì)算機(jī)內(nèi)的數(shù)據(jù)均可訪問(wèn)、處理和存儲(chǔ)。用戶如同坐在遠(yuǎn)程計(jì)算機(jī)旁操作一樣;d.通用性強(qiáng)。可兼容不同的移動(dòng)通信設(shè)備;e.覆蓋范圍大。利用了移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),使之成為一個(gè)覆蓋全國(guó),甚至全球的移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制系統(tǒng)。
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
圖1是本發(fā)明移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制系統(tǒng)的構(gòu)成示意圖。
圖2是移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制方法的實(shí)施例的流程圖。圖中的畫面事件更新控制循環(huán)的流程內(nèi)容僅為示例。
圖3是客戶端提供用戶以屏幕卷動(dòng)來(lái)顯示遠(yuǎn)程計(jì)算機(jī)顯示畫面的不同部分的示意圖。
圖4是客戶端提供用戶以畫面縮放來(lái)顯示遠(yuǎn)程計(jì)算機(jī)顯示畫面的部份縮略圖的示意圖。
具體實(shí)施例方式
如圖1所示,本發(fā)明所設(shè)計(jì)的移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制系統(tǒng)包括a.移動(dòng)通信設(shè)備,能支持?jǐn)?shù)據(jù)服務(wù)和數(shù)據(jù)雙向傳輸,設(shè)有屏幕輸出及提供下列一個(gè)或以上的用戶輸入方法“單手鍵盤”(ITU-T標(biāo)準(zhǔn)電話鍵盤),“雙手鍵盤”(“QWERTY”鍵盤)和觸摸屏;例如摩托羅拉,諾基亞的第2.5代和第3代手機(jī),微軟的Pocket PCPhone Edition的掌上電腦等;b.移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制客戶端(簡(jiǎn)作“客戶端”),為移動(dòng)通信設(shè)備可下載軟件(如J2ME軟件、Symbian軟件、Pocket PC軟件、Palm軟件、Windows CE軟件),安裝在移動(dòng)通信設(shè)備上,為移動(dòng)通信設(shè)備用戶提供了一個(gè)遠(yuǎn)程訪問(wèn)和控制界面。它顯示了遠(yuǎn)程計(jì)算機(jī)的顯示畫面,對(duì)于屏幕小于遠(yuǎn)程計(jì)算機(jī)屏幕的移動(dòng)通信設(shè)備,允許用戶以屏幕卷動(dòng)來(lái)顯示遠(yuǎn)程計(jì)算機(jī)顯示畫面的不同部分(見圖3),并且提供畫面縮放功能,讓用戶能夠看到一個(gè)遠(yuǎn)程計(jì)算機(jī)顯示畫面部份的縮略圖(見圖4);同時(shí)也允許用戶通過(guò)標(biāo)準(zhǔn)的鍵盤和鼠標(biāo)事件來(lái)控制遠(yuǎn)程計(jì)算機(jī),對(duì)沒有標(biāo)準(zhǔn)鍵盤和鼠標(biāo)輸入的移動(dòng)通信設(shè)備提供輸入事件模擬;c.移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),能接入互聯(lián)網(wǎng),用于提供用戶利用移動(dòng)通信設(shè)備訪問(wèn)遠(yuǎn)程計(jì)算機(jī)的通信通道,如第2.5代GPRS、第3代UMTS電訊網(wǎng)絡(luò)、或者甚至是802.11/a/b/g無(wú)線局域網(wǎng);d.遠(yuǎn)程計(jì)算機(jī),已接入互聯(lián)網(wǎng),并安裝有計(jì)算機(jī)遠(yuǎn)程訪問(wèn)和控制服務(wù)器程序(簡(jiǎn)作“服務(wù)器程序”),如使用微軟的遠(yuǎn)程桌面協(xié)議的服務(wù)器程序;e.移動(dòng)通信設(shè)備適配層(簡(jiǎn)作“適配層”),為計(jì)算機(jī)軟件,安裝在遠(yuǎn)程計(jì)算機(jī)上,通過(guò)模擬自己為遠(yuǎn)程客戶,在客戶端和服務(wù)器程序之間作中介,轉(zhuǎn)發(fā)請(qǐng)求和回應(yīng),并對(duì)于計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制協(xié)議中不適用于移動(dòng)通信設(shè)備的內(nèi)容,作出適配及改變;適配層使得原來(lái)的服務(wù)器程序可以與非計(jì)算機(jī)的客戶端相匹配,如手機(jī)或者掌上電腦。計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制仍然以原有方式運(yùn)作,無(wú)需經(jīng)過(guò)適配層的中介處理。適配層既可以作為一個(gè)嵌入式模塊嵌入服務(wù)器程序,又可以作為一個(gè)獨(dú)立的模塊工作在遠(yuǎn)程受訪計(jì)算機(jī)上。在前一種方式中,大部分服務(wù)器程序代碼無(wú)需改動(dòng);在后一種方式中,原服務(wù)器程序無(wú)需進(jìn)行任何改寫。
圖2顯示了本發(fā)明所設(shè)計(jì)的移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制方法的實(shí)施例的流程圖,其中適配層與服務(wù)器程序建立連接,使用與該服務(wù)器程序相匹配的計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制協(xié)議來(lái)通信;客戶端與適配層建立連接,以一個(gè)新的協(xié)議來(lái)通信,此協(xié)議定義了怎樣將遠(yuǎn)程顯示圖像傳送到客戶端,以及怎樣將用戶的輸入事件傳送到適配層;此協(xié)議以簡(jiǎn)單為主,對(duì)移動(dòng)通信設(shè)備作最少的假設(shè)和需求平臺(tái)無(wú)關(guān)、無(wú)需特定的體系結(jié)構(gòu)、無(wú)需特定的操作系統(tǒng)。以下為此協(xié)議和整個(gè)流程加作解釋握手請(qǐng)求(1)-客戶端請(qǐng)求與適配層建立連接??蛻舳烁嬷m配層客戶端參數(shù),包括客戶端設(shè)備的屏幕參數(shù)(分辨率、色彩深度)、所支持的畫面數(shù)據(jù)編碼格式和推薦使用的畫面數(shù)據(jù)編碼格式、顯示畫面數(shù)據(jù)的象素格式。
客戶端和適配層應(yīng)當(dāng)至少支持原始象素?cái)?shù)據(jù)編碼格式(raw encoding),即以一個(gè)二維的象素值數(shù)組來(lái)表示顯示畫面數(shù)據(jù)。其它可以使用的畫面編碼包括JPEG和PNG等。
握手應(yīng)答(2)-適配層獲得客戶端設(shè)備的屏幕參數(shù),并確定客戶端顯示畫面數(shù)據(jù)的編碼和象素格式。后續(xù)的屏幕數(shù)據(jù)傳輸中將應(yīng)用此編碼和象素格式。
服務(wù)器握手請(qǐng)求(3)-在客戶端與適配層建立一個(gè)連接后,適配層與服務(wù)器程序建立一個(gè)連接,并發(fā)送握手信息。適配層使用與該服務(wù)器程序相匹配的計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制協(xié)議來(lái)通信。一般來(lái)說(shuō),服務(wù)器程序需要客戶認(rèn)證。這一客戶認(rèn)證過(guò)程以及一些服務(wù)器程序特定的初始數(shù)據(jù)交換在這些步驟服務(wù)器握手請(qǐng)求(3)、服務(wù)器握手應(yīng)答+服務(wù)器查詢請(qǐng)求(4)、查詢請(qǐng)求(5)、查詢應(yīng)答(6)、服務(wù)器查詢應(yīng)答(7)中完成。
服務(wù)器握手應(yīng)答+服務(wù)器查詢請(qǐng)求(4)-服務(wù)器程序響應(yīng)適配層的連接請(qǐng)求,并查詢更多的客戶端信息。
查詢請(qǐng)求(5)-適配層將服務(wù)器程序的查詢請(qǐng)求轉(zhuǎn)發(fā)給客戶端。
查詢應(yīng)答(6)-客戶端回復(fù)服務(wù)器程序的查詢請(qǐng)求至適配層。
服務(wù)器查詢應(yīng)答(7)-適配層轉(zhuǎn)發(fā)客戶端的應(yīng)答至服務(wù)器程序。
首次畫面更新請(qǐng)求(8)-適配層請(qǐng)求服務(wù)器程序發(fā)送第一個(gè)顯示畫面。
首次畫面更新應(yīng)答(9)-適配層從服務(wù)器程序取得遠(yuǎn)程計(jì)算機(jī)的第一個(gè)顯示畫面。
畫面事件更新控制循環(huán)信號(hào)(10)-適配層通知客戶端進(jìn)入畫面事件更新控制循環(huán)。這一通知中還包括從首次畫面更新應(yīng)答(9)一步中所取得的顯示畫面的屏幕分辨率。
畫面事件更新控制循環(huán)(11)-這一循環(huán)包括下列三個(gè)步驟畫面更新數(shù)據(jù)獲取、客戶端畫面更新、事件更新;三個(gè)步驟的順序和次數(shù)可以是不確定的(注意三個(gè)步驟本身的子步驟順序不可被改變,但可以不是連續(xù)發(fā)生,如畫面更新應(yīng)答(11.1.2)必須發(fā)生在畫面更新請(qǐng)求(11.1.1)之后,但是中間可以有事件請(qǐng)求(11.2.1))。圖2中的畫面事件更新控制循環(huán)的流程內(nèi)容僅為示例。
畫面事件更新控制循環(huán)是由下述三項(xiàng)措施所組成的,為實(shí)現(xiàn)本發(fā)明目的的核心步驟,包括(一)客戶端畫面更新(含子步驟畫面更新請(qǐng)求,畫面更新應(yīng)答)客戶端顯示了遠(yuǎn)程計(jì)算機(jī)的顯示畫面,對(duì)于屏幕小于遠(yuǎn)程計(jì)算機(jī)屏幕的移動(dòng)通信設(shè)備,允許用戶以屏幕卷動(dòng)來(lái)顯示遠(yuǎn)程計(jì)算機(jī)顯示畫面的不同部分(見圖3),并且提供畫面縮放功能,讓用戶能夠看到一個(gè)遠(yuǎn)程計(jì)算機(jī)顯示畫面部分的縮略圖(見圖4)。
顯示畫面的更新是客戶端驅(qū)動(dòng)的,即僅當(dāng)客戶端要求時(shí),適配層才會(huì)發(fā)送顯示畫面的更新數(shù)據(jù)給客戶端。這使得協(xié)議可以根據(jù)實(shí)際情況調(diào)節(jié)性能??蛻舳怂俣群途W(wǎng)絡(luò)速度越慢,則更新頻率越慢;這樣就減少了網(wǎng)絡(luò)流量和客戶端的數(shù)據(jù)處理量,并確??蛻舳私邮盏降娘@示畫面總是最新的;客戶端要求適配層發(fā)送一個(gè)長(zhǎng)方形屏幕區(qū)域的畫面更新,該長(zhǎng)方形屏幕區(qū)域在適配層緩存中的整個(gè)遠(yuǎn)程計(jì)算機(jī)屏幕畫面區(qū)域范圍之內(nèi),通常客戶端只會(huì)要求在移動(dòng)通信設(shè)備上可見的顯示畫面部分作更新,因傳送顯示畫面不可見的部分的數(shù)據(jù)是沒有必要的,并且會(huì)浪費(fèi)帶寬。
畫面更新請(qǐng)求(11.1.1)-客戶端要求適配層發(fā)送一個(gè)更新的顯示畫面。畫面更新請(qǐng)求可以有兩種參數(shù)格式(x,y,w,h)或(x,y,w,h,wn,hn)。
如果請(qǐng)求的參數(shù)格式為(x,y,w,h),則表示客戶端以原始尺寸模式顯示畫面。如果請(qǐng)求的參數(shù)格式為(x,y,w,h,wn,hn),則表示客戶端以畫面縮放模式顯示畫面(圖4)。
適配層緩存中的整個(gè)遠(yuǎn)程計(jì)算機(jī)屏幕畫面區(qū)域以左上頂點(diǎn)為原點(diǎn),坐標(biāo)是(0、0)。在兩種參數(shù)格式中,參數(shù)x、y、w、h都代表客戶端要顯示的那部分長(zhǎng)方形屏幕區(qū)域。(x、y)是此屏幕區(qū)域的左上頂點(diǎn)坐標(biāo),w、h是此區(qū)域的寬和高。wn、hn是畫面縮放后的寬和高。
客戶端必須保證所請(qǐng)求的的顯示畫面在合法的遠(yuǎn)程屏幕邊界以內(nèi),即x+w必須小于遠(yuǎn)程計(jì)算機(jī)屏幕的寬,且y+h必須小于遠(yuǎn)程計(jì)算機(jī)屏幕的高。遠(yuǎn)程計(jì)算機(jī)屏幕的寬和高即在畫面事件更新控制循環(huán)信號(hào)(10)一步中所包括的遠(yuǎn)程計(jì)算機(jī)屏幕的屏幕分辨率。
畫面更新應(yīng)答(11.1.2)-如果畫面更新請(qǐng)求的參數(shù)格式為(x,y,w,h),則適配層將緩存中的顯示畫面(x,y,w,h)部分以在步驟握手請(qǐng)求(1)、握手應(yīng)答(2)中協(xié)商確定的編碼進(jìn)行圖像編碼,并傳送至移動(dòng)通信設(shè)備客戶端。
如果畫面更新請(qǐng)求的參數(shù)格式為(x,y,w,h,wn,hn),則適配層需要先將緩存中的顯示畫面(x,y,w,h)部分縮放至新的大小(wn,hn),然后再以在步驟握手請(qǐng)求(1)、握手應(yīng)答(2)中協(xié)商確定的編碼進(jìn)行圖像編碼,并傳送至移動(dòng)通信設(shè)備客戶端。
為了減少不必要的數(shù)據(jù)流量,對(duì)應(yīng)于多個(gè)畫面更新請(qǐng)求,適配層可以根據(jù)需要,只發(fā)送一個(gè)畫面更新應(yīng)答。
(二)事件更新(含子步驟事件請(qǐng)求,服務(wù)器事件請(qǐng)求)客戶端的輸入模式是基于標(biāo)準(zhǔn)的鍵盤和多鍵指示設(shè)備(鼠標(biāo))工作站模式。對(duì)沒有標(biāo)準(zhǔn)鍵盤和鼠標(biāo)輸入的移動(dòng)通信設(shè)備,如沒有“雙手鍵盤”(“QWERTY”鍵盤)和觸摸屏,僅有“單手鍵盤”(ITU-T標(biāo)準(zhǔn)電話鍵盤)的設(shè)備,客戶端須提供輸入事件模擬,如將鍵盤按鍵輸入轉(zhuǎn)化為鼠標(biāo)移動(dòng)或鼠標(biāo)按鍵。
事件請(qǐng)求(11.2.1)-當(dāng)用戶按下鍵盤鍵或者鼠標(biāo)鍵時(shí)(包括模擬的鍵盤和鼠標(biāo)鍵),客戶端會(huì)將輸入事件傳送給適配層。
服務(wù)器事件請(qǐng)求(11.2.2)-適配層接收客戶端送來(lái)的輸入事件,將之轉(zhuǎn)換成服務(wù)器程序的格式并將之傳送到服務(wù)器程序。
(三)畫面更新數(shù)據(jù)獲取(含子步驟服務(wù)器畫面更新請(qǐng)求,服務(wù)器畫面更新應(yīng)答)適配層通過(guò)服務(wù)器程序的特定協(xié)議,不斷從服務(wù)器程序獲取屏幕刷新數(shù)據(jù)。適配層不會(huì)將所獲得的屏幕刷新數(shù)據(jù)立即直接發(fā)送給客戶端,而是用以在緩存中重建整個(gè)刷新后的屏幕。
服務(wù)器畫面更新請(qǐng)求(11.3.1)-適配層通過(guò)服務(wù)器程序的特定協(xié)議請(qǐng)求獲得屏幕刷新數(shù)據(jù)。
服務(wù)器畫面更新應(yīng)答(11.3.2)-適配層從服務(wù)器程序取得遠(yuǎn)程計(jì)算機(jī)屏幕刷新數(shù)據(jù),并以所獲得的屏幕刷新數(shù)據(jù)在緩存中重建整個(gè)刷新后的屏幕。
對(duì)話終止(12)-客戶端告知適配層連接結(jié)束。
服務(wù)器對(duì)話終止(13)-適配層告知服務(wù)器程序連接結(jié)束。
權(quán)利要求
1.一種移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制系統(tǒng),包括a.移動(dòng)通信設(shè)備,能支持?jǐn)?shù)據(jù)服務(wù)和數(shù)據(jù)雙向傳輸,設(shè)有屏幕輸出及提供下列一個(gè)或以上的用戶輸入方法“單手鍵盤”(ITU-T標(biāo)準(zhǔn)電話鍵盤),“雙手鍵盤”(“QWERTY”鍵盤)和觸摸屏;b.移動(dòng)數(shù)據(jù)網(wǎng)絡(luò),能接入互聯(lián)網(wǎng),用于提供用戶利用移動(dòng)通信設(shè)備訪問(wèn)遠(yuǎn)程計(jì)算機(jī)的通信通道;c.遠(yuǎn)程計(jì)算機(jī),已接入互聯(lián)網(wǎng),并安裝有計(jì)算機(jī)遠(yuǎn)程訪問(wèn)和控制服務(wù)器程序(簡(jiǎn)作“服務(wù)器程序”);其特征是a.在移動(dòng)通信設(shè)備上安裝移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制客戶端(簡(jiǎn)作“客戶端”),為移動(dòng)通信設(shè)備可下載軟件,為移動(dòng)通信設(shè)備用戶提供了一個(gè)遠(yuǎn)程訪問(wèn)和控制界面;b.在遠(yuǎn)程計(jì)算機(jī)上安裝移動(dòng)通信設(shè)備適配層(簡(jiǎn)作“適配層”),為計(jì)算機(jī)軟件,通過(guò)模擬自己為遠(yuǎn)程客戶,在客戶端和服務(wù)器程序之間作中介,轉(zhuǎn)發(fā)請(qǐng)求和回應(yīng),并對(duì)于計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制協(xié)議中不適用于移動(dòng)通信設(shè)備的內(nèi)容,作出適配及改變。
2.根據(jù)權(quán)利要求1所述的移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制系統(tǒng),所述客戶端顯示了遠(yuǎn)程計(jì)算機(jī)的顯示畫面,對(duì)于屏幕小于遠(yuǎn)程計(jì)算機(jī)屏幕的移動(dòng)通信設(shè)備,允許用戶以屏幕卷動(dòng)來(lái)顯示遠(yuǎn)程計(jì)算機(jī)顯示畫面的不同部分,并且提供畫面縮放功能,讓用戶能夠看到一個(gè)遠(yuǎn)程計(jì)算機(jī)顯示畫面部份的縮略圖;同時(shí)也允許用戶通過(guò)標(biāo)準(zhǔn)的鍵盤和鼠標(biāo)事件來(lái)控制遠(yuǎn)程計(jì)算機(jī),對(duì)沒有標(biāo)準(zhǔn)鍵盤和鼠標(biāo)輸入的移動(dòng)通信設(shè)備提供輸入事件模擬。
3.一種移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制方法,該方法包括如下步驟a.客戶端與適配層建立連接,并告知適配層客戶端參數(shù),包括客戶端設(shè)備的屏幕參數(shù)(分辨率、色彩深度)、所支持的畫面數(shù)據(jù)編碼格式和推薦使用的畫面數(shù)據(jù)編碼格式、顯示畫面數(shù)據(jù)的象素格式;b.適配層根據(jù)a.步驟所獲得的數(shù)據(jù),確定傳送給客戶端的顯示畫面數(shù)據(jù)的編碼和象素格式并通知客戶端;c.適配層與服務(wù)器程序建立連接,使用與該服務(wù)器程序相匹配的計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制協(xié)議來(lái)通信;d.適配層從服務(wù)器程序取得第一個(gè)顯示畫面,并通知客戶端進(jìn)入畫面事件更新控制循環(huán);e.在畫面事件更新控制循環(huán)階段中,適配層不斷從服務(wù)器程序獲取畫面更新數(shù)據(jù),在客戶端要求時(shí)發(fā)送畫面更新,并將客戶端產(chǎn)生的事件更新轉(zhuǎn)發(fā)到服務(wù)器程序。
4.根據(jù)權(quán)利要求3所述的移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制方法,所述畫面事件更新控制循環(huán)是由下述三項(xiàng)措施所組成的,包括a.適配層不斷從服務(wù)器程序獲取屏幕刷新數(shù)據(jù),所獲得的屏幕刷新數(shù)據(jù)不會(huì)立即直接發(fā)送給客戶端,而是用以在緩存中重建整個(gè)刷新后的屏幕;b.客戶端要求適配層發(fā)送一個(gè)長(zhǎng)方形屏幕區(qū)域的畫面更新,該長(zhǎng)方形屏幕區(qū)域在適配層緩存中的整個(gè)遠(yuǎn)程計(jì)算機(jī)屏幕畫面區(qū)域范圍之內(nèi);適配層僅在客戶端要求時(shí)才會(huì)發(fā)送顯示畫面的更新數(shù)據(jù)給客戶端;若客戶端當(dāng)前的畫面縮放比例為一比一,則適配層將該長(zhǎng)方形屏幕區(qū)域的畫面以移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制方法所述的a.、b.步驟中協(xié)商確定的編碼進(jìn)行圖像編碼,并傳送至客戶端;若客戶端當(dāng)前的畫面縮放比例不為一比一,則適配層先將該長(zhǎng)方形屏幕區(qū)域的畫面以當(dāng)前的畫面縮放比例進(jìn)行縮放,然后再以在移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制方法所述的a.、b.步驟中協(xié)商確定的編碼進(jìn)行圖像編碼,并傳送至客戶端;c.當(dāng)用戶按下鍵盤鍵或者鼠標(biāo)鍵時(shí)(包括模擬的鍵盤和鼠標(biāo)鍵),客戶端將輸入事件傳送給適配層,適配層接收客戶端送來(lái)的輸入事件,并將之轉(zhuǎn)發(fā)到服務(wù)器程序。
全文摘要
移動(dòng)遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制系統(tǒng)及其方法,涉及遠(yuǎn)程計(jì)算機(jī)訪問(wèn)和控制,尤其是利用移動(dòng)通訊設(shè)備作客戶終端,克服了現(xiàn)有計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制技術(shù)不能應(yīng)用在移動(dòng)通信設(shè)備上的問(wèn)題。結(jié)合了移動(dòng)通信技術(shù)和計(jì)算機(jī)遠(yuǎn)程訪問(wèn)控制技術(shù),在遠(yuǎn)程計(jì)算機(jī)上加入一個(gè)移動(dòng)通信設(shè)備適配層,適配層通過(guò)模擬自己為遠(yuǎn)程客戶,在移動(dòng)通信設(shè)備和服務(wù)器程序之間作中介,轉(zhuǎn)發(fā)請(qǐng)求和回應(yīng),并對(duì)于計(jì)算機(jī)對(duì)計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)和控制協(xié)議中不適用于移動(dòng)通信設(shè)備的內(nèi)容,作出適配及改變。讓用戶可以隨時(shí)隨地使用便攜的移動(dòng)通信設(shè)備,通過(guò)隨處可用的移動(dòng)通信網(wǎng)絡(luò),遠(yuǎn)程訪問(wèn)和控制已連入互聯(lián)網(wǎng)的計(jì)算機(jī),如同坐在遠(yuǎn)程計(jì)算機(jī)旁操作一樣。
文檔編號(hào)H04L29/08GK1570904SQ0313988
公開日2005年1月26日 申請(qǐng)日期2003年7月23日 優(yōu)先權(quán)日2003年7月23日
發(fā)明者羅健民, 馬俊, 張恒 申請(qǐng)人:張恒, 馬俊, 羅健民