專利名稱:在窄帶通信鏈路上傳送信息的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種在包括但不限于分組數(shù)據(jù)網(wǎng)絡(luò)和電路交換網(wǎng)絡(luò)的廣域窄帶通信系統(tǒng)上向?yàn)g覽器客戶有效地傳送信息。
萬維網(wǎng)(World Wide Web,后文中稱為Web)是無處不在的通信網(wǎng)絡(luò),它被用來容易地訪問位于世界各地的許多計(jì)算機(jī)上的可用資源,并被連接到稱為因特網(wǎng)(Internet)的至少一個(gè)計(jì)算機(jī)網(wǎng)絡(luò)。Web包括一個(gè)軟件體、一套協(xié)議和一套用于獲得Web上信息的規(guī)范。Web利用超文本和多媒體技術(shù)使得Web對(duì)于希望瀏覽、漫游或致力于Web的任何人是“用戶友好的”。
超文本傳輸協(xié)議(HTTP)是一個(gè)用來在因特網(wǎng)上傳輸超文本文件的協(xié)議。在普通HTTP操作中,代理服務(wù)器接收對(duì)一個(gè)資源的HTTP請(qǐng)求,并與統(tǒng)一資源定位符(URL)中所標(biāo)識(shí)的主機(jī)連接。URL是一種表示W(wǎng)eb上的不同文檔、媒體和網(wǎng)絡(luò)服務(wù)的標(biāo)準(zhǔn)方式。代理服務(wù)器獲取該資源并向請(qǐng)求方返回一個(gè)HTTP響應(yīng)。
在通常的HTTP操作中,瀏覽器請(qǐng)求一個(gè)超文本標(biāo)記語言(HTML)響應(yīng)。HTML是一種建立在Web上使用的超文本文檔的標(biāo)準(zhǔn)方式;HTML是一種編碼語言,它用代碼和方括號(hào)將超文本文檔中所用的文本包圍起來,以指示如何將該文本顯示給用戶。當(dāng)瀏覽器收到HTML響應(yīng),瀏覽器對(duì)其進(jìn)行分析,并發(fā)出對(duì)于從屬資源(比如在線圖象)的單個(gè)請(qǐng)求。在窄帶高等待連接中,這種“乒乓”過程(ping-pong)(例如,瀏覽器單獨(dú)請(qǐng)求和接收每個(gè)從屬資源)導(dǎo)致在完成獲取整個(gè)網(wǎng)頁中產(chǎn)生嚴(yán)重的延遲。對(duì)于一個(gè)含有N個(gè)在線資源的頁面,在一條平均往返等待L秒的鏈路上獲取這些資源,則延遲大約為((N+1)*L)秒。
在窄帶通信鏈路上傳送信息的結(jié)果是,需要一種以有效方式在廣域窄帶通信系統(tǒng)上向?yàn)g覽器客戶傳送信息的系統(tǒng)。
現(xiàn)在參照附圖僅舉例描述本發(fā)明的最佳實(shí)施方式、本發(fā)明的特征具體地在權(quán)利要求書中提出?,F(xiàn)在參照附圖以舉例方式描述本發(fā)明的最佳實(shí)施方式。
圖1是根據(jù)本發(fā)明一個(gè)最佳實(shí)施方式的無線Web代理系統(tǒng)的總體框圖;圖2是本發(fā)明最佳實(shí)施方式的轉(zhuǎn)移連接(bounce)圖;圖3和圖4一起是根據(jù)本發(fā)明最佳實(shí)施方式的移動(dòng)客戶操作的流程圖;圖5和圖6一起是根據(jù)本發(fā)明最佳實(shí)施方式的固定服務(wù)器操作的流程圖;圖7是根據(jù)本發(fā)明最佳實(shí)施方式的用于高速緩沖存儲(chǔ)器檢查的操作方法的流程圖;以及圖8是本發(fā)明另一實(shí)施方式的轉(zhuǎn)移連接(bounce)圖。
應(yīng)認(rèn)識(shí)到,為了簡便和清楚地說明,圖中所示的部件不必按比例繪制。適當(dāng)情況下,在各圖中重復(fù)相同的參考標(biāo)號(hào)以指示相應(yīng)的部件。
現(xiàn)在描述的無線Web代理系統(tǒng)是一個(gè)媒件(middleware)軟件,它對(duì)于HTTP請(qǐng)求和響應(yīng)的通信,起到帶有專有協(xié)議的HTTP代理服務(wù)器的作用。該無線Web代理系統(tǒng)提供一種在廣域窄帶通信網(wǎng)絡(luò)上向?yàn)g覽器客戶有效傳送信息(例如Web內(nèi)容)的裝置,該信息是經(jīng)過HTTP協(xié)議在傳輸控制協(xié)議/國際互聯(lián)網(wǎng)協(xié)議(TCP/IP)網(wǎng)絡(luò)上受到訪問的,比如文本、圖象、聲音及其他資源,廣域窄帶通信網(wǎng)絡(luò)包括但不限于分組數(shù)據(jù)網(wǎng)絡(luò)(例如DataTAC4000/5000/6000,Mobitex,CDPD等)和電路交換網(wǎng)絡(luò)(例如模擬蜂窩,GSM等)。
如圖1所示,無線Web代理系統(tǒng)包括安裝在數(shù)字處理器/移動(dòng)客戶10上的代理軟件14和安裝在數(shù)字處理器/固定服務(wù)器30上的固定代理軟件32。移動(dòng)代理軟件14實(shí)現(xiàn)符合RFC 1945“超文本傳送協(xié)議-HTTP/1.0”中所含的規(guī)范的對(duì)于HTTP1.0故障代理服務(wù)器的接口。數(shù)字處理器10包括至少下述部件一個(gè)瀏覽器12,移動(dòng)代理軟件14,一個(gè)winsock(套接程序)22和一個(gè)射頻發(fā)送端口24。移動(dòng)代理軟件14還包括至少一個(gè)資源收發(fā)器16和一個(gè)具有至少一個(gè)比較器20的確認(rèn)清單發(fā)生器18。與數(shù)字處理器10的移動(dòng)代理軟件14相連的是一個(gè)高速緩沖存儲(chǔ)器26和一個(gè)射頻收發(fā)器28。無線Web代理系統(tǒng)還包括一個(gè)存儲(chǔ)器,在存儲(chǔ)器中具有存儲(chǔ)在其中的指令和數(shù)據(jù),當(dāng)執(zhí)行這些指令時(shí),使得數(shù)字處理器10和高速緩沖存儲(chǔ)器26構(gòu)成資源收發(fā)器16,它帶有與瀏覽器12連接的輸入端17和一個(gè)輸出端15。確認(rèn)清單發(fā)生器18具有與資源收發(fā)器16的輸出端15連接的第一輸入端19,與高速緩沖存儲(chǔ)器連接的第二輸入端21和與射頻收發(fā)器28連接的輸出端23。這樣一種結(jié)構(gòu)允許比較器20對(duì)收到的資源與被高速緩存的資源進(jìn)行比較。
固定代理軟件32安裝在運(yùn)行Windows NT 3.51或更高版本的固定服務(wù)器PC上并執(zhí)行。固定代理軟件32實(shí)現(xiàn)HTTP1.0客戶協(xié)議,并負(fù)責(zé)從因特網(wǎng)或內(nèi)部網(wǎng)上的HTTP服務(wù)器(Web服務(wù)器)上獲取資源。數(shù)字處理器30包括至少下述部件固定代理軟件32,一個(gè)winsock40和射頻發(fā)送端口42。固定代理軟件32還包括一個(gè)資源收發(fā)器34和一個(gè)簡要響應(yīng)構(gòu)造器38。與數(shù)字處理器30的固定代理軟件32連接的是一個(gè)高速緩沖存儲(chǔ)器44和一個(gè)射收發(fā)器46。無線Web代理系統(tǒng)還包括一個(gè)存儲(chǔ)器,在存儲(chǔ)器中具有存儲(chǔ)在其中的指令和數(shù)據(jù),當(dāng)執(zhí)行這些指令時(shí),使得數(shù)字處理器30構(gòu)成資源收發(fā)器34和簡要響應(yīng)構(gòu)造器38。簡要響應(yīng)構(gòu)造器38與資源收發(fā)器34連接。簡要響應(yīng)構(gòu)造器38的一個(gè)輸出端39提供一種簡要響應(yīng),其中包括與多個(gè)所請(qǐng)求的資源相應(yīng)的多個(gè)狀態(tài)代碼并且當(dāng)資源可用時(shí)包括所請(qǐng)求的資源。簡要響應(yīng)包括來自多個(gè)資源的內(nèi)容,當(dāng)與在移動(dòng)客戶的數(shù)字處理器中本地高速緩存的資源一起使用時(shí),構(gòu)成整個(gè)信息頁(例如一個(gè)Web頁)。另外,射頻收發(fā)器46與簡要響應(yīng)構(gòu)造器38的輸出端39連接,用于在通信鏈路上向?yàn)g覽器12發(fā)送簡要響應(yīng)。
移動(dòng)用戶通過啟動(dòng)移動(dòng)代理軟件14開始瀏覽。這將自動(dòng)地啟動(dòng)用戶喜愛的Web瀏覽軟件。移動(dòng)用戶利用后繼鏈路輸入統(tǒng)一資源定位符(URL)能夠?yàn)g覽Web,就象他/她通常在有線線路環(huán)境(例如局域網(wǎng))中習(xí)慣所做的那樣。
圖2是本發(fā)明的最佳實(shí)施方式的轉(zhuǎn)移連接(bounce)圖。在圖2中,瀏覽器12和移動(dòng)代理軟件14是構(gòu)成移動(dòng)客戶的主要部件。圖2中還示出固定代理軟件32和原始主機(jī)(例如Web站)50。請(qǐng)求和響應(yīng)是在窄帶通信鏈路(例如移動(dòng)代理軟件14與固定代理軟件32之間的傳輸)上在移動(dòng)客戶與固定服務(wù)器之間交換的。如所示,無線Web代理協(xié)議只需要在窄帶通信鏈路上傳送兩個(gè)往返數(shù)據(jù)以便傳送所有必要數(shù)據(jù),這些必要數(shù)據(jù)當(dāng)與移動(dòng)客戶處本地高速緩存的資源一起使用時(shí)構(gòu)成整個(gè)信息頁(例如Web頁)。通過將窄帶通信鏈路上的數(shù)據(jù)傳送降低到總共兩個(gè)往返,延遲降低到2*L秒,其中在窄帶通信鏈路上的平均往返等待為L秒。
圖3和圖4一起是根據(jù)本發(fā)明最佳實(shí)施方式的移動(dòng)客戶10的操作流程圖。移動(dòng)用戶的瀏覽器12被配置成將移動(dòng)軟件作為Web代理服務(wù)器。在圖3和圖4中,當(dāng)移動(dòng)用戶打開一個(gè)URL,瀏覽器12向移動(dòng)客戶10提交一個(gè)HTTP請(qǐng)求。移動(dòng)代理軟件14在步驟102和104接收該HTTP請(qǐng)求,并且檢查其本地高速緩沖存儲(chǔ)器(以URL為索引的信息的數(shù)據(jù)庫)。以下結(jié)合圖7描述移動(dòng)代理軟件14檢查其本地高速緩沖存儲(chǔ)器26的方式。在步驟106,移動(dòng)客戶10確定它是否能立即響應(yīng)瀏覽器12或者它必須在窄帶通信鏈路上向固定服務(wù)器請(qǐng)求該信息。如果移動(dòng)客戶10已經(jīng)具有被高速緩存的某些資源(例如在過期前已經(jīng)接收的頁),則移動(dòng)代理軟件14向固定代理軟件32通知不要發(fā)送在移動(dòng)客戶10中被高速緩存的資源,并且移動(dòng)代理軟件14在步驟108向?yàn)g覽器12發(fā)送HTTP響應(yīng)。然而,如果移動(dòng)客戶10決定它必須向固定服務(wù)器30傳送該請(qǐng)求,因?yàn)橘Y源未被高速緩存或者資源已經(jīng)過期,則移動(dòng)代理軟件14在步驟110和112以被標(biāo)記化和壓縮的HTTP請(qǐng)求的格式向固定服務(wù)器發(fā)送該請(qǐng)求。下面描述對(duì)HTTP請(qǐng)求標(biāo)記化的方式。因此,在進(jìn)行到步驟136之前,移動(dòng)客戶的操作從步驟112暫停。在此期間,如在圖5和圖6中所示,在固定服務(wù)器中執(zhí)行某些步驟。
在圖5和圖6中,服務(wù)器30在步驟114收到HTTP請(qǐng)求后,在步驟116將已標(biāo)記化并壓縮的HTTP請(qǐng)求展開。在展開HTTP請(qǐng)求之后,固定代理軟件32在步驟118檢查其本地高速緩沖存儲(chǔ)器44,以確定是否在本地存儲(chǔ)了任何版本的所請(qǐng)求的主資源。下面結(jié)合圖7再次描述固定代理軟件32檢查其本地高速緩沖存儲(chǔ)器44的方式。如果固定服務(wù)器30在步驟120確定主資源未被高速緩存于本地,或者如果有一個(gè)版本的主資源被高速緩存但是該版本的主資源已經(jīng)過期,則固定代理軟件32在步驟122與主URL(例如Web,Gopher,文件傳送協(xié)議等)中所標(biāo)識(shí)的原始主機(jī)50(例如Web網(wǎng)站)或另一代理服務(wù)器連接,以獲取由移動(dòng)客戶10所請(qǐng)求的主資源。在固定代理軟件32或者從步驟118或者從步驟125收到一個(gè)有效版本的主資源后,固定代理軟件32在步驟126確定具有主資源的HTTP響應(yīng)是否是超文本標(biāo)記語言(HTML)的格式。
如果HTTP響應(yīng)不是HTML格式的,固定代理軟件32在步驟128立即以加注標(biāo)記并壓縮的格式向移動(dòng)客戶10發(fā)送HTTP響應(yīng)。對(duì)HTTP響應(yīng)標(biāo)記化的方式也在下面描述。然而,如果HTTP響應(yīng)是HTML格式的,則固定代理軟件32在步驟130檢查主URL標(biāo)識(shí)的資源,以確定移動(dòng)客戶10是否可能需要任何其他資源(“從屬資源”,由HTML頁中的標(biāo)志中的絕對(duì)或相對(duì)URL所標(biāo)識(shí))以便瀏覽器12向移動(dòng)用戶完整地顯示主資源(參見圖5)。例如,一個(gè)HTML頁可以含有圖象、Java applet,聲音或?yàn)g覽器12需要的其他從屬資源以便適當(dāng)?shù)仫@示該頁。如果標(biāo)識(shí)了從屬資源,則固定代理軟件32檢查其本地高速緩沖存儲(chǔ)器44,并且如果必要,重新與主URL中所標(biāo)識(shí)的原始主機(jī)50(例如,對(duì)于由相對(duì)URL所標(biāo)識(shí)的資源)或其他主機(jī)(例如,對(duì)于絕對(duì)URL所標(biāo)識(shí)的資源)連接,并且發(fā)出對(duì)那些從屬資源的請(qǐng)求(即,固定代理軟件預(yù)先從主資源獲取所標(biāo)識(shí)的從屬資源),并且從原始主機(jī)50或者從固定代理軟件32向其請(qǐng)求資源的任何主機(jī)接收一個(gè)更新的資源。如果移動(dòng)客戶10中被高速緩存的主資源版本是最新的,則固定代理軟件32向移動(dòng)客戶10返回一個(gè)具有當(dāng)前版本的資源的指示。否則,固定代理軟件32在步驟134將主資源(以壓縮HTTP響應(yīng)的格式)與標(biāo)識(shí)主資源所依賴的從屬資源的信息一起發(fā)送到移動(dòng)客戶10。
當(dāng)移動(dòng)客戶10在圖3的步驟136處收到該HTTP請(qǐng)求時(shí),移動(dòng)代理軟件14在步驟138將該HTTP響應(yīng)展開,并且利用主資源更新其本地高速緩沖存儲(chǔ)器26。如果移動(dòng)代理軟件14在步驟140確定移動(dòng)代理軟件14在步驟136收到的HTTP響應(yīng)不是HTML格式的,則移動(dòng)代理軟件14在步驟108立即向?yàn)g覽器12發(fā)送HTTP響應(yīng)。然而,如果在步驟140移動(dòng)代理軟件14確定它在步驟136所收到的HTTP響應(yīng)是HTML格式的,則移動(dòng)代理軟件14在步驟142標(biāo)識(shí)從屬資源。利用從固定代理軟件32收到的有關(guān)從屬資源的信息,移動(dòng)代理軟件14檢查其本地高速緩沖存儲(chǔ)器26,以便確定它是否具有它們的全部或部分。根據(jù)這種高速緩沖存儲(chǔ)器檢查(如以下結(jié)合圖7所述),移動(dòng)代理軟件14在步驟144構(gòu)造一個(gè)短的確認(rèn)清單,它至少標(biāo)識(shí)未在移動(dòng)客戶10本地高速緩存的從屬資源以及在移動(dòng)客戶10本地高速緩存但已過期的從屬資源。移動(dòng)代理軟件14在步驟146向?yàn)g覽器12發(fā)送具有主資源的HTTP響應(yīng),并且在步驟148通過與固定服務(wù)器30的窄帶連接傳送該確認(rèn)清單。在步驟148之后,移動(dòng)客戶10的操作再次暫停,而其他步驟如圖6所示在固定服務(wù)器10中執(zhí)行。
返回圖6,在固定服務(wù)器30從移動(dòng)代理軟件14收到確認(rèn)清單后(步驟150),固定代理軟件32在步驟152根據(jù)該清單確定是否有任何待發(fā)送的從屬資源,并且建造一個(gè)簡要響應(yīng)。該簡要響應(yīng)包括一個(gè)或多個(gè)狀態(tài)代碼(圖2中的51,52和53),對(duì)于確認(rèn)清單中由移動(dòng)客戶10所請(qǐng)求的每個(gè)從屬資源(圖2中的54,55和56)都有一個(gè)狀態(tài)代碼。如果從固定服務(wù)器30獲取了所有從屬資源,則在簡要響應(yīng)中對(duì)于每個(gè)狀態(tài)代碼都有一個(gè)從屬資源。如果有未由固定服務(wù)器30成功獲取的從屬資源,則狀態(tài)代碼與一個(gè)向移動(dòng)客戶10通知不要期待那些資源的錯(cuò)誤情況(將在下文詳述)相應(yīng)。簡要響應(yīng)可以是單個(gè)傳輸(如步驟154所示),或者可以將簡要響應(yīng)分割為幾個(gè)傳輸,在第一片段中含有對(duì)于所有從屬資源的狀態(tài)代碼。如果簡要響應(yīng)被分為幾個(gè)片段,則移動(dòng)客戶不必對(duì)于單個(gè)片段在窄帶通信鏈路上發(fā)送反向信道確認(rèn)。這樣,位于簡要響應(yīng)中的狀態(tài)代碼與隨后(如果有的話)的那些資源相應(yīng)。
在圖4的步驟156,移動(dòng)客戶10從固定服務(wù)器30收到簡要響應(yīng)和從屬資源(如果有的話)。利用從固定服務(wù)器30收到的與簡要響應(yīng)中的從屬資源有關(guān)的相同信息,移動(dòng)代理軟件14在步驟158更新其本地高速緩沖存儲(chǔ)器26,以便準(zhǔn)備響應(yīng)來自瀏覽器12的任何以后的請(qǐng)求。一旦準(zhǔn)備好高速緩沖存儲(chǔ)器26,移動(dòng)代理軟件14利用移動(dòng)用戶所請(qǐng)求的主資源(或者來自其高速緩沖存儲(chǔ)器或者來自固定服務(wù)器30的壓縮HTTP響應(yīng))以及含有由URL標(biāo)識(shí)的資源的HTTP響應(yīng)對(duì)瀏覽器12的最初請(qǐng)求進(jìn)行響應(yīng)。當(dāng)瀏覽器12發(fā)出對(duì)任何從屬資源的請(qǐng)求時(shí),移動(dòng)代理軟件14能夠立即響應(yīng)該請(qǐng)求,或者移動(dòng)代理軟件14能夠保持該請(qǐng)求,直到從固定服務(wù)器30收到該資源。當(dāng)移動(dòng)代理軟件14接收從屬資源時(shí),移動(dòng)代理軟件14更新其本地高速緩沖存儲(chǔ)器并滿足已經(jīng)保持的來自瀏覽器12的請(qǐng)求。
圖7是根據(jù)本發(fā)明的高速緩沖存儲(chǔ)器檢查操作的流程圖。在代理軟件在步驟180對(duì)于一個(gè)資源檢查其高速緩沖存儲(chǔ)器后,代理軟件在步驟182必須確定所請(qǐng)求的資源是否存在于高速緩沖存儲(chǔ)器中(即,代理軟件是否已經(jīng)先前收到了所請(qǐng)求的資源)。如果不存在該資源,則該資源未被地本地高速緩存。如果存在該資源,則代理軟件必須在步驟184檢查該資源的過期日期。對(duì)資源的過期日期的檢查向代理軟件保證被高速緩存的資源在某個(gè)時(shí)間幀內(nèi)(例如24小時(shí)等,取決于資源的性質(zhì))是最新的。如果資源已經(jīng)過期,則代理軟件必須從另一來源搜索該資源。如果資源尚未過期,則代理軟件在步驟188獲取一個(gè)從屬性清單。代理軟件在步驟190確定是否有任何從屬資源。如果有從屬資源,則代理軟件在步驟192對(duì)于從屬資源進(jìn)行一步檢查高速緩沖存儲(chǔ)器。如果在高速緩沖存儲(chǔ)器中發(fā)現(xiàn)從屬資源,則代理軟件在步驟194檢查該從屬資源的過期日期。如果從屬資源尚未過期,則它們是有效的。如果從屬資源已經(jīng)過期,則代理軟件必須從另一來源搜索該從屬資源。
標(biāo)準(zhǔn)的HTTP請(qǐng)求和響應(yīng)包括一個(gè)請(qǐng)求或狀態(tài)行、零個(gè)或多個(gè)由“域名”組成的首部,一個(gè)值以及(可選擇地)一個(gè)實(shí)體主體。請(qǐng)求或狀態(tài)行和首部是ASCII文本,由回車和換行控制符分隔。首部(請(qǐng)求/狀態(tài)行和首部一起)以及實(shí)體主體(如果存在的話)總是沿未壓縮的窄帶通信鏈路傳送。無線Web代理協(xié)議用請(qǐng)求/狀態(tài)行標(biāo)準(zhǔn)部分的標(biāo)記以及標(biāo)準(zhǔn)首部“域名”和普通值的標(biāo)記所組成的二進(jìn)制格式代替標(biāo)準(zhǔn)HTTP請(qǐng)求和響應(yīng)。非標(biāo)準(zhǔn)域名(例如“X-”首部)或值未改變。
標(biāo)記是無線Web代理協(xié)議的固定預(yù)定元素。每個(gè)代理服務(wù)器知道被標(biāo)記化的信息及其相應(yīng)標(biāo)記。采用標(biāo)記允許“發(fā)送方”代理服務(wù)器在窄帶通信鏈路上傳送較少的數(shù)據(jù)。
另外,請(qǐng)求首部和響應(yīng)首部在代理服務(wù)器處受到高速緩存。首部域的例子是內(nèi)容型,內(nèi)容長度,內(nèi)容編碼,字符集,等。在代理服務(wù)器處高速緩存請(qǐng)求和響應(yīng)首部允許“發(fā)送方”代理服務(wù)器在窄帶通信鏈路上向“接收方”代理服務(wù)器只發(fā)送首部中新的或修改過的域。
另外,含有“動(dòng)態(tài)”HTML格式的某些響應(yīng)包括大量的樣板語言和只有少量的資源專用信息(例如,對(duì)于比如一個(gè)在線照片目錄或庫存標(biāo)價(jià)服務(wù)的搜索引擎或數(shù)據(jù)庫的搜索結(jié)果)。樣板語言是一種專用于HTML頁(例如響應(yīng)的主體)的語言。因此,利用大型樣板語言,用戶為了僅接收少部分資源專用信息可能將經(jīng)受長的延遲。為了避免用戶經(jīng)受這樣長的延遲,無線Web代理系統(tǒng)在各代理服務(wù)器對(duì)響應(yīng)進(jìn)行高速緩存。當(dāng)“接收方”代理服務(wù)器再次請(qǐng)求已被高速緩存的響應(yīng)時(shí),“發(fā)送方”代理服務(wù)器將被高速緩存的響應(yīng)與當(dāng)前響應(yīng)(例如從原始主機(jī)獲取的響應(yīng))進(jìn)行比較。“發(fā)送方”代理服務(wù)器識(shí)別出被高速緩存的響應(yīng)與當(dāng)前響應(yīng)之間的樣板語言,并且只在窄帶連接上發(fā)送未在“接收方”代理服務(wù)器處高速緩存的信息。“接收方”代理服務(wù)器將被高速緩存的信息與在窄帶連接上收到的信息結(jié)合起來,重構(gòu)完整的動(dòng)態(tài)響應(yīng)。
這種方法對(duì)于與錯(cuò)誤情況相應(yīng)的響應(yīng)也是十分有用的。通常,與錯(cuò)誤情況相應(yīng)的響應(yīng)包括一個(gè)含有狀態(tài)代碼的狀態(tài)行、原因短語、協(xié)議版本、零個(gè)或多個(gè)首部以及一個(gè)實(shí)體主體。這些元素實(shí)質(zhì)上是靜態(tài)的,并且除了狀態(tài)代碼之外不提供任何信息,盡管它們通??傆?jì)達(dá)幾十或上百字節(jié)。因此,因?yàn)樵谡瓗ㄐ沛溌飞蟼魉退性兀脩艨赡軐⒔?jīng)受長的延遲。無線Web代理系統(tǒng)通過在代理服務(wù)器處對(duì)上述元素進(jìn)行高速緩存并且在窄帶通信鏈路上只發(fā)送與錯(cuò)誤情況相應(yīng)的狀態(tài)代碼,避免用戶經(jīng)受長的延遲。在移動(dòng)客戶處根據(jù)該狀態(tài)代碼重構(gòu)完整的HTTP響應(yīng),并發(fā)送到瀏覽器。
另外,如圖2所示,T1是最初HTTP請(qǐng)求與從固定服務(wù)器30向移動(dòng)客戶10發(fā)送第一響應(yīng)(例如主響應(yīng))之間的時(shí)間。T1時(shí)間短允許瀏覽器12在短的時(shí)間周期內(nèi)向移動(dòng)用戶顯示大概信息。允許移動(dòng)用戶快速獲得大概信息,使得移動(dòng)用戶如果在不希望看整個(gè)頁時(shí)(例如,如果移動(dòng)用戶不想看所顯示的信息類型,如果移動(dòng)用戶通過觀看大概信息而能夠獲得他/她所查尋的內(nèi)容,等等),在完成該頁之前,有機(jī)會(huì)取消該請(qǐng)求或提交不同的請(qǐng)求。
圖8是本發(fā)明另一實(shí)施方式的轉(zhuǎn)移連接(bounce)圖。該可替換的實(shí)施方式與最佳實(shí)施方式類似。然而,該可替換的實(shí)施方式并不象最佳實(shí)施方式那樣包括產(chǎn)生并向固定服務(wù)器30發(fā)送確認(rèn)清單的移動(dòng)代理軟件14。相反,該實(shí)施方式允許固定代理服務(wù)器32在固定代理軟件32獲取主資源和任何從屬資源后向移動(dòng)客戶10發(fā)送具有一頁和從屬性(HTML)清單的HTTP響應(yīng)。為了響應(yīng)向?yàn)g覽器12發(fā)送HTTP響應(yīng)的移動(dòng)代理軟件14,瀏覽器12向移動(dòng)代理軟件14提交對(duì)于從屬資源的HTTP請(qǐng)求。固定服務(wù)器30向移動(dòng)客戶10發(fā)送從屬資源。移動(dòng)代理軟件14在其本地高速緩沖存儲(chǔ)器26中高速緩存從屬資源,并且在收到請(qǐng)求時(shí)向?yàn)g覽器12發(fā)送從屬資源。
利用單次傳送中的單個(gè)請(qǐng)求、主資源、確認(rèn)清單以及從屬資源流,能夠向移動(dòng)用戶的Web瀏覽器12傳遞完整地提供整頁(一個(gè)Web頁)信息所需的信息。盡管本發(fā)明是結(jié)合特定實(shí)施方式描述的,但是對(duì)于本領(lǐng)域內(nèi)熟練的技術(shù)人員而言,在前述教導(dǎo)下顯然可以做出許多替代、修改和變更。因此,應(yīng)理解到,本發(fā)明并不限于以前所述,而應(yīng)該根據(jù)權(quán)利要求的實(shí)質(zhì)和范圍包括所有這些替代、修改和變更。
權(quán)利要求
1.在固定服務(wù)器上執(zhí)行的有效傳遞信息的方法,包括步驟接收對(duì)于如統(tǒng)一資源定位符URL所標(biāo)識(shí)的主資源的超文本傳輸協(xié)議HTTP請(qǐng)求;與URL中所標(biāo)識(shí)的主機(jī)連接;從主機(jī)接收主資源;檢查主資源,以標(biāo)識(shí)從屬資源;預(yù)取并組裝從屬資源;以及向請(qǐng)求方傳送主資源。
2.根據(jù)權(quán)利要求1的方法,還包括步驟將從屬資源高速緩存到本地高速緩沖存儲(chǔ)器中;等待來自請(qǐng)求從屬資源的移動(dòng)客戶的確認(rèn)清單;以及在收到確認(rèn)清單后,向移動(dòng)客戶發(fā)送由移動(dòng)客戶請(qǐng)求的從屬資源。
3.具有固定部分和移動(dòng)部分的無線網(wǎng)絡(luò)代理服務(wù)器,該固定部分包括第一數(shù)字處理器,包括一個(gè)資源收發(fā)器和一個(gè)與資源收發(fā)器連接的簡要響應(yīng)構(gòu)造器,該簡要響應(yīng)構(gòu)造器具有一個(gè)輸出端;第一射頻收發(fā)器,與簡要響應(yīng)構(gòu)造器的輸出端連接,用于在通信鏈路上向?yàn)g覽器發(fā)送至少一個(gè)簡要響應(yīng);該移動(dòng)部分包括瀏覽器;第二射頻收發(fā)器;高速緩沖存儲(chǔ)器;以及第二數(shù)字處理器,具有一個(gè)資源收發(fā)器和與高速緩沖存儲(chǔ)器連接的確認(rèn)清單發(fā)生器,資源收發(fā)器連接到第二射頻收發(fā)器,確認(rèn)清單發(fā)生器具有一個(gè)對(duì)收到的資源與被高速緩存的資源進(jìn)行比較的比較器。
4.向?yàn)g覽器提供資源的方法,包括步驟從瀏覽器向移動(dòng)客戶發(fā)送超文本傳輸協(xié)議HTTP請(qǐng)求;從移動(dòng)客戶向固定服務(wù)器發(fā)送該HTTP請(qǐng)求;從固定服務(wù)器向原始主機(jī)發(fā)送該HTTP請(qǐng)求;在固定服務(wù)器處從原始主機(jī)接收HTTP響應(yīng);從固定服務(wù)器向移動(dòng)客戶發(fā)送一列資源;在移動(dòng)客戶處,對(duì)該列資源與存儲(chǔ)在高速緩沖存儲(chǔ)器中的資源進(jìn)行比較;從移動(dòng)客戶向固定服務(wù)器發(fā)送從該列資源中有選擇地指示資源的確認(rèn)清單;在固定服務(wù)器處,對(duì)確認(rèn)清單有選擇地指示的資源進(jìn)行組裝;以及在單個(gè)傳輸中,從固定服務(wù)器向移動(dòng)客戶發(fā)送由確認(rèn)清單有選擇地指示的資源。
5.根據(jù)權(quán)利要求4的方法,還包括步驟在請(qǐng)求時(shí)從移動(dòng)客戶向?yàn)g覽器發(fā)送每個(gè)資源。
6.一種方法,包括步驟在固定服務(wù)器處從原始主機(jī)接收超文本傳送協(xié)議HTTP響應(yīng);識(shí)別出該HTTP響應(yīng)與一個(gè)錯(cuò)誤情況相應(yīng);向移動(dòng)客戶發(fā)送一個(gè)狀態(tài)代碼;以及在移動(dòng)客戶處根據(jù)狀態(tài)代碼,構(gòu)造完整的HTTP響應(yīng),以便向?yàn)g覽器傳送。
7.有效傳送信息的方法,該方法包括步驟從移動(dòng)客戶向固定服務(wù)器一次傳輸請(qǐng)求整體中的請(qǐng)求首部;將請(qǐng)求首部高速緩存到固定服務(wù)器處的高速緩沖存儲(chǔ)器中;對(duì)于具有該請(qǐng)求首部的信息的后續(xù)傳輸,從移動(dòng)客戶向固定服務(wù)器傳輸與在固定服務(wù)器處被高速緩存的請(qǐng)求首部中所含的信息不同的信息;從固定服務(wù)器向移動(dòng)客戶一次傳輸響應(yīng)整體中的響應(yīng)首部;將響應(yīng)首部高速緩存到移動(dòng)客戶處的高速緩沖存儲(chǔ)器中;以及對(duì)于具有該響應(yīng)首部的信息的后續(xù)傳輸,從固定服務(wù)器向移動(dòng)客戶傳輸與在移動(dòng)客戶處被高速緩存的請(qǐng)求首部中所含的信息不同的信息。
8.減少窄帶連接上數(shù)據(jù)傳送的方法,包括步驟在移動(dòng)客戶處從瀏覽器接收對(duì)于一個(gè)資源的超文本傳輸協(xié)議HTTP請(qǐng)求;在移動(dòng)客戶的高速緩沖存儲(chǔ)器中檢查該資源;識(shí)別出移動(dòng)客戶已經(jīng)收到該資源并且需要再次請(qǐng)求該資源;向固定服務(wù)器通知移動(dòng)客戶已經(jīng)先前高速緩存了該資源;在固定服務(wù)器處對(duì)當(dāng)前在固定服務(wù)器處被高速緩存的資源進(jìn)行檢查;從原始主機(jī)請(qǐng)求該資源;從原始主機(jī)接收具有更新的資源的HTTP響應(yīng);對(duì)被高速緩存的資源與更新的資源進(jìn)行比較;以及向移動(dòng)客戶發(fā)送當(dāng)與當(dāng)前被高速緩存在移動(dòng)客戶處的資源一起使用時(shí)構(gòu)成更新的資源的信息。
9.啟動(dòng)窄帶連接上數(shù)據(jù)傳送的方法,包括步驟在固定服務(wù)器處接收對(duì)于一個(gè)主資源的超文本傳輸協(xié)議HTTP請(qǐng)求;如果主資源未被高速緩存在固定服務(wù)器處,則從原始主機(jī)獲取該主資源;如果主資源被高速緩存在固定服務(wù)器處但已過期,則從原始主機(jī)獲取該主資源;將主資源高速緩存在固定服務(wù)器處的高速緩沖存儲(chǔ)器中;從主資源標(biāo)識(shí)從屬資源;從原始主機(jī)請(qǐng)求未被高速緩存在固定服務(wù)器處的從屬資源;如果被高速緩存在固定服務(wù)器處的從屬資源已經(jīng)過期,則從原始主機(jī)請(qǐng)求被高速緩存在固定服務(wù)器處的從屬資源;高速緩存從屬資源;以及向移動(dòng)客戶發(fā)送主資源。
10.根據(jù)權(quán)利要求9的方法,包括步驟在移動(dòng)客戶處將主資源高速緩存到移動(dòng)客戶處的高速緩器中;從主資源中標(biāo)識(shí)從屬資源;產(chǎn)生一個(gè)至少標(biāo)識(shí)未被高速緩存在移動(dòng)客戶處的從屬資源以及被高速緩存在移動(dòng)客戶處但已過期的從屬資源的確認(rèn)清單;向固定服務(wù)器發(fā)送該確認(rèn)清單;接收未被高速緩存在移動(dòng)客戶處的從屬資源以及被高速緩存在移動(dòng)客戶處但已過期的從屬資源;將從屬資源高速緩存在移動(dòng)客戶處的高速緩沖存儲(chǔ)器中;向?yàn)g覽器發(fā)送主資源;以及在請(qǐng)求時(shí)向?yàn)g覽器發(fā)送從屬資源。
11.移動(dòng)客戶處的方法,包括步驟從瀏覽器接收對(duì)于一個(gè)主資源的請(qǐng)求;對(duì)于該主資源檢查移動(dòng)客戶處的高速緩沖存儲(chǔ)器;如果該主資源存在于移動(dòng)客戶處(i)向?yàn)g覽器發(fā)送該主資源;如果該主資源存在于移動(dòng)客戶處并已過期(i)對(duì)于該主資源的請(qǐng)求進(jìn)行標(biāo)記化和壓縮;(ii)向固定服務(wù)器發(fā)送對(duì)于該主資源的請(qǐng)求;(iii)從固定服務(wù)器接收對(duì)于該主資源的不同的更新信息;(iv)對(duì)于主資源的不同的更新信息進(jìn)行解壓縮;(v)對(duì)于從固定服務(wù)器接收的主資源的不同的更新信息與先前在移動(dòng)客戶處高速緩存的信息進(jìn)行組裝;(vi)利用完全更新的主資源更新移動(dòng)客戶處的高速緩沖存儲(chǔ)器;以及(vii)向?yàn)g覽器發(fā)送完全更新的主資源;如果該主資源未存在于移動(dòng)客戶處(i)對(duì)于該主資源的請(qǐng)求進(jìn)行標(biāo)記化和壓縮;(ii)向固定服務(wù)器發(fā)送對(duì)于該主資源的請(qǐng)求;(iii)從固定服務(wù)器接收完全更新的主資源;(iv)利用完全更新的主資源更新移動(dòng)客戶處的高速緩沖存儲(chǔ)器;以及(v)向?yàn)g覽器發(fā)送完全更新的主資源。
12.根據(jù)權(quán)利要求11的方法,在向?yàn)g覽器發(fā)送完全更新的主資源的步驟之后,還包括步驟在移動(dòng)客戶處標(biāo)識(shí)從屬資源;產(chǎn)生一個(gè)確認(rèn)清單;向固定服務(wù)器發(fā)送確認(rèn)清單;從固定服務(wù)器接收簡要響應(yīng)及隨后的從屬資源;利用從屬資源更新移動(dòng)客戶處的高速緩沖存儲(chǔ)器;以及計(jì)算多個(gè)從屬資源。
13.固定服務(wù)器處的方法,包括步驟從移動(dòng)客戶接收對(duì)于一個(gè)主資源的請(qǐng)求;對(duì)于該主資源檢查固定服務(wù)器處的高速緩沖存儲(chǔ)器;如果該主資源存在于固定服務(wù)器并且是有效的(i)對(duì)于該主資源進(jìn)行標(biāo)記化和壓縮;以及(ii)向移動(dòng)客戶發(fā)送該主資源;如果該主資源存在于固定服務(wù)器并且是失時(shí)效的(i)從原始主機(jī)獲取該主資源;(ii)將該主資源高速緩存于固定服務(wù)器處;(iii)對(duì)主資源進(jìn)行標(biāo)記化和壓縮;以及(iv)向移動(dòng)客戶發(fā)送該主資源;如果該主資源未存在于固定服務(wù)器(i)從原始主機(jī)獲取主資源;(ii)在固定服務(wù)器處高速緩存該主資源。(iii)對(duì)主資源進(jìn)行標(biāo)記化和壓縮;以及(iv)向移動(dòng)客戶發(fā)送該主資源。
14.根據(jù)權(quán)利要求13的方法,還包括步驟預(yù)取對(duì)于主資源的從屬資源;以及在固定服務(wù)器處高速緩存對(duì)于主資源的從屬資源。
全文摘要
在窄帶通信鏈路上傳遞信息的系統(tǒng)和方法。該系統(tǒng)至少具有瀏覽器(12)、移動(dòng)客戶(10)、固定服務(wù)器(30)和原始主機(jī)(50)。移動(dòng)客戶將瀏覽器對(duì)資源的請(qǐng)求發(fā)送到固定服務(wù)器。服務(wù)器從原始主機(jī)獲取主資源和任何從屬資源,然后將主資源發(fā)送到移動(dòng)客戶。移動(dòng)客戶向服務(wù)器發(fā)送請(qǐng)求從屬資源的確認(rèn)清單,并將主資源發(fā)送到瀏覽器。服務(wù)器在一次傳輸中將所請(qǐng)求的從屬資源發(fā)送到移動(dòng)客戶。移動(dòng)客戶在得到請(qǐng)求時(shí)將從屬資源發(fā)送到瀏覽器。
文檔編號(hào)H04L12/28GK1196528SQ9810545
公開日1998年10月21日 申請(qǐng)日期1998年3月12日 優(yōu)先權(quán)日1997年3月13日
發(fā)明者喬恩·S·沃倫, 戴維德·威廷頓, 斯考特·扎波牢基, 洛德·祖徹, 戴維德·別薩奇 申請(qǐng)人:摩托羅拉公司