專(zhuān)利名稱(chēng):在多個(gè)遠(yuǎn)程訪問(wèn)服務(wù)器之間維持事務(wù)完整性的方法
技術(shù)領(lǐng)域:
本發(fā)明的解說(shuō)性實(shí)施例一般地涉及遠(yuǎn)程訪問(wèn)服務(wù)器,尤其涉及在故障期間維持遠(yuǎn)程訪問(wèn)解決方案中的事務(wù)完整性的方法。
背景技術(shù):
遠(yuǎn)程訪問(wèn)解決方案能使遠(yuǎn)離公司的工人安全地訪問(wèn)公司網(wǎng)絡(luò)。通過(guò)使用IPSec VPN或SSL VPN,遠(yuǎn)程用戶能以安全的方式訪問(wèn)公司網(wǎng)絡(luò)。從客戶端設(shè)備訪問(wèn)可通過(guò)一個(gè)或多個(gè)用于維持遠(yuǎn)程訪問(wèn)會(huì)話的網(wǎng)關(guān)服務(wù)器來(lái)路由。使用傳統(tǒng)的遠(yuǎn)程訪問(wèn)解決方案,用于維持遠(yuǎn)程訪問(wèn)會(huì)話完整性的網(wǎng)關(guān)服務(wù)器故障會(huì)導(dǎo)致會(huì)話中斷并丟失數(shù)據(jù)。
為解決網(wǎng)關(guān)服務(wù)器故障的問(wèn)題,一些不同的傳統(tǒng)方法被應(yīng)用以保證在硬件或軟件故障中系統(tǒng)資源的冗余和完全利用。在主動(dòng)/被動(dòng)服務(wù)器配置中,主動(dòng)服務(wù)器主持一些執(zhí)行進(jìn)程和應(yīng)用程序。該主動(dòng)服務(wù)器可主持基于IPSec VPN的會(huì)話或基于SSL的會(huì)話。一個(gè)或多個(gè)其它服務(wù)器被指定為備份即故障替補(bǔ)(failover)服務(wù)器。該故障替補(bǔ)服務(wù)器具有執(zhí)行正在主動(dòng)服務(wù)器上執(zhí)行的相同應(yīng)用程序和進(jìn)程的性能,但是該故障替補(bǔ)服務(wù)器直到被通報(bào)主動(dòng)服務(wù)器出現(xiàn)問(wèn)題時(shí)才執(zhí)行應(yīng)用和進(jìn)程。因?yàn)榭杀豢醋黛o靜地等待執(zhí)行當(dāng)備份服務(wù)器正運(yùn)行在故障替補(bǔ)模式時(shí)正被執(zhí)行在主動(dòng)服務(wù)器上的應(yīng)用和進(jìn)程,該故障替補(bǔ)服務(wù)器在該配置中稱(chēng)為“被動(dòng)”服務(wù)器。一旦被通知主動(dòng)服務(wù)器上存在問(wèn)題,故障替補(bǔ)服務(wù)器之一就作為新的主動(dòng)服務(wù)器被選擇,從先前“主動(dòng)”服務(wù)器接收最后保存的狀態(tài)/會(huì)話信息并以檢測(cè)到故障/問(wèn)題之前原主動(dòng)服務(wù)器執(zhí)行的方式繼續(xù)執(zhí)行。不幸的是,在從第一主動(dòng)服務(wù)器到新指定的主動(dòng)服務(wù)器的傳送期間該主動(dòng)/被動(dòng)服務(wù)器裝置會(huì)導(dǎo)致數(shù)據(jù)丟失。
不難理解,該故障替補(bǔ)服務(wù)器可設(shè)在相同的或分開(kāi)的物理節(jié)點(diǎn)上。包括設(shè)于相同物理節(jié)點(diǎn)的故障替補(bǔ)服務(wù)器的實(shí)現(xiàn)方式面臨這樣的風(fēng)險(xiǎn)導(dǎo)致故障替補(bǔ)的故障與將同樣會(huì)影響故障替補(bǔ)服務(wù)器的物理節(jié)點(diǎn)元件相關(guān)聯(lián)。在包括獨(dú)立物理源(如存儲(chǔ)器、磁盤(pán)陣列、母板等)的獨(dú)立的物理節(jié)點(diǎn)設(shè)置故障替補(bǔ)服務(wù)器降低了獨(dú)立物理元件導(dǎo)致主動(dòng)和故障替補(bǔ)服務(wù)器都出故障的風(fēng)險(xiǎn),但增加了整個(gè)系統(tǒng)在硬件獲得和管理上的成本。
另一提供服務(wù)器間冗余的方法是在主動(dòng)/主動(dòng)配置中安排服務(wù)器。在主動(dòng)/主動(dòng)配置中,主動(dòng)和被動(dòng)故障替補(bǔ)服務(wù)器都執(zhí)行一組相同的應(yīng)用程序和進(jìn)程。當(dāng)?shù)谝恢鲃?dòng)服務(wù)器發(fā)生故障時(shí),第二主動(dòng)服務(wù)器將資源分配給那些原來(lái)由故障服務(wù)器處理的應(yīng)用實(shí)例和進(jìn)程。
不幸的是,主動(dòng)/被動(dòng)和主動(dòng)/主動(dòng)故障替補(bǔ)服務(wù)器配置都不能保存遠(yuǎn)程訪問(wèn)會(huì)話的會(huì)話狀態(tài)。沒(méi)有一個(gè)傳統(tǒng)故障替補(bǔ)執(zhí)行允許遠(yuǎn)程會(huì)話狀態(tài)被映射到故障替補(bǔ)服務(wù)器中而使故障替補(bǔ)服務(wù)器在不終止現(xiàn)有會(huì)話并不丟失數(shù)據(jù)的條件下被轉(zhuǎn)換。理想的情況是要能夠在影響主持遠(yuǎn)程會(huì)話的主動(dòng)服務(wù)器的故障事件中保存現(xiàn)有遠(yuǎn)程會(huì)話和其會(huì)話數(shù)據(jù)。
發(fā)明內(nèi)容
本發(fā)明的解說(shuō)性實(shí)施例能夠使遠(yuǎn)程會(huì)話狀態(tài)在主網(wǎng)關(guān)服務(wù)器和主動(dòng)故障替補(bǔ)服務(wù)器之間同步。從客戶端設(shè)備發(fā)送到主持遠(yuǎn)程會(huì)話的主網(wǎng)關(guān)服務(wù)器的輸入數(shù)據(jù)被傳送到主持鏡像會(huì)話的主動(dòng)故障替補(bǔ)服務(wù)器。直到對(duì)故障替補(bǔ)服務(wù)器的數(shù)據(jù)分配被確認(rèn),輸入數(shù)據(jù)的接收確認(rèn)才被從主網(wǎng)關(guān)設(shè)備發(fā)回客戶端設(shè)備。在主網(wǎng)關(guān)服務(wù)器上從遠(yuǎn)程會(huì)話中對(duì)應(yīng)用資源的請(qǐng)求是允許的,然而那些從運(yùn)行在故障替補(bǔ)服務(wù)器上的鏡像會(huì)話中請(qǐng)求的應(yīng)用資源被截取并丟棄以防止應(yīng)用資源沖突。響應(yīng)從主網(wǎng)關(guān)服務(wù)器到運(yùn)行在后端服務(wù)器上的應(yīng)用資源的請(qǐng)求的被接收的數(shù)據(jù),在被傳送到客戶端設(shè)備之前同樣地被映射到故障替補(bǔ)服務(wù)器。在從運(yùn)行在故障替補(bǔ)服務(wù)器上的鏡像會(huì)話中被截取的同時(shí),該響應(yīng)被從主網(wǎng)關(guān)服務(wù)器提交給客戶端設(shè)備。在影響主網(wǎng)關(guān)服務(wù)器的故障事件中,主持映射的會(huì)話的故障替補(bǔ)服務(wù)器之一被選作為主動(dòng)服務(wù)器,并且其權(quán)限被改變以允許新選擇的主網(wǎng)關(guān)與客戶端設(shè)備和應(yīng)用資源通信。
依據(jù)本發(fā)明的一個(gè)方面,在遠(yuǎn)程訪問(wèn)解決方案中提供替補(bǔ)冗余的系統(tǒng)包括后端服務(wù)器上的至少一個(gè)應(yīng)用資源故障替補(bǔ)。該系統(tǒng)還包括多個(gè)網(wǎng)關(guān)服務(wù)器。多個(gè)網(wǎng)關(guān)服務(wù)器之一被指定為主網(wǎng)關(guān)服務(wù)器,而其它服務(wù)器被指定為故障替補(bǔ)網(wǎng)關(guān)服務(wù)器。多個(gè)網(wǎng)關(guān)服務(wù)器中每一個(gè)主持與同一應(yīng)用的至少一個(gè)執(zhí)行應(yīng)用實(shí)例的會(huì)話,替補(bǔ)網(wǎng)關(guān)服務(wù)器上的各會(huì)話被維持在與主網(wǎng)關(guān)服務(wù)器上的會(huì)話相同的狀態(tài)。該主網(wǎng)關(guān)服務(wù)器是網(wǎng)關(guān)服務(wù)器中唯一被允許與應(yīng)用資源通信的服務(wù)器。該系統(tǒng)還包括用VPN與主網(wǎng)關(guān)服務(wù)器通信的客戶端設(shè)備。該客戶端設(shè)備用VPN接收在主網(wǎng)關(guān)服務(wù)器上執(zhí)行的會(huì)話中的應(yīng)用實(shí)例的輸出。該客戶端設(shè)備也通過(guò)VPN將輸出發(fā)送到主網(wǎng)關(guān)服務(wù)器。被接收的輸出由客戶端設(shè)備在閱讀器上顯示。
依據(jù)本發(fā)明的另一方面,在遠(yuǎn)程訪問(wèn)解決方案的方法中提供故障替補(bǔ)冗余的方法,包括在后端服務(wù)器上提供至少一個(gè)應(yīng)用資源的步驟。該方法還包括將多個(gè)網(wǎng)關(guān)服務(wù)器之一指定為主網(wǎng)關(guān)服務(wù)器而將其它服務(wù)器指定為故障替補(bǔ)網(wǎng)關(guān)服務(wù)器的步驟。每個(gè)網(wǎng)關(guān)服務(wù)器主持與同一應(yīng)用的至少一個(gè)執(zhí)行應(yīng)用實(shí)例的會(huì)話。該主網(wǎng)關(guān)服務(wù)器是多個(gè)網(wǎng)關(guān)服務(wù)器中唯一被允許與至少一個(gè)應(yīng)用資源通信的服務(wù)器。該方法還包括在故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上以與主網(wǎng)關(guān)服務(wù)器上的會(huì)話相同的狀態(tài)維持會(huì)話的步驟。此外,該方法包括在通過(guò)VPN與主網(wǎng)關(guān)服務(wù)器通信的客戶端設(shè)備處接收在主網(wǎng)關(guān)服務(wù)器上的會(huì)話中執(zhí)行的至少一個(gè)應(yīng)用實(shí)例的輸出,被接收的輸出由客戶端設(shè)備在閱讀器上顯示。
本發(fā)明的特征在所附的權(quán)利要求中指出。上面描述的本發(fā)明的優(yōu)點(diǎn)和本發(fā)明的其他優(yōu)點(diǎn)通過(guò)參照下面結(jié)合附圖的描述當(dāng)可更好地理解,其中圖1表示適于用多網(wǎng)關(guān)服務(wù)器前面的前端服務(wù)器來(lái)實(shí)現(xiàn)本發(fā)明的解說(shuō)性實(shí)施例的環(huán)境;圖2A表示本發(fā)明中使用的典型計(jì)算機(jī)的模塊圖;圖2B表示計(jì)算機(jī)系統(tǒng)的實(shí)施例,在該計(jì)算機(jī)系統(tǒng)中,處理器通過(guò)存儲(chǔ)器端口直接與主存通信;圖3是本發(fā)明的解說(shuō)性實(shí)施例中將指向主網(wǎng)關(guān)服務(wù)器上的主動(dòng)會(huì)話的數(shù)據(jù)映射到故障替補(bǔ)服務(wù)器上的故障替補(bǔ)會(huì)話的步驟順序的流程圖;圖4是本發(fā)明的解說(shuō)性實(shí)施例中從應(yīng)用資源請(qǐng)求數(shù)據(jù)并將響應(yīng)映射到故障替補(bǔ)會(huì)話的步驟順序的流程圖;圖5表示一可選實(shí)施例,其中,應(yīng)用屏幕緩沖器被保持與由瘦客戶機(jī)或公用信息機(jī)請(qǐng)求的遠(yuǎn)程會(huì)話保持同步;圖6是解說(shuō)性實(shí)施例中在主網(wǎng)關(guān)服務(wù)器中檢測(cè)故障并向從故障替補(bǔ)服務(wù)器中選出的新的主網(wǎng)關(guān)服務(wù)器傳送的步驟順序的流程圖。
具體實(shí)施例方式
本發(fā)明的解說(shuō)性實(shí)施例提供了從主動(dòng)主網(wǎng)關(guān)服務(wù)器到主動(dòng)故障替補(bǔ)服務(wù)器鏡像會(huì)話的能力。通過(guò)復(fù)制所有從客戶端接收的輸入和所有從應(yīng)用資源接收的響應(yīng),故障替補(bǔ)會(huì)話能被維持在與客戶端設(shè)備借以進(jìn)行通信的主網(wǎng)關(guān)服務(wù)器上的會(huì)話相同的狀態(tài)上。在故障事件中,現(xiàn)有的會(huì)話可在不中斷會(huì)話并具有最少數(shù)據(jù)丟失的條件下傳送到故障替補(bǔ)服務(wù)器(該服務(wù)器成為主網(wǎng)關(guān)服務(wù)器)。
圖1描述了適于實(shí)現(xiàn)本發(fā)明的解說(shuō)性實(shí)施例的環(huán)境。包含代理12的客戶機(jī)10通過(guò)網(wǎng)絡(luò)20與前端服務(wù)器30通信。該前端服務(wù)器30包含分配進(jìn)程32。該分配進(jìn)程32復(fù)制并將從客戶端設(shè)備接收的數(shù)據(jù)分配到主網(wǎng)關(guān)服務(wù)器40上的主動(dòng)遠(yuǎn)程會(huì)話42和故障替補(bǔ)服務(wù)器50、60和70上的鏡像故障替補(bǔ)會(huì)話52、62和72。分別運(yùn)行在各主動(dòng)和故障替補(bǔ)會(huì)話42、52、62和72上的應(yīng)用實(shí)例44、54、64和74,可從由后端服務(wù)器80主持的應(yīng)用資源82請(qǐng)求數(shù)據(jù)。應(yīng)用資源82對(duì)執(zhí)行應(yīng)用實(shí)例的數(shù)據(jù)請(qǐng)求的響應(yīng)被返回到前端服務(wù)器30,以分配到主動(dòng)會(huì)話42和故障替補(bǔ)會(huì)話52、62和72的的分配進(jìn)程32。
現(xiàn)在更詳細(xì)地參照?qǐng)D1,客戶機(jī)10可在網(wǎng)絡(luò)20上通過(guò)建立IPSECVPN或SSL VPN來(lái)與在主網(wǎng)關(guān)服務(wù)器40上建立的遠(yuǎn)程會(huì)話(主動(dòng)會(huì)話42)通信。該客戶機(jī)可包括緩沖器14,其中代理12緩沖被發(fā)送到主網(wǎng)關(guān)服務(wù)器40的數(shù)據(jù)的副本,直到從主網(wǎng)關(guān)服務(wù)器接收到確認(rèn)。網(wǎng)絡(luò)20可為互聯(lián)網(wǎng)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、外部網(wǎng)、企業(yè)內(nèi)部網(wǎng)、無(wú)線網(wǎng)絡(luò)、衛(wèi)星網(wǎng)絡(luò)或能夠允許客戶機(jī)10與主網(wǎng)關(guān)服務(wù)器40上的主動(dòng)會(huì)話42通信的其它類(lèi)型的網(wǎng)絡(luò)。主網(wǎng)關(guān)服務(wù)器40和故障替補(bǔ)服務(wù)器50、60和70可包含網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)表46、56和76,允許服務(wù)器在由主VPN服務(wù)器建立遠(yuǎn)程會(huì)話期間執(zhí)行分配給客戶機(jī)10的IP地址的NAT。如前所述,主動(dòng)會(huì)話42和故障替補(bǔ)會(huì)話52、62和72可包含執(zhí)行應(yīng)用實(shí)例44、54、64和74,它們從后端服務(wù)器80上的應(yīng)用資源82請(qǐng)求數(shù)據(jù)。如下面將更詳細(xì)闡述的,故障替補(bǔ)服務(wù)器50、60和70還包含過(guò)濾器56、66和76,在故障替補(bǔ)服務(wù)器工作在故障替補(bǔ)模式時(shí)它們將從替補(bǔ)會(huì)話52、62和72到應(yīng)用資源82的請(qǐng)求過(guò)濾并丟棄對(duì)于故障替補(bǔ)過(guò)濾器。應(yīng)用資源82對(duì)在主動(dòng)會(huì)話42中的執(zhí)行應(yīng)用實(shí)例44的請(qǐng)求的響應(yīng)被路由連接到分配進(jìn)程32上,以分配到主動(dòng)會(huì)話和故障替補(bǔ)會(huì)話52、62和72。本領(lǐng)域技術(shù)人員會(huì)認(rèn)識(shí)到分配進(jìn)程32的位置可在本發(fā)明的范圍內(nèi)變化,它可不設(shè)在前端服務(wù)器上而設(shè)在不同的網(wǎng)絡(luò)可訪問(wèn)位置上,并且仍然執(zhí)行本文描述的功能。
再來(lái)看圖1,更具體地說(shuō),在許多實(shí)施例中,客戶機(jī)10、前端服務(wù)器30和后端服務(wù)器80作為由惠普公司(Hewlett-PackardCorporation of Palo Alto,California)或戴爾公司(the Dell Corporation ofRound Rock,TX)制造的那樣的個(gè)人計(jì)算機(jī)或計(jì)算機(jī)服務(wù)器被提供。圖2A和2B描述了在那些實(shí)施例中作為客戶機(jī)10、前端服務(wù)器30和后端服務(wù)器80使用的典型計(jì)算機(jī)200的模塊圖。如圖2A和2B所示,各計(jì)算機(jī)200包括中央處理器202和主存儲(chǔ)器204。各計(jì)算機(jī)200也可包括其它可選部件,如一個(gè)或多個(gè)輸入/輸出設(shè)備230a-230n(總體上用附圖標(biāo)記230表示),和與中央處理器202通信的高速緩存240。
中央處理器202是響應(yīng)并處理從主存儲(chǔ)器204中獲取的指令的任何邏輯電路。在許多實(shí)施例中,中央處理器由微處理器部件提供,如由英特爾公司(Intel Corporation of Mountain View,California)制造的8088、80286、80386、80486、Pentium、Pentium Pro、PentiumII、Celeron或Xeon處理器;由摩托羅拉公司(Motorola Corporation ofSchaumburg,Illinois)制造的68000、68010、68020、68030、68040、PowerPC601、PowerPC604、PowerPC604e、MPC603e、MPC603ei、MPC603ev、MPC603r、MPC603p、MPC740、MPC745、MPC750、MPC755、MPC7400、MPC7410、MPC7441、MPC7445、MPC7447、MPC7450、MPC7451、MPC7455、MPC7457處理器;由Transmeta公司(Transmeta Corporation of Santa Clara,Califomia)制造的CrusoeTM5800、Crusoe TM5600、Crusoe TM5500、Crusoe TM5400、EfficeonTM8600、Efficeon TM8300或Efficeon TM8620處理器;由國(guó)際商用機(jī)器公司(International Business Machines of White Plains,New York)制造的RS/6000處理器、RS64、RS 64II、P2SC、POWER3、RS64III、POWER3-II、RS 64IV、POWER4、POWER4+、POWERS或POWER6處理器;或由先進(jìn)微器件公司(Advanced Micro Devices of Sunnyvale,California)制造的AMD Opteron、AMD Athalon 64FX、AMD Athalon或AMD Duron處理器。
在圖2A所示的實(shí)施例中,處理器202通過(guò)系統(tǒng)總線220(下面更詳細(xì)描述)與主存儲(chǔ)器204通信。圖2B描述了計(jì)算機(jī)系統(tǒng)200的實(shí)施例,其中處理器通過(guò)存儲(chǔ)器端口與主存儲(chǔ)器204直接通信。例如,圖2B中,主存儲(chǔ)器204可為DRDRAM。
圖2A和2B描述了這樣的實(shí)施例,其中主處理器202通過(guò)二級(jí)總線(有時(shí)稱(chēng)為“后部”總線)直接與高速緩存240通信。在其它的實(shí)施例中,主處理器202用系統(tǒng)總線220與高速緩存240通信。高速緩存240通常具有比主存儲(chǔ)器204更快的響應(yīng)時(shí)間,并且一般由SRAM、BSRAM或EDRAM提供。
在圖2A顯示的實(shí)施例中,處理器202通過(guò)局部系統(tǒng)總線220與各種I/O設(shè)備230通信。各種總線可用于連接中央處理器202和I/O設(shè)備230,包括VESA VL總線、ISA總線、EISA總線、微通道結(jié)構(gòu)(MCA)總線、PCI總線、PCI-X總線、PCI-Express總線或NuBus。對(duì)于在其中I/O設(shè)備是視頻顯示器的實(shí)施例,處理器202可使用高級(jí)圖形接口(AGP)與顯示器通信。圖2B描述了計(jì)算機(jī)系統(tǒng)的實(shí)施例,其中,主處理器202通過(guò)HyperTransport、Rapid I/O或InfiniBand直接與I/O設(shè)備230b通信。圖2B也描述了在其中局部總線和直接通信被混合的實(shí)施例處理器202在與I/O設(shè)備230b通信時(shí)使用局部互聯(lián)總線與I/O設(shè)備230a通信。
相當(dāng)多種類(lèi)的I/O設(shè)備230可出現(xiàn)在計(jì)算機(jī)系統(tǒng)200中。輸入設(shè)備包括鍵盤(pán)、鼠標(biāo)、跟蹤球、微型電話和畫(huà)圖板。輸出設(shè)備包括視頻顯示器、揚(yáng)聲器、噴墨打印機(jī)、激光打印機(jī)和熱染料升華(dye-sublimation)打印機(jī)。I/O設(shè)備還可為微計(jì)算機(jī)系統(tǒng)200提供大容量存儲(chǔ)器如硬盤(pán)驅(qū)動(dòng)器、用于接收如3.5寸、5.25寸盤(pán)的軟盤(pán)的軟盤(pán)驅(qū)動(dòng)器或ZIP盤(pán)、CD-ROM驅(qū)動(dòng)、CD-R/RW驅(qū)動(dòng)、DVD-ROM驅(qū)動(dòng)這樣的由Twintech工業(yè)公司(Twintech Industry,Inc.of Los Alamitos,California)制造的設(shè)備。
在另一些實(shí)施例中,I/O設(shè)備230可為系統(tǒng)總線220和外部通信總線之間的橋梁,這些外部通信總線例如是USB總線、Apple Desktop總線、RS-232連續(xù)連接、SCSI總線、FireWire總線、FireWire800總線、以太網(wǎng)總線、AppleTalk總線、Gigabit Ethernet總線、異步傳送模式總線、HIPPI總線、SeriaIPlus總線、SCI/LAMP總線、FibreChannel總線或Serial Attached small computer system interface總線。
圖2A和2B中描述的這類(lèi)通用臺(tái)式計(jì)算機(jī)通常在操作系統(tǒng)的控制下運(yùn)行,該操作系統(tǒng)控制任務(wù)和對(duì)系統(tǒng)資源訪問(wèn)的時(shí)序。除了其他操作系統(tǒng),典型的操作系統(tǒng)包括微軟公司(Microsoft Corp.ofRedrnond,Washington)制作的MICROSOFT WINDOWS、蘋(píng)果電腦公司(Apple Computer of Cupertino,California)制作的MacOS、國(guó)際商用機(jī)器公司(International Business Machines of Armonk,New York)制作的OS/2以及Caldera公司(Caldera Corp.of Salt Lake City,Utah)發(fā)布的可免費(fèi)得到的操作系統(tǒng)Linux。
對(duì)于其中客戶機(jī)10作為移動(dòng)設(shè)備的實(shí)施例,客戶端設(shè)備可為JAVA啟動(dòng)的移動(dòng)電話,如摩托羅拉公司(Motorola Corp.ofSchaumburg,Illinois)制造的i50sx、i55sr、i58sr、i85s、i88s、i90c、i95cl或im11000;日本京瓷公司(Kyocera of Kyoto,Japan)制造的6035或7135;或者韓國(guó)三星電子公司(Samsung Electronics Co.,Ltd.,of Seoul,Korea)制造的i300或i330。在其中客戶機(jī)10為移動(dòng)的其他實(shí)施例中,客戶端設(shè)備可以是在PalmOS操作系統(tǒng)控制下運(yùn)行的個(gè)人數(shù)字助理(PDA),如palmOne公司(palmOne,Inc.of Milpitas,California)生產(chǎn)的Tungsten W、V II、V II x、i705。在另一些實(shí)施例中,客戶端設(shè)備20可為在PocketPC操作系統(tǒng)控制下運(yùn)行的個(gè)人數(shù)字助理(PDA),如惠普公司(Hewlett-Packard Corporation of Palo Alto,Caiifbrnia)生產(chǎn)的iPAQ 4155、iPAQ 5555、iPAQ 1945、iPAQ 2215和iPAQ 4255或美國(guó)東芝公司(Toshiba America,Inc.of New York,New York)生產(chǎn)的Toshiba PocketPC e405。在再一些實(shí)施例中,客戶端設(shè)備是PDA/電話設(shè)備如palmOne公司(palmOne,Inc.of Milpitas,California)制造的Treo180、Treo 270或Treo 600的結(jié)合。在又一實(shí)施例中,客戶端設(shè)備20是在PocketPC操作系統(tǒng)控制下運(yùn)行的移動(dòng)電話,如摩托羅拉公司制造的MPx200。
由圖1所示的體系結(jié)構(gòu)中描述的部件執(zhí)行的功能可參照?qǐng)D3進(jìn)一步闡述。圖3是本發(fā)明中將指向主網(wǎng)關(guān)服務(wù)器上的主動(dòng)會(huì)話的數(shù)據(jù)映射到故障替補(bǔ)服務(wù)器上的故障替補(bǔ)會(huì)話的步驟順序的流程圖。在主網(wǎng)關(guān)服務(wù)器40上的初始遠(yuǎn)程主動(dòng)會(huì)話42建立后(在客戶機(jī)10驗(yàn)證后)和在故障替補(bǔ)服務(wù)器50、60和70上的相對(duì)應(yīng)的故障替補(bǔ)會(huì)話52、62和72建立后,前端服務(wù)器30從客戶機(jī)接收指向主動(dòng)會(huì)話的輸入(步驟300)。前端服務(wù)器30上的分配進(jìn)程32將輸入數(shù)據(jù)復(fù)制并分配給主動(dòng)會(huì)話42和故障替補(bǔ)會(huì)話52、62和72(步驟302)。然后主動(dòng)會(huì)話42和故障替補(bǔ)會(huì)話52、62和72中的應(yīng)用實(shí)例處理所接收的數(shù)據(jù)(步驟304)。
然后分配進(jìn)程32詢問(wèn)主動(dòng)和故障替補(bǔ)會(huì)話42、52、62和72以判斷會(huì)話狀態(tài)是否同步(步驟306)。由于服務(wù)器之間的處理速度和網(wǎng)絡(luò)中等待時(shí)間延遲可能不一致,該同步檢驗(yàn)是必要的。在一些備選實(shí)現(xiàn)中,主網(wǎng)關(guān)服務(wù)器40和故障替補(bǔ)服務(wù)器40、50和60配置成不先被查詢就將它們的會(huì)話狀態(tài)報(bào)告給分配進(jìn)程32。在另一實(shí)現(xiàn)中,一個(gè)與分配進(jìn)程不同的進(jìn)程的任務(wù)是檢驗(yàn)會(huì)話42、52、62和72的狀態(tài)的同步。如果會(huì)話狀態(tài)被確定為未同步(步驟307),則執(zhí)行延遲,直到來(lái)自分配進(jìn)程的再一個(gè)查詢來(lái)判斷同步狀態(tài)(步驟306)。如果會(huì)話狀態(tài)被同步(步驟307),則將由主網(wǎng)關(guān)服務(wù)器40上主動(dòng)會(huì)話42中的應(yīng)用實(shí)例44執(zhí)行的處理的結(jié)果通報(bào)給客戶機(jī)(步驟308)。由應(yīng)用實(shí)例在故障替補(bǔ)會(huì)話52、62和72中進(jìn)行的試呼由網(wǎng)絡(luò)堆棧上的各過(guò)濾器46、56和66過(guò)濾,并且信息包被丟棄。
類(lèi)似的過(guò)程被執(zhí)行,以在會(huì)話中執(zhí)行的應(yīng)用實(shí)例請(qǐng)求應(yīng)用資源在的期間保持主動(dòng)和故障替補(bǔ)會(huì)話狀態(tài)同步。圖4是本發(fā)明解說(shuō)性實(shí)施例中從應(yīng)用資源請(qǐng)求數(shù)據(jù)并將響應(yīng)映射到故障替補(bǔ)會(huì)話的步驟順序的流程圖。該順序在主動(dòng)會(huì)話42中的應(yīng)用實(shí)例44(和故障替補(bǔ)會(huì)話52、62和72中相對(duì)應(yīng)的應(yīng)用實(shí)例54、64和74)識(shí)別需要的應(yīng)用資源(步驟320)時(shí)順序開(kāi)始。然后所有會(huì)話中的應(yīng)用實(shí)例44、54、64和74從后端服務(wù)器80請(qǐng)求應(yīng)用資源82(步驟322)。這些產(chǎn)生于故障替補(bǔ)會(huì)話52、62和72中的應(yīng)用實(shí)例54、64和74的請(qǐng)求分別被故障替補(bǔ)服務(wù)器50、60和70的網(wǎng)絡(luò)堆棧上的過(guò)濾器58、68和78過(guò)濾。被過(guò)濾的信息包被丟棄(步驟324)。主動(dòng)會(huì)話42中的請(qǐng)求被提交給后端服務(wù)器80上的應(yīng)用資源82(步驟326)。對(duì)該請(qǐng)求的響應(yīng)被路由到前端服務(wù)器上的分配進(jìn)程32(步驟328)。在一實(shí)施例中,該響應(yīng)首先被發(fā)送到主持主動(dòng)會(huì)話42的主網(wǎng)關(guān)服務(wù)器40,而后提交給分配進(jìn)程32。在另一實(shí)施例中,不同于用來(lái)從客戶機(jī)接收輸入數(shù)據(jù)的分配進(jìn)程的獨(dú)立分配進(jìn)程可用于分配應(yīng)用資源響應(yīng)。
繼續(xù)看圖4,在從應(yīng)用資源收到響應(yīng)之后,分配進(jìn)程將響應(yīng)數(shù)據(jù)轉(zhuǎn)交給主動(dòng)和故障替補(bǔ)會(huì)話42、52、62和72(步驟330)。然后主動(dòng)會(huì)話42和故障替補(bǔ)會(huì)話52、62和72中的應(yīng)用實(shí)例44、54、64和74處理該源數(shù)據(jù)(步驟332)。如同從客戶機(jī)接收的數(shù)據(jù)一樣,進(jìn)行查詢來(lái)判斷會(huì)話狀態(tài)是否被同步(步驟333)。如果狀態(tài)不同步,該查詢會(huì)重復(fù)直到接收到肯定的響應(yīng)。一旦會(huì)話狀態(tài)同步,主動(dòng)會(huì)話42中的應(yīng)用實(shí)例將它的數(shù)據(jù)處理結(jié)果傳送給客戶機(jī)10。故障替補(bǔ)服務(wù)器上的應(yīng)用實(shí)例54、64和74也試圖將它們的結(jié)果傳送給客戶機(jī)10,但信息包被分別在故障替補(bǔ)服務(wù)器50、60和70上的網(wǎng)絡(luò)過(guò)濾器58、68和78截取并丟棄(步驟334)。
在解說(shuō)性實(shí)施例的另一方面,本發(fā)明也可在“瘦客戶機(jī)”或公用信息機(jī)體系結(jié)構(gòu)中實(shí)現(xiàn),其中,所有的處理在服務(wù)器上發(fā)生,且只有屏幕數(shù)據(jù)被從遠(yuǎn)程會(huì)話42下推到客戶機(jī)10。圖5描述了一備選實(shí)施例,其中,應(yīng)用屏幕緩沖器為從瘦客戶機(jī)或公用信息機(jī)請(qǐng)求的遠(yuǎn)程會(huì)話而保持同步。該客戶機(jī)400可為具有有限處理能力的瘦客戶機(jī)如PDA或便攜式電話或可為帶有顯示器和輸入設(shè)備的公用信息機(jī)終端??蛻魴C(jī)通過(guò)網(wǎng)絡(luò)402建立到主網(wǎng)關(guān)服務(wù)器410的遠(yuǎn)程會(huì)話。該連接可使用微軟公司的RDP(遠(yuǎn)程顯示協(xié)議)或Citrix Systems公司(Citrix Systems,Inc.of Fort Lauderdale,F(xiàn)lorida)的ICA。當(dāng)客戶機(jī)400通過(guò)主網(wǎng)關(guān)服務(wù)器提供的安全網(wǎng)絡(luò)URL登錄時(shí),可建立會(huì)話。該主網(wǎng)關(guān)服務(wù)器接受連接請(qǐng)求并建立遠(yuǎn)程主動(dòng)會(huì)話412。本解說(shuō)性實(shí)施例也在故障替補(bǔ)服務(wù)器420和430上建立故障替補(bǔ)會(huì)話422和432。該主動(dòng)會(huì)話412和故障替補(bǔ)會(huì)話422和432被類(lèi)似地提供并分別包括執(zhí)行應(yīng)用實(shí)例414、424和434。各應(yīng)用實(shí)例分別具有相關(guān)的屏幕緩沖器416、426和436。主網(wǎng)關(guān)服務(wù)器上的分配進(jìn)程418,以前述模式將從客戶機(jī)400接收的輸入數(shù)據(jù)復(fù)制并分配給各會(huì)話412、422和432。在一備選實(shí)施例中,分配進(jìn)程418可位于前端服務(wù)器上。應(yīng)用實(shí)例414、424和434可用來(lái)自主網(wǎng)關(guān)服務(wù)器的正被傳送的請(qǐng)求和來(lái)自故障替補(bǔ)服務(wù)器420和430的正被截取并丟棄的請(qǐng)求從后端服務(wù)器440請(qǐng)求應(yīng)用資源442。如前所述,在由執(zhí)行應(yīng)用實(shí)例414、424和434執(zhí)行處理之后,對(duì)客戶機(jī)400的響應(yīng)被延遲直到所有的屏幕緩沖器416、426和436處于相同狀態(tài)。然后,主網(wǎng)關(guān)服務(wù)器上的屏幕緩沖器416的內(nèi)容(或在使用優(yōu)化技術(shù)時(shí)經(jīng)改變的內(nèi)容)通過(guò)連接被下推到客戶機(jī)400。應(yīng)用實(shí)例424和434將它們的屏幕緩沖器426和436的內(nèi)容發(fā)送到客戶機(jī)400的試呼被截取并且其信息包被丟棄。
本發(fā)明執(zhí)行的會(huì)話狀態(tài)的同步使得能夠不中斷遠(yuǎn)程會(huì)話地從故障網(wǎng)關(guān)服務(wù)器切換到代替網(wǎng)關(guān)服務(wù)器,并且保證了最少的數(shù)據(jù)丟失。代理12可緩沖從客戶機(jī)10發(fā)送的數(shù)據(jù)的副本(如果可靠的協(xié)議如TCP被使用)。本發(fā)明中,直到所有的會(huì)話都同步時(shí)才返回對(duì)從客戶機(jī)接收數(shù)據(jù)的確認(rèn)。因此代理10緩沖任何被發(fā)送數(shù)據(jù)的副本直到從主網(wǎng)關(guān)服務(wù)器接收到確認(rèn),然后丟棄數(shù)據(jù)。在主網(wǎng)關(guān)服務(wù)器40的任何后續(xù)故障事件中,由客戶機(jī)發(fā)送到主網(wǎng)關(guān)服務(wù)器上的數(shù)據(jù)出現(xiàn)在故障替補(bǔ)會(huì)話之一中。類(lèi)似地,從應(yīng)用資源接收的數(shù)據(jù)也被分配到主動(dòng)和故障替補(bǔ)會(huì)話以使它們保持同步。如果沒(méi)有從主網(wǎng)關(guān)服務(wù)器接收到確認(rèn),被緩沖的數(shù)據(jù)會(huì)再發(fā)送給新指定的主網(wǎng)關(guān)服務(wù)器。
此外,當(dāng)遠(yuǎn)程連接最初被建立時(shí),分配給客戶機(jī)10的IP地址不但被分配給在一實(shí)施例中正為客戶機(jī)執(zhí)行NAT的主網(wǎng)關(guān)服務(wù)器40,而且分配給故障替補(bǔ)服務(wù)器50、60和70。當(dāng)主網(wǎng)關(guān)服務(wù)器40的故障被檢測(cè)到時(shí),故障替補(bǔ)服務(wù)器50、60和70之一被選擇為主網(wǎng)關(guān)服務(wù)器并且改變它的屬性使其能夠勝任該角色。在網(wǎng)絡(luò)堆棧上的防止故障替補(bǔ)服務(wù)器50、60和70與客戶機(jī)10和應(yīng)用資源82通信的過(guò)濾器58、68或78,成為對(duì)于新指定的主網(wǎng)關(guān)服務(wù)器不起作用。該新選定的主網(wǎng)關(guān)服務(wù)器用前面發(fā)送的IP地址和新選主網(wǎng)關(guān)上的NAT表58、68或79截取從客戶機(jī)接收或指向客戶機(jī)的通信。將經(jīng)映射的會(huì)話狀態(tài)與在主網(wǎng)關(guān)服務(wù)器故障之前由故障替補(bǔ)服務(wù)器知曉的客戶機(jī)IP相結(jié)合,就能夠?qū)崿F(xiàn)具有最小限度的數(shù)據(jù)丟失的且不需要重新建立新遠(yuǎn)程會(huì)話的平滑切換。
主網(wǎng)關(guān)服務(wù)器40的故障檢測(cè)可通過(guò)不同的方式發(fā)生。用于檢測(cè)服務(wù)器故障的方法會(huì)依賴(lài)于服務(wù)器的部署方式。例如,主網(wǎng)關(guān)服務(wù)器可被安排為群集計(jì)算機(jī)系統(tǒng)中的節(jié)點(diǎn)。群集計(jì)算機(jī)系統(tǒng)中的節(jié)點(diǎn)經(jīng)常通過(guò)專(zhuān)用通信信道彼此發(fā)送“搏動(dòng)”信號(hào)(也稱(chēng)為“響應(yīng)”或“激活”信號(hào))。該搏動(dòng)信號(hào)/信標(biāo)指出節(jié)點(diǎn)是否是活動(dòng)的并響應(yīng)群集計(jì)算機(jī)系統(tǒng)中的其它節(jié)點(diǎn)。該搏動(dòng)信號(hào)由各節(jié)點(diǎn)周期性地發(fā)送,所以如果一個(gè)或多個(gè)節(jié)點(diǎn)在規(guī)定時(shí)間內(nèi)未從另一個(gè)節(jié)點(diǎn)接收到搏動(dòng)信號(hào),就可懷疑有節(jié)點(diǎn)故障。
主網(wǎng)關(guān)服務(wù)器故障的最終確定可由控制網(wǎng)關(guān)服務(wù)器的故障替補(bǔ)策略(故障替補(bǔ)策略)支配。該故障替補(bǔ)策略指出在什么情況下,主網(wǎng)關(guān)服務(wù)器可被認(rèn)為有故障。例如,在上面討論的群集計(jì)算機(jī)系統(tǒng)中,在具有多個(gè)故障替補(bǔ)服務(wù)器的實(shí)施例中,其策略可能需要至少兩個(gè)故障替補(bǔ)服務(wù)器在規(guī)定時(shí)間內(nèi)還沒(méi)有從主網(wǎng)關(guān)服務(wù)器接收到搏動(dòng)信標(biāo)?;蛘?,故障替補(bǔ)策略也可以是需要所有的故障替補(bǔ)節(jié)點(diǎn)沒(méi)有從主網(wǎng)關(guān)服務(wù)器上接收到搏動(dòng)信標(biāo)。本領(lǐng)域技術(shù)人員會(huì)認(rèn)識(shí)到一些其它方法可單獨(dú)使用或結(jié)合使用來(lái)檢測(cè)網(wǎng)關(guān)服務(wù)器故障,如給主網(wǎng)關(guān)服務(wù)器發(fā)脈沖(ping)來(lái)檢查其健康狀況。為了檢驗(yàn)主網(wǎng)關(guān)服務(wù)器故障,可在沒(méi)有接收到搏動(dòng)標(biāo)記后發(fā)脈沖。
一旦檢測(cè)到主網(wǎng)關(guān)服務(wù)器的故障,就可用不同的方法從故障替補(bǔ)服務(wù)器中選擇新的主網(wǎng)關(guān)服務(wù)器。該服務(wù)器可基于名稱(chēng)或通過(guò)對(duì)服務(wù)器標(biāo)識(shí)符執(zhí)行數(shù)學(xué)運(yùn)算來(lái)選擇?;蛘撸撨x擇也可基于服務(wù)器處理屬性(速度、存儲(chǔ)量等)或下一個(gè)主網(wǎng)關(guān)服務(wù)器可已由系統(tǒng)管理員預(yù)先指定。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),還會(huì)有其它的選擇可能。
圖6描述了本發(fā)明處理主網(wǎng)關(guān)故障的步驟順序。該順序開(kāi)始于指定主網(wǎng)關(guān)服務(wù)器和故障替補(bǔ)網(wǎng)關(guān)服務(wù)器順序(步驟500)。故障替補(bǔ)服務(wù)器的指定啟用了這些服務(wù)器的網(wǎng)絡(luò)堆棧上的過(guò)濾器并使NAT表不起作用。當(dāng)遠(yuǎn)程會(huì)話被建立時(shí),分配給客戶機(jī)的IP地址被轉(zhuǎn)交給故障替補(bǔ)服務(wù)器。然后主網(wǎng)關(guān)服務(wù)器被查詢以確定其健康狀態(tài)(步驟502)。如果主網(wǎng)關(guān)服務(wù)器被確定正常(步驟503),該查詢以設(shè)定的時(shí)間間隔重復(fù)執(zhí)行。如果主網(wǎng)關(guān)服務(wù)器有故障(步驟503),則從故障替補(bǔ)服務(wù)器中選擇新的主網(wǎng)關(guān)服務(wù)器并且將其屬性改變以使它的過(guò)濾器失效,它處理來(lái)往于客戶IP的通信并且服務(wù)器上的NAT表被啟用(步驟504)。
本發(fā)明可作為在一個(gè)或多個(gè)產(chǎn)品之上或之中體現(xiàn)的一個(gè)或多個(gè)計(jì)算機(jī)可讀程序提供。該產(chǎn)品可為軟盤(pán)、硬盤(pán)、壓縮盤(pán)、數(shù)字通用盤(pán)、閃存卡、PROM、RAM、ROM或磁帶。通常,計(jì)算機(jī)可讀程序可以任何編程語(yǔ)言被執(zhí)行。一些可用的語(yǔ)言例如包括C、C++、C#或JAVA。軟件程序可作為目標(biāo)代碼存儲(chǔ)在一個(gè)或多個(gè)產(chǎn)品之上或之中。
因?yàn)榭稍诓槐畴x本發(fā)明范圍的前提下進(jìn)行某些改變,所以可預(yù)期所有包含在上面描述或顯示在附圖中的內(nèi)容的闡述是解說(shuō)性的并且不局限于其字面意思。本領(lǐng)域技術(shù)人員會(huì)知道本文中描述的系統(tǒng)配置是落入本發(fā)明保護(hù)范圍內(nèi)的多例可能的系統(tǒng)配置。同樣,在說(shuō)明性流程圖中采用的步驟順序均是舉例,并不是本發(fā)明范圍內(nèi)的唯一的步驟順序。類(lèi)似地,除了本文所提到的,在不背離本發(fā)明范圍的前提下,也可用其它數(shù)據(jù)結(jié)構(gòu)來(lái)保持?jǐn)?shù)據(jù)。
權(quán)利要求
1.在遠(yuǎn)程訪問(wèn)解決方案中提供故障替補(bǔ)冗余的系統(tǒng),包括至少一個(gè)后端服務(wù)器上的應(yīng)用資源;多個(gè)網(wǎng)關(guān)服務(wù)器,所述多個(gè)網(wǎng)關(guān)服務(wù)器之一被指定為主網(wǎng)關(guān)服務(wù)器,而所述多個(gè)網(wǎng)關(guān)服務(wù)器中的其它服務(wù)器被指定為故障替補(bǔ)網(wǎng)關(guān)服務(wù)器,所述多個(gè)網(wǎng)關(guān)服務(wù)器中的每一個(gè)為同一應(yīng)用主持具有至少一個(gè)執(zhí)行應(yīng)用實(shí)例的會(huì)話,所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的各會(huì)話被保持在與所述主網(wǎng)關(guān)服務(wù)器上的會(huì)話相同的狀態(tài),所述主網(wǎng)關(guān)服務(wù)器是所述多個(gè)網(wǎng)關(guān)服務(wù)器中唯一被允許與至少一個(gè)應(yīng)用資源通信的服務(wù)器;以及客戶端設(shè)備,通過(guò)VPN與所述主網(wǎng)關(guān)服務(wù)器進(jìn)行通信,所述客戶端設(shè)備通過(guò)VPN接收至少一個(gè)在會(huì)話中執(zhí)行的所述主網(wǎng)關(guān)服務(wù)器上的的應(yīng)用實(shí)例的輸出并將輸入通過(guò)VPN發(fā)送給所述主網(wǎng)關(guān)服務(wù)器;所述接收的輸出由所述客戶端設(shè)備在閱讀器上顯示。
2.權(quán)利要求1所述的系統(tǒng),還包括各所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的過(guò)濾器,其中由所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的各會(huì)話中的執(zhí)行應(yīng)用實(shí)例發(fā)送的、定址到至少一個(gè)應(yīng)用資源的信息包被截取并丟棄。
3.權(quán)利要求1所述的系統(tǒng),其中由所述主網(wǎng)關(guān)服務(wù)器上的會(huì)話通過(guò)VPN從所述客戶端設(shè)備接收的輸入,被中繼到所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的各所述會(huì)話中的各所述執(zhí)行應(yīng)用實(shí)例。
4.權(quán)利要求1所述的系統(tǒng),其中所述主網(wǎng)關(guān)服務(wù)器上的所述會(huì)話中的所述執(zhí)行應(yīng)用實(shí)例接收對(duì)向至少一個(gè)應(yīng)用資源的請(qǐng)求的應(yīng)答,所述應(yīng)答被復(fù)制并轉(zhuǎn)交給各故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的各會(huì)話。
5.權(quán)利要求1所述的系統(tǒng),其中所述主網(wǎng)關(guān)服務(wù)器延遲對(duì)所述客戶端設(shè)備的數(shù)據(jù)傳送,直到各所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的所述會(huì)話與所述主網(wǎng)關(guān)服務(wù)器同步。
6.權(quán)利要求1所述的系統(tǒng),其中所述客戶端設(shè)備和所述主網(wǎng)關(guān)服務(wù)器為分配給所述客戶端設(shè)備的IP地址執(zhí)行網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)。
7.權(quán)利要求6所述的系統(tǒng),其中所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器中的一個(gè)選定服務(wù)器被選擇來(lái)取代出故障的主網(wǎng)關(guān)服務(wù)器。
8.權(quán)利要求7所述的系統(tǒng),其中所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器中被選擇來(lái)取代所述出故障的主網(wǎng)關(guān)服務(wù)器的所述選定服務(wù)器,替所述出故障的主網(wǎng)關(guān)服務(wù)器為所述客戶端設(shè)備IP執(zhí)行NAT。
9.權(quán)利要求7所述的系統(tǒng),還包括所述多個(gè)網(wǎng)關(guān)服務(wù)器上的各執(zhí)行應(yīng)用實(shí)例的關(guān)聯(lián)屏幕緩沖器,與在故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上執(zhí)行的應(yīng)用實(shí)例關(guān)聯(lián)的所述屏幕緩沖器被保持在與所述主網(wǎng)關(guān)服務(wù)器上的所述執(zhí)行應(yīng)用實(shí)例的屏幕緩沖器相同的狀態(tài)上。
10.權(quán)利要求9所述的系統(tǒng),其中所述主網(wǎng)關(guān)服務(wù)器上的屏幕緩沖器中的內(nèi)容的副本被轉(zhuǎn)交給所述客戶端設(shè)備進(jìn)行顯示。
11.用于在遠(yuǎn)程訪問(wèn)解決方案中提供故障替補(bǔ)冗余的方法,包括在后端服務(wù)器上提供至少一個(gè)應(yīng)用資源;將多個(gè)網(wǎng)關(guān)服務(wù)器之一指定為主網(wǎng)關(guān)服務(wù)器,所述個(gè)網(wǎng)關(guān)服務(wù)器中的其它服務(wù)器被指定為故障替補(bǔ)網(wǎng)關(guān)服務(wù)器,所述多個(gè)網(wǎng)關(guān)服務(wù)器中的每一個(gè)為同一應(yīng)用主持具有至少一個(gè)執(zhí)行應(yīng)用實(shí)例的會(huì)話,所述主網(wǎng)關(guān)服務(wù)器是所述多個(gè)網(wǎng)關(guān)服務(wù)器中唯一被允許與至少一個(gè)應(yīng)用資源通信的服務(wù)器;將所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的所述會(huì)話保持在與所述主網(wǎng)關(guān)服務(wù)器上的所述會(huì)話相同的狀態(tài);以及在通過(guò)VPN與所述主網(wǎng)關(guān)服務(wù)器通信的客戶端設(shè)備上接收在所述主網(wǎng)關(guān)服務(wù)器上的所述會(huì)話中執(zhí)行的至少一個(gè)應(yīng)用實(shí)例的輸出,所接收的輸出由所述客戶端設(shè)備在閱讀器上顯示。
12.權(quán)利要求11所述的方法,還包括通過(guò)VPN將輸入從所述客戶端設(shè)備發(fā)送到所述主網(wǎng)關(guān)服務(wù)器上的所述會(huì)話中的所述執(zhí)行應(yīng)用實(shí)例;以及復(fù)制所接收的輸入并將所復(fù)制的輸入轉(zhuǎn)交給在所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的所述會(huì)話中執(zhí)行的各所述應(yīng)用實(shí)例,以將所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器中的所述會(huì)話保持在與所述主網(wǎng)關(guān)服務(wù)器上的所述會(huì)話相同的狀態(tài)。
13.權(quán)利要求11所述的方法,還包括將請(qǐng)求從所述主網(wǎng)關(guān)服務(wù)器上的所述會(huì)話中的所述執(zhí)行應(yīng)用實(shí)例發(fā)送到所述后端服務(wù)器上的應(yīng)用資源;在所述網(wǎng)關(guān)服務(wù)器處接收對(duì)來(lái)自所述應(yīng)用資源的請(qǐng)求的應(yīng)答;以及在所述主網(wǎng)關(guān)服務(wù)器處復(fù)制所述應(yīng)答并將所復(fù)制的應(yīng)答轉(zhuǎn)交給所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的所述執(zhí)行實(shí)例。
14.權(quán)利要求11所述的方法,還包括將請(qǐng)求從所述故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上的所述執(zhí)行應(yīng)用實(shí)例發(fā)送到所述后端服務(wù)器上的應(yīng)用資源;在各自的故障替補(bǔ)網(wǎng)關(guān)服務(wù)器上截取所述請(qǐng)求;以及丟棄所述請(qǐng)求而不將所述請(qǐng)求轉(zhuǎn)交給所述應(yīng)用資源。
15.權(quán)利要求11所述的方法,其中所述主網(wǎng)關(guān)服務(wù)器用遠(yuǎn)程幀緩沖(RFB)協(xié)議來(lái)將與所述主網(wǎng)關(guān)服務(wù)器上的所述至少一個(gè)應(yīng)用實(shí)例關(guān)聯(lián)的屏幕緩沖器中的改變傳送到所述客戶端設(shè)備。
16.權(quán)利要求11所述的方法,其中所述主網(wǎng)關(guān)服務(wù)器用遠(yuǎn)程顯示協(xié)議(RDP)將與所述主網(wǎng)關(guān)服務(wù)器上的至少一個(gè)應(yīng)用實(shí)例關(guān)聯(lián)的所述屏幕緩沖器中的改變傳送到所述客戶端設(shè)備。
17.權(quán)利要求11所述的方法,其中所述主網(wǎng)關(guān)服務(wù)器用ICA連接將與所述主網(wǎng)關(guān)服務(wù)器上的至少一個(gè)應(yīng)用實(shí)例關(guān)聯(lián)的所述屏幕緩沖器中的改變傳送到所述客戶端設(shè)備。
18.權(quán)利要求11所述的方法,還包括檢測(cè)所述主網(wǎng)關(guān)服務(wù)器中的故障;以及選擇一個(gè)指定的故障替補(bǔ)服務(wù)器作為新的主網(wǎng)關(guān)服務(wù)器,在所述選擇之后,所述新的主網(wǎng)關(guān)服務(wù)器被允許與至少一個(gè)應(yīng)用資源通信。
19.權(quán)利要求18所述的方法,還包括通過(guò)使用搏動(dòng)信標(biāo)協(xié)議來(lái)檢測(cè)所述主網(wǎng)關(guān)服務(wù)器中的故障。
20.權(quán)利要求18所述的方法,還包括通過(guò)以預(yù)定的間隔對(duì)所述主網(wǎng)關(guān)服務(wù)器發(fā)脈沖來(lái)檢測(cè)所述主網(wǎng)關(guān)服務(wù)器中的故障。
21.權(quán)利要求11所述的方法,還包括在所述主網(wǎng)關(guān)服務(wù)器處為分配給所述客戶端設(shè)備的IP地址執(zhí)行網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)。
22.權(quán)利要求21所述的方法,還包括在新的主網(wǎng)關(guān)服務(wù)器處為分配給所述客戶端設(shè)備的IP地址執(zhí)行網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)。
全文摘要
討論了在遠(yuǎn)程訪問(wèn)解決方案中提供故障替補(bǔ)冗余的系統(tǒng),其中包括后端服務(wù)器上至少一個(gè)應(yīng)用資源。該系統(tǒng)還包括多個(gè)網(wǎng)關(guān)服務(wù)器。多個(gè)網(wǎng)關(guān)服務(wù)器之一被指定為主網(wǎng)關(guān)服務(wù)器,而其它服務(wù)器被指定為故障替補(bǔ)網(wǎng)關(guān)服務(wù)器。多個(gè)網(wǎng)關(guān)服務(wù)器中每一個(gè)為同一應(yīng)用主持具有至少一個(gè)執(zhí)行應(yīng)用實(shí)例的會(huì)話,故障替補(bǔ)服務(wù)器上的各會(huì)話與主網(wǎng)關(guān)服務(wù)器上的會(huì)話保持在相同狀態(tài)。主網(wǎng)關(guān)服務(wù)器是網(wǎng)關(guān)服務(wù)器中唯一被允許與應(yīng)用資源通信的服務(wù)器。該系統(tǒng)還包括通過(guò)VPN與主網(wǎng)關(guān)服務(wù)器通信的客戶端設(shè)備。該客戶端設(shè)備通過(guò)VPN接收在主網(wǎng)關(guān)服務(wù)器上執(zhí)行的會(huì)話中的應(yīng)用實(shí)例的輸出。該客戶端設(shè)備也通過(guò)VPN將輸入發(fā)送給主網(wǎng)關(guān)服務(wù)器。所接收的輸出由客戶端設(shè)備在閱讀器上顯示。
文檔編號(hào)H04L29/06GK101076992SQ200580034849
公開(kāi)日2007年11月21日 申請(qǐng)日期2005年8月11日 優(yōu)先權(quán)日2004年8月13日
發(fā)明者G·P·勞, E·布呂格曼, R·羅德里格斯 申請(qǐng)人:塞特里克斯系統(tǒng)公司