欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

文件傳送系統(tǒng)、設(shè)備、方法以及存儲文件傳送程序的計算機可讀介質(zhì)的制作方法

文檔序號:7663241閱讀:195來源:國知局
專利名稱:文件傳送系統(tǒng)、設(shè)備、方法以及存儲文件傳送程序的計算機可讀介質(zhì)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種用于傳送文件(具有特定目的的信息)的文件傳送技術(shù)。更為特別的是,本發(fā)明涉及一種文件傳送技術(shù),其中文件數(shù)據(jù)根據(jù)一個接收設(shè)備所接收的數(shù)據(jù)量而被發(fā)送到接收設(shè)備。該數(shù)據(jù)量由接收設(shè)備提供。根據(jù)該文件傳送技術(shù),發(fā)送和接收一個文件所需要的時間縮短,并且,等待接收設(shè)備能夠開始接收文件所需要的時間不會隨著文件大小和中繼設(shè)備的數(shù)目成比例增加。
背景技術(shù)
通過使用一個網(wǎng)絡(luò),將一個文件從一個發(fā)送方終端(下文中將被稱作發(fā)送設(shè)備)傳送到位于接收方的另一個終端(下文中將被稱作接收設(shè)備),這種系統(tǒng)稱為文件傳送系統(tǒng)。
作為常規(guī)文件傳送系統(tǒng)的一個實例,存在一種方法,其中文件被從發(fā)送設(shè)備直接發(fā)送到接收設(shè)備。作為另一個實例,存在一種方法,其中提供了一個共享服務(wù)器,例如FTP服務(wù)器或HTTP服務(wù)器,該服務(wù)器包括一個用于保存文件的部分和一個根據(jù)終端請求而把存儲文件分發(fā)到終端的部分。此外,發(fā)送設(shè)備將文件存入共享服務(wù)器,接收設(shè)備從共享服務(wù)器接收文件。
作為一個附加實例,存在一種方法,其中文件經(jīng)由多個文件中繼設(shè)備而被傳送,類似電子郵件。
對于把文件從發(fā)送設(shè)備直接發(fā)送到接收設(shè)備的方法來說,存在一個問題,那就是發(fā)送設(shè)備和接收設(shè)備應(yīng)該被同時激活。此外,對于提供共享服務(wù)器的方法來說,盡管不必同時激活發(fā)送設(shè)備和接收設(shè)備,但是存在一個問題,那就是當(dāng)共享服務(wù)器遠(yuǎn)離發(fā)送設(shè)備和接收設(shè)備的時候,發(fā)送設(shè)備的文件發(fā)送過程與接收設(shè)備的文件接收過程將會非常費時。
另外,對于文件經(jīng)由多個文件中繼設(shè)備而被傳送的方法來說,發(fā)送設(shè)備發(fā)送文件和接收設(shè)備接受文件的費時問題可以被解決,因為發(fā)送設(shè)備和接收設(shè)備可以把文件發(fā)送到一個最接近的文件中繼設(shè)備,并從一個最接近的文件中繼設(shè)備接收文件。然而,在第一中繼設(shè)備接收到所有文件之前,第一中繼設(shè)備無法將文件發(fā)送到下一階段的第二文件中繼設(shè)備。原因是前一階段的文件中繼設(shè)備或發(fā)送設(shè)備,當(dāng)其文件傳送速度低于下一階段的文件中繼設(shè)備或接收設(shè)備的文件傳送速度時,在某些中間點,文件中繼設(shè)備將被迫停止傳送一個文件到下一階段。因此,從發(fā)送設(shè)備開始發(fā)送一個文件直到接收設(shè)備可以開始接收該文件的等待時間將會隨文件大小和中繼文件傳送設(shè)備的數(shù)目成比例增加。
此外,根據(jù)一種常規(guī)的文件傳送方法,在某個中間點中止和恢復(fù)文件傳送的時候,文件傳送無法被執(zhí)行。其原因是,根據(jù)常規(guī)的文件傳送方法,中繼設(shè)備不能把所中止文件的已存儲數(shù)據(jù)量發(fā)送到發(fā)送設(shè)備,并且,發(fā)送設(shè)備不能將該數(shù)據(jù)量的數(shù)據(jù)之后的數(shù)據(jù)發(fā)送到中繼設(shè)備。

發(fā)明內(nèi)容
本發(fā)明的一個目的是提供一種文件傳送系統(tǒng),其中發(fā)送和接收文件所需要的時間,以及接收設(shè)備能夠開始接收文件之前的等待時間不會與文件大小和中繼設(shè)備數(shù)目成比例。
本發(fā)明的另一個目的是提供一種文件傳送系統(tǒng),其中發(fā)送設(shè)備可以在某個中間點中止發(fā)送文件并恢復(fù)發(fā)送文件。
本發(fā)明的文件傳送系統(tǒng)包括一個文件存儲部分、一個始發(fā)文件接收部分以及一個輸入文件發(fā)送部分。發(fā)送設(shè)備包括一個始發(fā)文件存儲部分和一個始發(fā)文件發(fā)送部分。接收設(shè)備包括一個輸入文件存儲部分和一個輸入文件接收部分。
中繼設(shè)備獨立執(zhí)行存儲操作和發(fā)送操作,其中存儲操作是把從發(fā)送設(shè)備接收的數(shù)據(jù)存入文件存儲部分,發(fā)送操作是使用輸入文件發(fā)送部分而把已存儲數(shù)據(jù)發(fā)送到接收設(shè)備。因此,在結(jié)束從發(fā)送設(shè)備接收文件之前就可以開始向接收設(shè)備發(fā)送文件。中繼設(shè)備包括一個始發(fā)文件信息接收部分和一個輸入文件信息發(fā)送部分。
發(fā)送設(shè)備包括一個始發(fā)文件信息發(fā)送部分。接收設(shè)備包括一個輸入文件信息接收部分。
在接收文件之前,通過始發(fā)文件信息接收部分,中繼設(shè)備從發(fā)送設(shè)備接收文件大小,將該文件大小與文件標(biāo)識符關(guān)聯(lián),并將其記錄到文件存儲部分中。
另外,在發(fā)送文件之前,通過輸入文件信息發(fā)送部分,中繼設(shè)備把文件標(biāo)識符和文件大小告知接收設(shè)備。接收設(shè)備把通過輸入文件信息接收部分從中繼設(shè)備接收的文件標(biāo)識符和文件大小存入輸入文件存儲部分。
在接收設(shè)備通過輸入文件接收部分接收了中繼設(shè)備保存的所有數(shù)據(jù)之后,接收設(shè)備對文件大小和已接收數(shù)據(jù)量進(jìn)行比較。當(dāng)它們不相同時,對新近到達(dá)中繼設(shè)備的數(shù)據(jù)進(jìn)行接收的操作將被重復(fù)。這樣,即便發(fā)送設(shè)備將文件發(fā)送到中繼設(shè)備的速度低于接收設(shè)備從中繼設(shè)備接收文件的速度,也可對數(shù)據(jù)傳送速度進(jìn)行調(diào)整。
中繼設(shè)備可以包括一個傳送目的地確定部分、一個文件中繼信息發(fā)送部分、一個中繼文件發(fā)送部分、一個文件中繼信息接收部分以及一個中繼文件接收部分。在這種情況下,中繼設(shè)備根據(jù)文件的目的地址組而對是否需要將文件傳送到另一個中繼設(shè)備加以判定。在有必要傳送該文件時,中繼設(shè)備確定該文件應(yīng)被傳送至的中繼設(shè)備組,并且發(fā)送包含目的地址列表、文件標(biāo)識符以及文件大小的文件中繼信息。
通過文件中繼信息接收部分,第二中繼設(shè)備從前一階段的中繼設(shè)備中接收文件中繼信息,該中繼設(shè)備把文件中繼信息存入文件信息存儲部分,并且通過中繼文件接收部分,從先前中繼設(shè)備接收數(shù)據(jù)。在接收了保存在前一階段中繼設(shè)備中的所有數(shù)據(jù)之后,第二中繼設(shè)備比較文件大小與接收數(shù)據(jù)。在它們不相同時,第二中繼設(shè)備重復(fù)一個接收新近到達(dá)前一階段中繼設(shè)備的數(shù)據(jù)的操作。
因此,在把文件從發(fā)送設(shè)備發(fā)送到接收設(shè)備的時候,文件很有可能經(jīng)過多個中繼設(shè)備,因此,從網(wǎng)絡(luò)路由的觀點來看,每個發(fā)送設(shè)備和接收設(shè)備都可以與最接近的中繼設(shè)備進(jìn)行通信。這樣,對發(fā)送設(shè)備來說,文件發(fā)送可以被快速完成,對接收設(shè)備來說,文件接收也可被快速完成。
中繼設(shè)備的文件存儲部分包括一個部分,其中保存著指示發(fā)送設(shè)備是否中止文件發(fā)送的發(fā)送狀態(tài),發(fā)送文件接收部分包括一個部分,該部分把文件存儲部分中保存的發(fā)送狀態(tài)改為中止?fàn)顟B(tài),輸入文件發(fā)送部分包括一個部分,在把一個文件發(fā)送到接收設(shè)備的時候,該部分首先發(fā)送文件發(fā)送狀態(tài),隨后發(fā)送數(shù)據(jù)。發(fā)送設(shè)備的始發(fā)文件發(fā)送部分包括一個中止文件發(fā)送的部分。接收設(shè)備的輸入文件接收部分可以包括一個部分,該部分從中繼設(shè)備接收文件發(fā)送狀態(tài),當(dāng)文件發(fā)送狀態(tài)是中止?fàn)顟B(tài)時,該部分中止文件接收,當(dāng)文件發(fā)送狀態(tài)不是中止?fàn)顟B(tài)時,該部分接收該文件中未被接收的那部分?jǐn)?shù)據(jù)。
在這種情況下,由于發(fā)送設(shè)備中止文件發(fā)送被告知了中繼設(shè)備和接收設(shè)備,因此,即使在中止文件發(fā)送之后,中繼設(shè)備和接收設(shè)備也不需要繼續(xù)等待后續(xù)數(shù)據(jù)。
中繼設(shè)備的中繼文件發(fā)送部分包括一個部分,該部分首先發(fā)送文件發(fā)送狀態(tài),然后發(fā)送文件數(shù)據(jù)。中繼文件接收部分可以包括一個部分,該部分從前一階段的中繼設(shè)備接收文件發(fā)送狀態(tài),在文件發(fā)送狀態(tài)為中止?fàn)顟B(tài)時中止接收,在文件發(fā)送狀態(tài)不是中止?fàn)顟B(tài)時接收文件中仍未被接收的數(shù)據(jù)。在這種情況下,由于發(fā)送設(shè)備中止文件發(fā)送被告知了多個用于中繼文件的中繼設(shè)備,因此,即使文件發(fā)送中止,也可避免每個中繼設(shè)備繼續(xù)等待后續(xù)數(shù)據(jù)。
中繼設(shè)備可以包括一個已接收數(shù)據(jù)量響應(yīng)部分。始發(fā)文件接收部分包括一個部分,在文件存儲部分保存的文件發(fā)送狀態(tài)為中止?fàn)顟B(tài),以及對應(yīng)于文件標(biāo)識符的文件已經(jīng)存在的時候,該部分將文件發(fā)送狀態(tài)改成一個指示該狀態(tài)不是中止?fàn)顟B(tài)的狀態(tài),并且把接收到的數(shù)據(jù)添加到已存儲文件的末端。發(fā)送設(shè)備的始發(fā)文件發(fā)送部分可以包括一個部分,該部分向中繼設(shè)備查詢該文件的已接收數(shù)據(jù)量,并將所告知數(shù)據(jù)量的數(shù)據(jù)之后的數(shù)據(jù)發(fā)送到中繼設(shè)備。在這種情況下,發(fā)送設(shè)備可以從后續(xù)數(shù)據(jù)恢復(fù)文件發(fā)送,并且,保存在中繼設(shè)備的文件存儲部分中的文件發(fā)送狀態(tài)變?yōu)榉侵兄範(fàn)顟B(tài)。這樣,接收設(shè)備可以恢復(fù)文件的接收。中繼設(shè)備的中繼文件接收部分可以包括一個部分,該部分從前一階段的中繼設(shè)備中接收文件發(fā)送狀態(tài),當(dāng)文件發(fā)送狀態(tài)不是中止?fàn)顟B(tài)時,該部分把保存在文件存儲部分中的文件的文件發(fā)送狀態(tài)改成指示該狀態(tài)不是中止?fàn)顟B(tài)的一個狀態(tài)。在這種情況下,可以將發(fā)送設(shè)備恢復(fù)文件發(fā)送告知給每個中繼設(shè)備,保存在每個中繼設(shè)備的文件存儲部分中的發(fā)送狀態(tài)都變成非中止?fàn)顟B(tài)。由此,中繼設(shè)備之間的文件傳送重新開始。
本發(fā)明可作為文件傳送系統(tǒng)中使用的中繼設(shè)備而被形成。在這種情況下,中繼設(shè)備包括從接收設(shè)備接收文件標(biāo)識符和已下載數(shù)據(jù)量的輸入文件發(fā)送部分,以及一個文件存儲部分,該部分保存相互關(guān)聯(lián)的該文件的文件標(biāo)識符和文件數(shù)據(jù),并根據(jù)文件標(biāo)識符和已下載數(shù)據(jù)量而把文件數(shù)據(jù)傳遞到輸入文件發(fā)送部分。根據(jù)已下載數(shù)據(jù)量,輸入文件發(fā)送部分把文件數(shù)據(jù)發(fā)送到接收設(shè)備。
本發(fā)明可作為文件傳送系統(tǒng)中使用的各個發(fā)送設(shè)備和接收設(shè)備而被形成。
此外,本發(fā)明可作為一種文件傳送方法而被形成。在這種情況下,該文件傳送方法包括一個第一個步驟,在接收到文件發(fā)送請求的時候,產(chǎn)生一個用于識別文件的文件標(biāo)識符,一個第二步驟,在接收文件數(shù)據(jù)之前,從發(fā)送設(shè)備接收一個文件大小,并且保存相互關(guān)聯(lián)的文件大小和文件標(biāo)識符,一個第三步驟,請求發(fā)送設(shè)備發(fā)送文件數(shù)據(jù),直到接收數(shù)據(jù)達(dá)到該文件大小,一個第四步驟,在將文件數(shù)據(jù)發(fā)送到接收設(shè)備之前,把文件標(biāo)識符和文件大小發(fā)送到接收設(shè)備,一個第五步驟,把文件數(shù)據(jù)發(fā)送到接收設(shè)備,直到接收設(shè)備接收的數(shù)據(jù)量達(dá)到該文件大小。
另外,本發(fā)明可作為一種對執(zhí)行上述方法的程序加以保存的計算機可讀介質(zhì)而被形成,并且可以作為該程序而被形成。
本發(fā)明的其它目的、特征和優(yōu)點將在參考附圖的下述詳細(xì)描述中變得更為清楚。
附圖簡述

圖1是一個顯示第一實施例的文件傳送系統(tǒng)整體結(jié)構(gòu)的示意性框圖;圖2是一個顯示第一實施例的處理流程概要的流程圖;圖3是一個顯示第二實施例的文件傳送系統(tǒng)整體結(jié)構(gòu)的示意性框圖;圖4是一個顯示第二實施例的處理流程概要的流程圖;圖5是一個顯示第三實施例的文件傳送系統(tǒng)整體結(jié)構(gòu)的示意性框圖;圖6是一個顯示第三實施例的處理流程概要的流程圖;圖7是一個顯示第四實施例的文件傳送系統(tǒng)整體結(jié)構(gòu)的示意性框圖;圖8是一個顯示第四實施例的處理流程概要的流程圖。
執(zhí)行本發(fā)明的優(yōu)選實施例下文中將參考附圖而對本發(fā)明的實施例進(jìn)行描述。
以下將對本發(fā)明的第一實施例進(jìn)行描述。
圖1是一個顯示該實施例的文件傳送系統(tǒng)整體結(jié)構(gòu)的示意性框圖。如圖所示,該文件傳送系統(tǒng)包括一個發(fā)送設(shè)備30,一個接收設(shè)備50和一個中繼設(shè)備10,中繼設(shè)備10被連接到發(fā)送設(shè)備30和接收設(shè)備50,這樣,中繼設(shè)備10就可以與發(fā)送設(shè)備30和中繼設(shè)備50交換數(shù)據(jù)。發(fā)送設(shè)備30、接收設(shè)備50以及中繼設(shè)備10,其中每一個都是通過在具有網(wǎng)絡(luò)接口的計算機上運行基于以下處理方法的程序而被實現(xiàn)的。
本發(fā)明的程序可被保存在CD-ROM等存儲器中,并且可以被分發(fā)。此外,該程序可以通過提供網(wǎng)絡(luò)下載而被分發(fā)。通過把CD-ROM中存儲的或是下載的程序安裝到計算機中,該計算機可用作本發(fā)明的發(fā)送設(shè)備、中繼設(shè)備或接收設(shè)備。
發(fā)送設(shè)備10包括一個文件始發(fā)信息發(fā)送部分31,一個始發(fā)文件存儲部分33和一個始發(fā)文件發(fā)送部分32。
文件始發(fā)信息發(fā)送部分31把文件始發(fā)信息發(fā)送到中繼設(shè)備10,其中文件始發(fā)信息包括代表始發(fā)文件信息發(fā)送的字符串,以及被傳文件的文件大小L和目的IP地址R。此外,文件始發(fā)信息發(fā)送部分31接收文件標(biāo)識符I并將文件標(biāo)識符I傳遞到始發(fā)文件存儲部分33。
基于文件標(biāo)識符I,始發(fā)文件存儲部分33讀取自身或是其他存儲設(shè)備保存的文件數(shù)據(jù),并將文件數(shù)據(jù)連同文件標(biāo)識符I一起傳遞到始發(fā)文件發(fā)送部分32。
始發(fā)文件發(fā)送部分32從始發(fā)文件存儲部分33接收文件數(shù)據(jù)和文件標(biāo)識符I,并將文件數(shù)據(jù)、文件標(biāo)識符I以及代表始發(fā)文件發(fā)送的字符串發(fā)送到中繼設(shè)備10。
中繼設(shè)備10包括一個文件始發(fā)信息接收部分11、一個始發(fā)文件接收部分12、一個文件存儲部分13、一個文件輸入信息發(fā)送部分14以及一個輸入文件發(fā)送部分15。
文件始發(fā)信息接收部分11可以從發(fā)送設(shè)備接收文件大小L和目的地址R,并且可以產(chǎn)生文件標(biāo)識符I和一個文件路徑P,還能向文件存儲部分13提供文件標(biāo)識符I和文件路徑P。
始發(fā)文件接收部分12可以從發(fā)送設(shè)備接收文件標(biāo)識符I和文件數(shù)據(jù)F(x),并將它們提供給文件存儲部分13,其中“x”表示文件數(shù)據(jù)中已被讀取和發(fā)送到中繼部分的數(shù)據(jù)量(偏移)。
文件輸入信息發(fā)送部分14可以接收一個從接收設(shè)備50發(fā)送的POST方法,并且可以獲取接收設(shè)備的IP地址R。此外,文件輸入信息發(fā)送部分14具有如下功能在文件存儲部分13中的一個文件表中搜索與IP地址R關(guān)聯(lián)的一對文件標(biāo)識符I和文件大小L,獲取該對數(shù)據(jù),并將該對文件標(biāo)識符I和文件大小L告知接收設(shè)備50。
輸入文件發(fā)送部分15可以從接收設(shè)備50接收文件標(biāo)識符I和已下載數(shù)據(jù)量O_R,并且可以根據(jù)文件標(biāo)識符I和已下載數(shù)據(jù)量O_R,從文件存儲部分13接收文件數(shù)據(jù)F(O_R)。此外,輸入文件發(fā)送部分15具有將文件數(shù)據(jù)F(O_R)發(fā)送到接收設(shè)備50的功能。已下載數(shù)據(jù)量是文件數(shù)據(jù)中已經(jīng)被接收設(shè)備50接收的數(shù)據(jù)量。
文件存儲部分13具有下列功能保存文件始發(fā)信息接收部分發(fā)送的文件標(biāo)識符I、文件路徑P、文件大小L以及目的IP地址R,同時將它們相互關(guān)聯(lián),將始發(fā)文件接收部分發(fā)送的文件數(shù)據(jù)F’存入一個由文件路徑P指定的區(qū)域,根據(jù)來自文件輸入信息發(fā)送部分14的目的地址R,將文件標(biāo)識符I和文件大小L傳遞到文件輸入信息發(fā)送部分14,以及將對應(yīng)于來自輸入文件發(fā)送部分15的文件標(biāo)識符I和已下載數(shù)據(jù)量O_R的文件數(shù)據(jù)F(O_R)傳遞到輸入文件發(fā)送部分15。
接收設(shè)備50包括一個文件輸入信息接收部分51,一個輸入文件存儲部分53以及一個輸入文件接收部分52。
文件輸入信息接收部分51具有如下功能從中繼設(shè)備10接收包含文件標(biāo)識符I和文件大小L的文件輸入信息,基于文件標(biāo)識符I,確定一條指示文件存儲目的地的文件路徑P’,以及將文件標(biāo)識符I、文件路徑P’和文件大小L提供給輸入文件存儲部分53。
輸入文件存儲部分53具有如下功能根據(jù)來自文件輸入信息接收部分51的文件標(biāo)識符I、文件路徑P’和文件大小L,將文件的文件標(biāo)識符I和已下載數(shù)據(jù)量O_R傳遞到輸入文件接收部分52,接收文件數(shù)據(jù)F(O_R),該數(shù)據(jù)是來自輸入文件接收部分52的一部分或所有文件數(shù)據(jù),以及,保存文件數(shù)據(jù)F(O_R)。
輸入文件接收部分52具有如下功能從輸入文件存儲部分53接收文件的文件標(biāo)識符I和已下載數(shù)據(jù)量O_R,將它們傳遞到中繼設(shè)備10,根據(jù)文件的文件標(biāo)識符I和已下載數(shù)據(jù)量O_R,接收中繼設(shè)備10發(fā)送的文件數(shù)據(jù)F(O_R),并將其傳遞到輸入文件存儲部分53。
在中繼設(shè)備10中,一個HTTP服務(wù)器進(jìn)程被運行,并且一個作為CGI程序或是小服務(wù)程序而被執(zhí)行的中繼設(shè)備程序可以通過一個HTTP的POST方法而被運行,用于一個URL。該URL被預(yù)先告知發(fā)送設(shè)備30和接收設(shè)備50。
此外,在中繼設(shè)備10中運行一個關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS),并且準(zhǔn)備了一個表,用于保存一對文件標(biāo)識符、文件路徑、文件大小和目的IP地址。數(shù)據(jù)庫的這個表被稱作文件表。文件表和實際存儲文件的磁盤區(qū)域可以被配置成文件存儲部分13。
各個部分31-33、11-15、51-53并不一定是獨立部分。它們可以通過一個微處理器和一個對程序進(jìn)行保存的存儲設(shè)備而被實現(xiàn)。
接下來,根據(jù)本實施例的處理過程將參考圖2而被描述。圖2是一個顯示本實施例處理過程概要的流程圖。
首先描述的是發(fā)送設(shè)備30和中繼設(shè)備10之間執(zhí)行的處理。發(fā)送設(shè)備30將代表“始發(fā)文件信息發(fā)送”的字符串、文件標(biāo)識符I、被傳文件的文件大小L以及目的IP地址D存入一個HTTP請求的POST方法的實體主體,同時通過換行將其分離,并且在步驟101,發(fā)送設(shè)備30把它們發(fā)送到中繼設(shè)備10。
在HTTP服務(wù)器運行的中繼設(shè)備程序所實現(xiàn)的文件始發(fā)信息接收部分11中,當(dāng)接收自發(fā)送設(shè)備30的POST方法的實體主體的第一行是代表“始發(fā)文件信息發(fā)送”的字符串時,文件始發(fā)信息接收部分11讀取字符串之后的被傳文件的文件大小L和目的IP地址R,并基于時間信息來為文件產(chǎn)生一個唯一值,在步驟102,將該值指定為文件標(biāo)識符I。
然后,基于文件標(biāo)識符I,文件始發(fā)信息接收部分11確定用于指示文件存儲目的地的文件路徑P,在步驟103中,該部分把文件標(biāo)識符I、文件路徑P、文件大小L以及目的地址R發(fā)送到文件存儲部分13。
在步驟104,文件存儲部分13把這些信息存入文件表。
此外,在步驟105,文件始發(fā)信息接收部分11通過將字符串包含在一個HTTP響應(yīng)的實體主體中而把代表文件標(biāo)識符I的字符串告知發(fā)送設(shè)備30。
當(dāng)發(fā)送設(shè)備30接收到HTTP響應(yīng)的實體主體(其中包含代表文件標(biāo)識符I的字符串)時,發(fā)送設(shè)備30從中讀取文件標(biāo)識符I,并將一個指示“始發(fā)文件發(fā)送”的字符串以及文件標(biāo)識符I存入一個HTTP請求的POST方法的實體主體,同時通過換行將其分離,該設(shè)備還保存對應(yīng)于文件標(biāo)識符I的文件數(shù)據(jù)的二進(jìn)制序列,并且在步驟106,開始將其發(fā)送到中繼設(shè)備30。
發(fā)送設(shè)備30中的處理按以下方式執(zhí)行。首先,發(fā)送設(shè)備30的文件始發(fā)信息發(fā)送部分31接收HTTP響應(yīng)的實體主體,其中包含文件標(biāo)識符I,并且,文件始發(fā)信息發(fā)送部分31讀取文件標(biāo)識符I,并將文件標(biāo)識符I傳遞到始發(fā)文件存儲部分33。始發(fā)文件存儲部分33根據(jù)文件標(biāo)識符I來讀取文件數(shù)據(jù)F(x),并將文件標(biāo)識符I與文件數(shù)據(jù)傳遞到始發(fā)文件發(fā)送部分32。始發(fā)文件發(fā)送部分32存儲一個代表“始發(fā)文件發(fā)送”的字符串以及文件標(biāo)識符I,同時通過換行將其分離,此后,該部分把文件數(shù)據(jù)的二進(jìn)制序列存入HTTP請求的POST方法的實體主體,并開始將數(shù)據(jù)發(fā)送到中繼設(shè)備10。
在由HTTP服務(wù)器運行的中繼設(shè)備程序所實現(xiàn)的中繼設(shè)備10中,當(dāng)POST方法的實體主體的第一行是一個代表“始發(fā)信息發(fā)送”的字符串時,始發(fā)文件接收部分12讀取該字符串之后的文件標(biāo)識符I,并且從文件存儲部分13中保存的文件表獲取一個文件路徑P,該路徑通過與文件標(biāo)識符關(guān)聯(lián)而被保存。此外,始發(fā)文件接收部分12讀取保存在實體主體中的文件標(biāo)識符之后的文件數(shù)據(jù),并且在步驟107,該部分開始將文件數(shù)據(jù)存入文件存儲部分13的一個區(qū)域,該區(qū)域由文件路徑P指定。同樣,文件數(shù)據(jù)繼續(xù)被保存,直到在步驟108中,所有文件數(shù)據(jù)都被存入文件存儲部分13。
當(dāng)所有文件數(shù)據(jù)都被存入文件存儲部分13的時候,在步驟119和120,中繼設(shè)備10將數(shù)據(jù)存儲的完成告知發(fā)送設(shè)備30。根據(jù)該通知,發(fā)送設(shè)備30結(jié)束文件傳送處理。
接下來將對接收設(shè)備50和中繼設(shè)備10之間執(zhí)行的處理進(jìn)行描述。
接收設(shè)備50將一個表示“輸入文件信息請求”的字符串存入一個HTTP請求的POST方法的實體主體,在步驟109,該設(shè)備使用先前作為發(fā)送目的地給出的一個URL而把HTTP請求發(fā)送到中繼設(shè)備10。
在由HTTP服務(wù)器運行的中繼設(shè)備程序所實現(xiàn)的中繼設(shè)備10中,當(dāng)接收設(shè)備50發(fā)送的POST方法的實體主體的第一行是一個表示“輸入文件信息請求”的字符串時,文件輸入信息發(fā)送部分14獲取通過HTTP告知的HTTP客戶的一個IP地址R,在步驟110,文件輸入信息發(fā)送部分14在文件存儲部分13的文件表中搜索與IP地址R相互對應(yīng)而被保存的一對文件標(biāo)識符I和文件大小L,在步驟111,該部分獲取這些數(shù)據(jù)。然后,文件輸入信息發(fā)送部分14將該對文件標(biāo)識符I和文件大小L存入一個用于接收設(shè)備50的HTTP響應(yīng)的實體主體,同時通過換行將二者分離,并且在步驟112中把該HTTP響應(yīng)返回給接收設(shè)備50。
接收設(shè)備50從HTTP響應(yīng)的實體主體中讀取該對文件標(biāo)識符I和文件大小L,確定一個文件路徑P’,該路徑與文件標(biāo)識符I關(guān)聯(lián)而且是文件存儲目的地,在步驟113,接收設(shè)備還存儲包含文件標(biāo)識符I、文件大小L以及文件路徑P’的文件信息。舉例來說,文件信息可以被存儲為一種陣列結(jié)構(gòu),而這些信息則作為其中的元素。此外,文件信息可以包括該文件的已接收數(shù)據(jù)量O_R(第一次大約為0)。
接下來,接收設(shè)備50將一個代表“輸入文件請求”的字符串、文件標(biāo)識符I、已接收數(shù)據(jù)量O_R(第一次大約為O)存入POST方法的實體主體,同時通過換行將這些字符串分離,并且,在步驟114,接收設(shè)備50把該POST方法發(fā)送到中繼設(shè)備10。
接下來,當(dāng)POST方法的實體主體的第一行是一個代表“輸入文件請求”的字符串時,由HTTP服務(wù)器運行的中繼設(shè)備程序所實現(xiàn)的中繼設(shè)備10讀取該字符串之后文件標(biāo)識符I和已接收數(shù)據(jù)量O_R,并從文件存儲部分13的文件表中獲取與文件標(biāo)識符I結(jié)合而被保存的文件路徑P,在步驟116中,中繼設(shè)備10讀取與文件路徑P對應(yīng)的文件中已被接收數(shù)據(jù)量O_R的那些數(shù)據(jù)之后的文件數(shù)據(jù),在步驟117,該設(shè)備把文件數(shù)據(jù)存入一個HTTP響應(yīng)的實體主體,并將該HTTP響應(yīng)返回到接收設(shè)備50。
接收HTTP響應(yīng)的接收設(shè)備50從所存儲的文件信息中獲取文件的文件路徑P’,并且在步驟118中,將HTTP響應(yīng)的實體主體的內(nèi)容添加到已被存入文件路徑P’的文件數(shù)據(jù)中,其中,該內(nèi)容是文件中已接收數(shù)據(jù)量O_R之后的文件數(shù)據(jù)。
從步驟114到步驟118的過程被重復(fù),直到已接收數(shù)據(jù)量O_R達(dá)到文件大小L(L1)為止。
如果接收設(shè)備50的接收速度超過了發(fā)送設(shè)備30的發(fā)送速度,并且在發(fā)送設(shè)備30完成發(fā)送所有數(shù)據(jù)之前,接收設(shè)備50完成了對中繼設(shè)備10中所存數(shù)據(jù)的接收,那么接收設(shè)備50重復(fù)請求中繼設(shè)備發(fā)送剩余數(shù)據(jù),直到已接收數(shù)據(jù)量O_R達(dá)到文件大小L為止,在步驟S114中為L1。
盡管在上述描述中,文件被傳送到一個接收設(shè)備的情況已經(jīng)作為實例而被描述,但是本發(fā)明還可應(yīng)用于文件被傳送到多個接收設(shè)備的情況(多點傳送)。在這種情況下,可以從發(fā)送設(shè)備30把包含多個接收設(shè)備地址R1-RN的目的地址組D,而不是目的地址R發(fā)送到中繼設(shè)備10。中繼設(shè)備10可以將地址R1-RN中的每一個都存入文件表,同時將其與文件標(biāo)識符I、文件路徑P以及文件大小L相關(guān)聯(lián)。
下文中將對本發(fā)明的第二實施例進(jìn)行描述。該實施例與第一實施例的不同之處在于,文件從發(fā)送設(shè)備經(jīng)由多個中繼設(shè)備而被發(fā)送到接收設(shè)備。
在這個實施例中,發(fā)送設(shè)備30、接收設(shè)備50以及中繼設(shè)備10’與第一實施例的發(fā)送設(shè)備30、接收設(shè)備50以及中繼設(shè)備10基本相同。第二實施例與第一實施例的不同之處在于,在發(fā)送設(shè)備和接收設(shè)備之間提供了多個中繼設(shè)備,每個中繼設(shè)備都具有一個傳送目的地確定部分16,其中包含一個數(shù)據(jù)庫表格,用于保存一對信息,即IP地址的網(wǎng)絡(luò)部分和傳送目的地中繼設(shè)備的URL。這個表被稱為“路由選擇表”。當(dāng)一個應(yīng)該輸入IP地址網(wǎng)絡(luò)部分的字段中保存的是“缺省”時,該“缺省”表示的是一個不對應(yīng)于路由選擇表中任何其它行的地址。當(dāng)應(yīng)該輸入傳送目的地中繼設(shè)備URL的字段中保存的是“本地”的時候,這意味著無需將數(shù)據(jù)發(fā)送到其它中繼設(shè)備。
圖3是一個顯示本實施例的文件傳送系統(tǒng)整體結(jié)構(gòu)的示意性框圖。
發(fā)送設(shè)備30和接收設(shè)備50經(jīng)由按此順序的中繼設(shè)備10’A、10’B、10’C而被連接,以便發(fā)送數(shù)據(jù)。對中繼設(shè)備10’A、10’B、10’C來說,由于結(jié)構(gòu)相同,因此將把中繼設(shè)備10’A作為代表來加以描述。
在這個應(yīng)用的圖中,具有相同數(shù)字的部分具有相同名稱,其中A、B、或C被添加到某些部分的數(shù)字中。舉例來說,11、11A、11B和11C中每一個指示的都是一個名為文件始發(fā)信息接收部分的部分。
中繼設(shè)備10’A包括一個文件始發(fā)信息接收部分11A、一個始發(fā)文件接收部分12A、一個文件存儲部分13A、一個文件始發(fā)輸入信息發(fā)送部分14A和一個始發(fā)文件發(fā)送部分15A。這些部分等同于第一實施例的中繼設(shè)備10的相應(yīng)部分。此外,中繼設(shè)備10’A包括一個傳送目的地確定部分16A、一個文件中繼信息發(fā)送部分17A、一個中繼文件發(fā)送部分18A、一個文件中繼信息接收部分19A以及一個中繼文件接收部分20A。
傳送目的地確定部分16A包括一個路由選擇表,用于保存一對信息,即IP地址的網(wǎng)絡(luò)部分和傳送目的地中繼設(shè)備的URL,并且具有從文件中繼信息發(fā)送部分17A接收目的地址,并將對應(yīng)于目的地址的傳送目的地中繼設(shè)備的URL返回給文件中繼信息發(fā)送部分17A的功能。
文件中繼信息發(fā)送部分17A具有如下功能從文件存儲部分13A接收文件標(biāo)識符I、文件大小L以及目的地址R,將目的地址R傳遞到傳送目的地確定部分,接收對應(yīng)于目的地址R的傳送目的地中繼設(shè)備的URL,以及將文件中繼信息發(fā)送到該URL。
中繼文件發(fā)送部分18A具有如下功能從下一階段的中繼設(shè)備接收文件標(biāo)識符I和已接收數(shù)據(jù)量(在中繼設(shè)備10’A中用O_M表示),將文件標(biāo)識符I和已接收數(shù)據(jù)量傳遞到文件存儲部分13A,接收文件存儲部分13A發(fā)送的文件數(shù)據(jù)F(O_M),以及將文件數(shù)據(jù)發(fā)送到下一階段的中繼設(shè)備。
文件中繼信息接收部分19A具有如下功能從前一階段中繼設(shè)備接收文件中繼信息,基于該信息中的文件標(biāo)識符,產(chǎn)生一個文件路徑PA,以及將文件路徑PA與文件中繼信息傳遞到文件存儲部分13A。
中繼文件接收部分20A具有如下功能接收前一階段中繼設(shè)備發(fā)送的文件數(shù)據(jù),將文件數(shù)據(jù)傳遞到文件存儲部分13A,以及,從文件存儲部分接收文件標(biāo)識符和前一階段中繼設(shè)備的已接收數(shù)據(jù)量,并將它們傳遞到前一階段的中繼設(shè)備。
接下來將要參考圖4對本實施例的處理過程進(jìn)行描述。圖4是一個顯示本實施例處理過程概要的流程圖。
在步驟201-204中,發(fā)送設(shè)備10采用與第一實施例相同的方法,把一個待傳文件的文件大小和目的IP地址告知最接近的中繼設(shè)備10’A。
基于中繼設(shè)備10’A的時間信息和IP地址P,中繼設(shè)備10’A把一個唯一值作為文件標(biāo)識符I分配給該文件。然后,中繼設(shè)備10’A采用與第一實施例相同的方式,將文件標(biāo)識符I、文件大小L以及目的IP地址R記錄到文件存儲部分13A中,在步驟204中,該設(shè)備把文件標(biāo)識符I通知給發(fā)送設(shè)備30。
此外,中繼設(shè)備10’A在路由選擇表16A的網(wǎng)絡(luò)部分檢查目的IP地址R。當(dāng)存在一個匹配時,在步驟205,中繼設(shè)備10’A得到相應(yīng)的傳送目的地中繼設(shè)備10’B的URL“M”。
接著,在步驟206中,中繼設(shè)備10’A把中繼文件信息發(fā)送到URL“M”,其中,中繼文件信息包括經(jīng)由中繼設(shè)備10’B傳遞的,代表“中繼文件信息發(fā)送”的字符串,以及文件標(biāo)識符I、文件大小L和目的IP地址R,并且通過換行將其分離,并且,將其存入一個HTTP請求的POST方法的實體主體。
在接收到HTTP請求的POST方法的中繼設(shè)備10’B中,當(dāng)POST方法的實體主體的第一行是一個表示“中繼文件信息發(fā)送”的字符串時,由HTTP服務(wù)器運行的中繼設(shè)備程序讀取該字符串之后的文件標(biāo)識符I、文件大小L以及目的IP地址R。此外,中繼設(shè)備10’B基于文件標(biāo)識符來確定保存文件的文件路徑PB,并把文件標(biāo)識符I、文件路徑PB、文件大小L以及目的地址R存入文件存儲部分13B(更準(zhǔn)確地說是存入文件表)。此外,中繼設(shè)備10’B在路由選擇表16A的網(wǎng)絡(luò)部分檢查目的IP地址R。當(dāng)存在一個匹配時,在步驟207,中繼設(shè)備10’B獲取相應(yīng)的傳送目的地中繼設(shè)備10’C的URL“N”。
接著,在步驟208,中繼設(shè)備10’B將中繼文件信息發(fā)送到URL“N”,其中,中繼文件信息包括經(jīng)由中繼設(shè)備10’B傳送的,代表“中繼文件信息”的字符串、文件標(biāo)識符I、文件大小L和目的IP地址R,它們通過換行而被分離,并被存入HTTP請求的POST方法的實體主體中。
這樣,文件信息最終到達(dá)最接近接收設(shè)備50、并且管理目的地址R的中繼設(shè)備。
另一方面,發(fā)送設(shè)備30開始把文件的內(nèi)容數(shù)據(jù)(以后將被稱作″文件數(shù)據(jù)″)發(fā)送到最接近的中繼設(shè)備10’A,同時在步驟209中,發(fā)送設(shè)備30采用等同于第一實施例的方法來建立與文件標(biāo)識符I的關(guān)聯(lián)。
中繼設(shè)備10’A讀取被傳文件數(shù)據(jù),并且開始把文件數(shù)據(jù)存入文件存儲部分13A的一個區(qū)域,該區(qū)域由文件路徑PA指定。文件數(shù)據(jù)的存儲被重復(fù),直到所有文件數(shù)據(jù)都被存入文件存儲部分13A為止。當(dāng)所有文件數(shù)據(jù)都被存入文件存儲部分13A的時候,在步驟211,中繼設(shè)備10’A把數(shù)據(jù)存儲的完成告知發(fā)送設(shè)備30。發(fā)送設(shè)備30根據(jù)該通知結(jié)束文件傳送處理。
當(dāng)與最接近的中繼設(shè)備不同的中繼設(shè)備10’B和10’C接收“中繼文件信息”的時候,每個中繼設(shè)備都保存“中繼文件請求”、文件標(biāo)識符I、已接收數(shù)據(jù)量O_M或O_N(第一次為0),這些數(shù)據(jù)通過換行而被分離,在步驟212和213,中繼設(shè)備把這些數(shù)據(jù)分別發(fā)送到前一階段的中繼設(shè)備10’A、10’B。
當(dāng)POST方法的實體主體的第一行是一個代表“中繼文件請求”的字符串時,響應(yīng)于上述中繼文件請求,由HTTP服務(wù)器運行的前一階段中繼設(shè)備10’A或10’B的中繼設(shè)備程序讀取字符串之后的文件標(biāo)識符I和已接收數(shù)據(jù)量O_M或O_N,并從文件存儲部分13A或13B的文件表中獲取與文件標(biāo)識符I關(guān)聯(lián)的文件路徑PA或PB,在步驟214和215,該程序把跟隨在已接收數(shù)據(jù)量O_M或O_N的文件路徑PA或PB的文件數(shù)據(jù)之后的文件數(shù)據(jù)存入一個HTTP響應(yīng)的實體主體,并在步驟216和217中將其發(fā)送到下一階段的中繼設(shè)備10’B或10’C。
當(dāng)接收到前一階段保存的文件數(shù)據(jù)時,與最接近發(fā)送設(shè)備30的中繼設(shè)備10’A不同的中繼設(shè)備10’B和10’C中的每一個都對保留在中繼設(shè)備中的文件數(shù)據(jù)發(fā)出請求。響應(yīng)于此,中繼設(shè)備10’A和10’B中每一個都響應(yīng)該請求而分別向中繼設(shè)備10’B和10’C發(fā)送文件數(shù)據(jù)(L2,L3)。這個處理被重復(fù),直到已接收數(shù)據(jù)量O_M、O_N達(dá)到文件中繼信息報告的文件大小L。
在步驟218,接收設(shè)備50向最接近的中繼設(shè)備10’C查詢涉及目的地址R的新近到達(dá)的文件信息。響應(yīng)于此查詢,在步驟219中,中繼設(shè)備10’C把文件標(biāo)識符I和文件大小L發(fā)送到接收設(shè)備50。在步驟220,接收設(shè)備50保存文件標(biāo)識符I和文件大小L作為文件信息。此外,在步驟221,接收設(shè)備50向中繼設(shè)備10’C請求傳送文件數(shù)據(jù),該數(shù)據(jù)與文件標(biāo)識符I關(guān)聯(lián),并被存入中繼設(shè)備10’C。響應(yīng)于該請求,在步驟222中,中繼設(shè)備10’C把文件數(shù)據(jù)發(fā)送到接收設(shè)備50。
如果,即使在接收設(shè)備50完成對中繼設(shè)備10’C所存數(shù)據(jù)的接收時,已接收數(shù)據(jù)量O_R仍未達(dá)到文件大小L,那么接收設(shè)備50將重復(fù)向最接近的中繼設(shè)備10’C請求剩余文件數(shù)據(jù),直到已接收數(shù)據(jù)量O_R達(dá)到文件大小L(L1)為止。
盡管在上述描述中,文件被傳送到一個接收設(shè)備的情況已作為實例而被描述,但是本發(fā)明還可應(yīng)用于將文件傳送到多個接收設(shè)備的情況(多點傳送)。在這種情況下,可以從發(fā)送設(shè)備30把包含多個接收設(shè)備地址R1-RN的目的地址組D,而不是目的地址R發(fā)送到中繼設(shè)備10’。通過將地址R1-RN中的每一個與文件標(biāo)識符I、文件路徑P以及文件大小L關(guān)聯(lián),中繼設(shè)備10’可以將其保存在文件表中。
根據(jù)本實施例的文件傳送系統(tǒng),在發(fā)送設(shè)備和接收設(shè)備之間可以提供多個中繼設(shè)備。就網(wǎng)絡(luò)路由而言,即使在發(fā)送設(shè)備和接收設(shè)備相互遠(yuǎn)離的時候,發(fā)送設(shè)備也可以向最接近該發(fā)送設(shè)備的中繼設(shè)備發(fā)送一個文件,接收設(shè)備也可以從最接近該接收設(shè)備的中繼設(shè)備接收一個文件。這樣,發(fā)送和接收所需要的時間可以被減少。
接下來將對第三實施例進(jìn)行描述。
圖5是一個顯示本實施例的文件傳送系統(tǒng)整體結(jié)構(gòu)的示意性框圖。在第三實施例中,發(fā)送設(shè)備30、接收設(shè)備50和中繼設(shè)備10″基本上等同于第一實施例的發(fā)送設(shè)備30、接收設(shè)備50以及中繼設(shè)備10。下列方面與第一實施例不同。更確切的說,在這個實施例中,中繼設(shè)備10″的文件存儲部分13’的文件表中添加了一個記錄文件發(fā)送中止的字段(該字段將被稱作“發(fā)送中止字段”),其中,當(dāng)發(fā)送設(shè)備30中止發(fā)送文件時,代表發(fā)送狀態(tài)的數(shù)據(jù)將被記錄在“發(fā)送中止字段”中,舉例來說,一個代表“真”的值或字符串被記錄。當(dāng)沒有中止文件發(fā)送時,代表“假”的值或字符串被記錄。此外,中繼設(shè)備10″包括一個已接收數(shù)據(jù)量響應(yīng)部分21,用于將上載數(shù)據(jù)量發(fā)送到發(fā)送設(shè)備30,其中,上載數(shù)據(jù)量是所傳文件數(shù)據(jù)中已從發(fā)送設(shè)備發(fā)送到中繼設(shè)備的文件數(shù)據(jù)的數(shù)據(jù)量。
接下來參考圖6對本實施例的處理過程進(jìn)行描述。圖6是一個顯示本實施例的處理過程概要的流程圖。
在這個實施例中,圖6中用對角陰影區(qū)域指示的處理PR等同于圖2中虛線矩形所包圍的第一實施例的相應(yīng)處理。在這個處理中,發(fā)送設(shè)備30將始發(fā)文件信息發(fā)送告知中繼設(shè)備10″。響應(yīng)于此,文件標(biāo)識符被從中繼設(shè)備10″發(fā)送到發(fā)送設(shè)備30。此外,接收設(shè)備50將輸入文件信息請求發(fā)送到中繼設(shè)備10″。響應(yīng)于該請求,中繼設(shè)備10″將文件標(biāo)識符和文件大小作為輸入文件信息發(fā)送到接收設(shè)備50。接收設(shè)備50將其作為文件信息加以保存。
在步驟301,當(dāng)發(fā)送設(shè)備中止文件發(fā)送時,在步驟302、303中,一個代表“真”的值被記錄在發(fā)送中止?fàn)顟B(tài)的字段中,該數(shù)值指示的是發(fā)送中止?fàn)顟B(tài)。
在步驟304,由HTTP服務(wù)器運行的中繼設(shè)備程序所實現(xiàn)的中繼設(shè)備10″從接收設(shè)備50接收一個輸入文件信息請求(HTTP請求的POST方法)。當(dāng)該實體主體的第一行是一個代表“輸入文件請求”的字符串時,在步驟305,中繼設(shè)備10″讀取該實體主體中保存的文件標(biāo)識符I和已接收數(shù)據(jù)量O_R。此外,在步驟306,中繼設(shè)備10″從文件存儲部分13的文件表中獲取與文件標(biāo)識符I一起保存的發(fā)送狀態(tài)Z和文件路徑P,其中文件標(biāo)識符I與發(fā)送狀態(tài)Z和文件路徑P關(guān)聯(lián)。然后,中繼設(shè)備10″把發(fā)送中止?fàn)顟B(tài)存入一個HTTP響應(yīng)的實體主體,并且在步驟307,該設(shè)備把該HTTP響應(yīng)發(fā)送到接收設(shè)備50。
上述處理被重復(fù),直到已接收數(shù)據(jù)量O_R達(dá)到文件大小L(L4)為止。
在步驟308,接收HTTP響應(yīng)的接收設(shè)備50記錄文件信息,并從實體主體的第一行讀取發(fā)送中止?fàn)顟B(tài)的值Z。當(dāng)該值為“真”時,中止接收文件。當(dāng)該值為“假”時,在步驟316,接收設(shè)備50進(jìn)一步將輸入文件請求發(fā)送到中繼設(shè)備10″。當(dāng)POST方法的實體主體的第一行是一個代表“輸入文件請求”的字符串時,中繼設(shè)備10″讀取該字符串之后存儲的文件標(biāo)識符I和已接收數(shù)據(jù)量O_R,并且在步驟317,該設(shè)備從文件存儲部分13的文件表中讀取與文件標(biāo)識符I關(guān)聯(lián)的文件路徑P。此外,在步驟318,中繼設(shè)備10″讀取文件已接收數(shù)據(jù)量之后的文件數(shù)據(jù),該文件對應(yīng)于文件存儲部分13’的文件路徑P,并且,該設(shè)備將文件數(shù)據(jù)存入一個HTTP響應(yīng)的實體主體,在步驟319中,中繼設(shè)備10″將HTTP響應(yīng)返回到接收設(shè)備50。
接收設(shè)備50接收到HTTP響應(yīng),它從所存儲的文件信息中獲取該文件的文件路徑P’,并且在步驟320,通過將HTTP響應(yīng)的實體主體內(nèi)容添加到在文件路徑P’已經(jīng)保存的文件數(shù)據(jù)中,從而將該內(nèi)容保存為后續(xù)數(shù)據(jù),其中該內(nèi)容是已接收數(shù)據(jù)量O_R之后的文件數(shù)據(jù)F(O_R)。
上述處理被重復(fù),直到已接收數(shù)據(jù)量達(dá)到文件大小L(L5)。
當(dāng)恢復(fù)文件發(fā)送時,發(fā)送設(shè)備30將代表已存儲數(shù)據(jù)量O_S的字符串以及文件標(biāo)識符I存入一個HTTP請求的POST方法的實體主體,并且通過換行將字符串分離,在步驟309,該設(shè)備將HTTP請求發(fā)送到中繼設(shè)備10″。
當(dāng)POST方法的實體主體的第一行是一個代表“已存儲數(shù)據(jù)量”的字符串時,在步驟310,由HTTP服務(wù)器運行的中繼設(shè)備程序所實現(xiàn)的中繼設(shè)備10″讀取隨后的文件標(biāo)識符I,在步驟311,該設(shè)備從文件表獲取與文件標(biāo)識符記錄在一起的文件路徑P,該文件標(biāo)識符與文件路徑P關(guān)聯(lián)。然后,中繼設(shè)備10″將保存在文件路徑P中的數(shù)據(jù)量存入HTTP響應(yīng)的實體主體,并在步驟312中將該HTTP響應(yīng)返回到發(fā)送設(shè)備30。
發(fā)送設(shè)備30從來自中繼設(shè)備10″的HTTP響應(yīng)的實體主體中讀取已存儲數(shù)據(jù)量O_S,并把代表“始發(fā)文件”的字符串以及文件標(biāo)識符I存入一個HTTP請求的POST方法的實體主體,同時通過換行將字符串分離。此后,發(fā)送設(shè)備30將文件數(shù)據(jù)中“已存儲數(shù)據(jù)量”的數(shù)據(jù)之后的文件數(shù)據(jù)F(O_S)(例如二進(jìn)制序列)存入該實體主體,在步驟313,該設(shè)備開始將數(shù)據(jù)發(fā)送到中繼設(shè)備10″。
當(dāng)POST方法的實體主體的第一行是一個代表“始發(fā)文件”的字符串時,中繼設(shè)備10″讀取文件標(biāo)識符,獲取與文件標(biāo)識符一起記錄的文件路徑,其中,文件標(biāo)識符與文件路徑關(guān)聯(lián),該設(shè)備還讀取實體主體中保存的文件數(shù)據(jù),并在步驟314中開始保存文件數(shù)據(jù),以使文件數(shù)據(jù)跟隨文件路徑中已保存數(shù)據(jù)的末端。此外,在步驟315,中繼設(shè)備10″將發(fā)送中止?fàn)顟B(tài)的值Z改成“假”。
當(dāng)所有文件數(shù)據(jù)都被存入文件存儲部分13的時候,即,當(dāng)上載文件數(shù)據(jù)O_S達(dá)到文件大小L的時候,在步驟321和322,中繼設(shè)備10″把數(shù)據(jù)存儲的完成告知發(fā)送設(shè)備30。響應(yīng)于該通知,發(fā)送設(shè)備30結(jié)束文件傳送處理。
盡管在上述描述中,文件被傳送到一個接收設(shè)備的情況已作為實例而被描述,但是本發(fā)明還可應(yīng)用于把文件傳送到多個接收設(shè)備的情況(多點傳送)。在這種情況下,可以從發(fā)送設(shè)備30把包含多個接收設(shè)備地址R1-RN的目的地址組D,而不是目的地址R發(fā)送到中繼設(shè)備10″。通過將地址R1-RN中的每一個都與文件標(biāo)識符I、文件路徑P以及文件大小L相關(guān)聯(lián),中繼設(shè)備10″將其存入文件表中。
根據(jù)該文件傳送系統(tǒng),由于中繼設(shè)備具有一個存儲文件發(fā)送狀態(tài)和將該發(fā)送狀態(tài)發(fā)送到接收設(shè)備的部分,因此,當(dāng)發(fā)送設(shè)備在某個中間點中止發(fā)送的時候,執(zhí)行與發(fā)送設(shè)備操作同時發(fā)生的接收操作的接收設(shè)備可以識別到發(fā)送的中止,這樣,即使已接收數(shù)據(jù)量仍未達(dá)到該文件大小,接收設(shè)備也可以中止接收操作。此外,由于中繼設(shè)備包括一個部分,該部分響應(yīng)發(fā)送設(shè)備的查詢而發(fā)送已存儲數(shù)據(jù)量,因此發(fā)送設(shè)備可以從剩余文件數(shù)據(jù)的開頭恢復(fù)文件發(fā)送。另外,由于接收設(shè)備包括一個部分,該部分把已接收數(shù)據(jù)量告知中繼設(shè)備,并從中繼設(shè)備接收后續(xù)數(shù)據(jù),因此接收設(shè)備可以從剩余文件數(shù)據(jù)的開頭恢復(fù)文件的接收。
以下將描述本發(fā)明的第四實施例。
圖7所示的實施例,其發(fā)送設(shè)備、接收設(shè)備以及中繼設(shè)備具有第二實施例包含的發(fā)送設(shè)備、接收設(shè)備以及中繼設(shè)備的所有特征。不同之處在于,中繼設(shè)備10A、10B、10C包含上述第三實施例中描述的接收數(shù)據(jù)量響應(yīng)部分21(21A,21C)。
接下來,本實施例的處理過程將參考圖8而被描述。圖8是一個顯示本實施例的處理過程概要的流程圖。
在步驟401,發(fā)送設(shè)備30采用等同于第一實施例的方法而把被傳文件的文件大小和目的IP地址告知最接近發(fā)送設(shè)備的中繼設(shè)備10A。
在步驟402,基于中繼設(shè)備10A的時間信息和IP地址R,中繼設(shè)備10A為文件分配一個唯一值,用作文件標(biāo)識符。然后,在步驟403,中繼設(shè)備10A采用與第一實施例相同的方式,將文件標(biāo)識符I、文件大小L以及目的IP地址R記錄到文件存儲部分13’A中,并且在步驟404中,該設(shè)備把文件標(biāo)識符I通知給發(fā)送設(shè)備30。
此外,中繼設(shè)備10A在傳送目的地確定部分的網(wǎng)絡(luò)部分(路由選擇表)16A中檢查目的IP地址R。當(dāng)存在一個匹配時,在步驟405,中繼設(shè)備10A獲取相應(yīng)的傳送目的地中繼設(shè)備10B的URL“M”。
接著,在步驟406,中繼設(shè)備10A把中繼文件信息發(fā)送到URL“M”,其中,中繼文件信息包含經(jīng)由中繼設(shè)備10B傳遞的,代表“中繼文件信息發(fā)送”的字符串,文件標(biāo)識符I、文件大小L和目的IP地址R,它們通過換行而被分離,并被保存在一個HTTP請求的POST方法的實體主體中。
在接收HTTP請求的POST方法的中繼設(shè)備10B中,當(dāng)POST方法的實體主體的第一行是一個表示“中繼文件信息發(fā)送”的字符串時,HTTP服務(wù)器所運行的中繼設(shè)備程序讀取該字符串之后的文件標(biāo)識符I、文件大小L以及目的IP地址R。此外,中繼設(shè)備10B基于文件標(biāo)識符來確定保存文件的文件路徑PB,并將文件標(biāo)識符I、文件路徑PB、文件大小L以及目的地址R存入文件存儲部分13’B(更為具體地說是存入文件表)。此外,中繼設(shè)備10B在傳送目的地確定部分的網(wǎng)絡(luò)部分(路由選擇表)16B檢查目的IP地址R。當(dāng)存在一個匹配時,中繼設(shè)備10B獲取相應(yīng)的傳送目的地中繼設(shè)備10C的URL“N”。
接著,在步驟407,中繼設(shè)備10B把中繼文件信息發(fā)送到URL“N”,其中,中繼文件信息包含經(jīng)過中繼設(shè)備10C而被傳遞的,代表“中繼文件信息發(fā)送”的字符串,文件標(biāo)識符I、文件大小L和目的IP地址R,它們通過換行而被分離,并被存入HTTP請求的POST方法的一個實體主體。
這樣,文件信息最終到達(dá)中繼設(shè)備10C,該設(shè)備最接近接收設(shè)備50,并且管理目的地址R。
另一方面,發(fā)送設(shè)備30將一個代表“始發(fā)文件發(fā)送”的字符串,文件標(biāo)識符I和文件內(nèi)容數(shù)據(jù)存入POST方法的一個實體主體,在步驟408,該設(shè)備開始將其發(fā)送到最接近的中繼設(shè)備10A。
當(dāng)POST方法的實體主體的第一行是一個代表“始發(fā)文件發(fā)送”的字符串時,中繼設(shè)備10A讀取后面的文件標(biāo)識符I,對路由選擇表進(jìn)行搜索,并且判斷是否有必要傳送文件。在有必要傳送的時候,中繼設(shè)備10A獲取文件應(yīng)被傳送到的下一階段中繼設(shè)備的URL,并將一個代表“中繼文件到達(dá)”的字符串和文件標(biāo)識符I存入一個HTTP請求的POST方法的實體主體,同時通過換行將其分離,在步驟409,該設(shè)備向下一階段中繼設(shè)備10B發(fā)送HTTP請求。
中繼設(shè)備10A讀取被傳文件數(shù)據(jù),并且開始將文件數(shù)據(jù)存入文件存儲部分13’A的一個區(qū)域,該區(qū)域由文件路徑PA指定。文件數(shù)據(jù)的存儲被重復(fù),直到已接收數(shù)據(jù)量O_S達(dá)到文件存儲部分13’A中的文件大小L。當(dāng)所有文件數(shù)據(jù)都被存入文件存儲部分13’A的時候,在步驟499,中繼設(shè)備10A把數(shù)據(jù)存儲的完成告知發(fā)送設(shè)備30。響應(yīng)于此通知,發(fā)送設(shè)備30結(jié)束文件傳送的處理。
當(dāng)中繼設(shè)備10B接收一個HTTP請求,其中含有代表“中繼文件到達(dá)”的字符串時,中繼設(shè)備10B把代表“中繼文件到達(dá)”的字符串以及文件標(biāo)識符I存入一個HTTP請求的POST方法的實體主體,同時通過換行將其分離,并且在步驟410,該設(shè)備把HTTP請求發(fā)送到下一階段的中繼設(shè)備10C。
當(dāng)中繼設(shè)備10B和10C接收一個含有“中繼文件到達(dá)”的請求時,每個中繼設(shè)備都把代表“中繼文件請求”的字符串,文件標(biāo)識符I、已接收數(shù)據(jù)量O_M或O_N(第一次為0)存入POST方法的實體主體,同時通過換行將其分離,在步驟411和412,該設(shè)備將其發(fā)送到前一階段的中繼設(shè)備10A或10B。在上述第二實施例中,當(dāng)中繼設(shè)備10B和10C接收“中繼文件信息”的時候,每一中繼設(shè)備都把代表“中繼文件請求”的字符串,文件標(biāo)識符I、已接收數(shù)據(jù)量(第一次為0)存入POST方法的實體主體,同時通過換行將其分離,并將數(shù)據(jù)發(fā)送到前一階段的中繼設(shè)備。相反,根據(jù)第四實施例,在接收中繼文件信息的時候,“中繼文件請求”不被執(zhí)行,取而代之的是,“中繼文件請求”在“中繼文件到達(dá)”的通知之后才被執(zhí)行。
響應(yīng)于接收文件請求,當(dāng)POST方法的實體主體的第一行是一個代表“中繼文件請求”的字符串時,前一階段每個中繼設(shè)備10A和1OB的中繼設(shè)備程序都讀取該字符串之后的文件標(biāo)識符I和已接收數(shù)據(jù)量O_M或O_N,并從文件存儲部分13A或13B的文件表中獲取與文件標(biāo)識符I關(guān)聯(lián)的文件路徑PA或PB,將已接收數(shù)據(jù)量O_M或O_N的文件路徑PA或PB的文件數(shù)據(jù)之后的數(shù)據(jù)以及一個指示發(fā)送中止?fàn)顟B(tài)的值Z存入一個HTTP響應(yīng)的一個實體主體,并且在步驟413和414,該程序把HTTP響應(yīng)發(fā)送到下一階段的中繼設(shè)備10B或10C。
當(dāng)代表發(fā)送中止?fàn)顟B(tài)的值Z為“真”時,接收HTTP響應(yīng)的中繼設(shè)備10B和10C中的每一個都中止接收文件數(shù)據(jù)。當(dāng)代表發(fā)送中止?fàn)顟B(tài)的值Z為“假”時,中繼設(shè)備10B和10C中每一個都獲取文件存儲部分13’B或13’C保存的文件的文件路徑PB或PC,并將HTTP響應(yīng)的實體主體中的后續(xù)內(nèi)容(文件數(shù)據(jù)的剩余內(nèi)容)添加到文件路徑中已保存的數(shù)據(jù)之中。
在各個中繼設(shè)備10B和10C中,中繼文件請求和對應(yīng)文件的發(fā)送被重復(fù)(L6,7),直到已接收數(shù)據(jù)量O_M或O_N達(dá)到中繼信息預(yù)先通知的文件大小L,或是代表始發(fā)中止?fàn)顟B(tài)的值Z變?yōu)椤罢妗睘橹埂?br> 與第一實施例中的方式相同,在步驟416,接收設(shè)備50向最接近的中繼設(shè)備10C查詢針對目的地址R的新到達(dá)的文件信息。響應(yīng)于該查詢,在步驟417,中繼設(shè)備10C把文件標(biāo)識符I和文件大小L發(fā)送到接收設(shè)備50。
接收設(shè)備50獲取文件路徑,該路徑是通過關(guān)聯(lián)文件標(biāo)識符I而被記錄的,同時該設(shè)備還獲取對應(yīng)于文件路徑的已接收數(shù)據(jù)量O_R,并將代表“輸入文件請求”的字符串,文件標(biāo)識符I和已接收數(shù)據(jù)量O_R(第一次為0)存入POST方法的一個實體主體,同時通過換行將其分離,在步驟419,接收設(shè)備50設(shè)備將該實體主體發(fā)送到中繼設(shè)備10C。
響應(yīng)于輸入文件請求,當(dāng)接收到的POST方法的實體主體的第一行是代表“中繼文件請求”的字符串時,中繼設(shè)備10C讀取跟隨該字符串而被保存的文件標(biāo)識符I和已接收數(shù)據(jù)量O_R,并從文件存儲部分13’C的文件表中獲取與文件標(biāo)識符I關(guān)聯(lián)而被記錄的文件路徑PC,同時把文件路徑C的文件中已接收數(shù)據(jù)量O_R的數(shù)據(jù)之后的文件數(shù)據(jù)和指示發(fā)送中止?fàn)顟B(tài)的值Z存入一個HTTP響應(yīng)的一個實體主體,在步驟420,中繼設(shè)備10C將該HTTP響應(yīng)發(fā)送到接收設(shè)備50。
當(dāng)指示發(fā)送中止?fàn)顟B(tài)的值Z為“真”時,接收HTTP響應(yīng)的接收設(shè)備50中止接收文件。當(dāng)指示發(fā)送中止?fàn)顟B(tài)的值Z為“假”時,接收設(shè)備50獲取輸入文件存儲部分53中保存的文件的文件路徑,并將后續(xù)內(nèi)容(文件數(shù)據(jù)的剩余數(shù)據(jù))存入HTTP響應(yīng)的實體主體。
在接收設(shè)備50中,文件數(shù)據(jù)的發(fā)送被重復(fù)(L8),直到已接收數(shù)據(jù)量O_R達(dá)到文件大小L,或是指示發(fā)送中止?fàn)顟B(tài)的值Z變?yōu)椤罢妗睘橹埂?br> 當(dāng)發(fā)送設(shè)備30恢復(fù)文件發(fā)送時,發(fā)送設(shè)備30把代表已存儲數(shù)據(jù)量O_S的字符串以及文件標(biāo)識符I存入一個HTTP請求的POST方法的實體主體,同時通過換行將其分離,在步驟412,發(fā)送設(shè)備30將該HTTP請求發(fā)送到中繼設(shè)備10A。
當(dāng)POST方法的實體主體的第一行是一個代表“已存儲數(shù)據(jù)量”的字符串時,中繼設(shè)備10A讀取文件標(biāo)識符I,從文件表中獲取與該文件標(biāo)識符關(guān)聯(lián)的文件路徑PA,將文件路徑PA中保存的數(shù)據(jù)量存入一個HTTP響應(yīng)的一個實體主體,并將該HTTP響應(yīng)發(fā)送到發(fā)送設(shè)備30。
發(fā)送設(shè)備30從中繼設(shè)備10A發(fā)送的HTTP響應(yīng)的實體主體中讀取已存儲數(shù)據(jù)量O_S,并把代表“始發(fā)文件”的字符串和文件標(biāo)識符I存入一個HTTP請求的POST方法的實體主體,同時通過換行將字符串分離。此后,發(fā)送設(shè)備30存儲文件數(shù)據(jù)中已接收數(shù)據(jù)量的數(shù)據(jù)之后的文件數(shù)據(jù)F(O_S)(例如二進(jìn)制序列),并且開始將數(shù)據(jù)發(fā)送到中繼設(shè)備10″。
當(dāng)POST方法的實體主體的第一行是一個代表“始發(fā)文件”的字符串時,中繼設(shè)備10A讀取文件標(biāo)識符,從文件表中獲取與該文件標(biāo)識符I關(guān)聯(lián)的文件路徑,讀取保存在實體主體中并跟隨在文件標(biāo)識符之后的“文件數(shù)據(jù)”,并且開始將文件數(shù)據(jù)存入文件路徑PA中已保存數(shù)據(jù)的末端之后的一個部分。此外,發(fā)送中止?fàn)顟B(tài)的值Z被改成“假”。
當(dāng)所有文件數(shù)據(jù)都被存入文件存儲部分13的時候,也就是說,當(dāng)上載文件數(shù)據(jù)量O_S達(dá)到文件大小L的時候,在步驟499,中繼設(shè)備10A向發(fā)送設(shè)備30通知數(shù)據(jù)存儲已完成。響應(yīng)于該通知,發(fā)送設(shè)備30結(jié)束文件傳送的處理。
此后處理采用與先前所述處理一樣的方式被執(zhí)行(步驟409,410,411,412,413,414,420,L6,L7,L8)。
盡管在上述描述中,將文件傳送到一個接收設(shè)備的情況已經(jīng)作為實例而被描述,但是本發(fā)明還可應(yīng)用于將文件傳送到多個接收設(shè)備的情況(多點傳送)。在這種情況下,可以從發(fā)送設(shè)備30把包含多個接收設(shè)備地址R1-RN的目的地址組D,而不是目的地址R發(fā)送到中繼設(shè)備10。中繼設(shè)備10可以將地址R1-RN中的每一個與文件標(biāo)識符I、文件路徑P以及文件大小L關(guān)聯(lián),從而將其存入文件表。
根據(jù)本實施例的文件傳送系統(tǒng),由于發(fā)送設(shè)備恢復(fù)文件發(fā)送是從一個中繼設(shè)備通知給下一階段中繼設(shè)備的,因此那些由發(fā)送設(shè)備恢復(fù)發(fā)送的數(shù)據(jù)重新開始在中繼設(shè)備之間傳送。
根據(jù)本發(fā)明,由于發(fā)送設(shè)備到中繼設(shè)備的文件傳送是與中繼設(shè)備到接收設(shè)備的文件傳送同時被執(zhí)行的,因此在完成發(fā)送之前就可開始接收。此外,由于包含被傳文件的文件大小的始發(fā)文件信息是從發(fā)送設(shè)備發(fā)送到中繼設(shè)備和接收設(shè)備的,因此接收設(shè)備可以重復(fù)接收文件,直到已接收文件數(shù)據(jù)達(dá)到該文件大小為止。結(jié)果,在發(fā)送設(shè)備的發(fā)送速度低于接收設(shè)備的接收速度的情況下,即使接收設(shè)備接收了已被保存在中繼設(shè)備的所有數(shù)據(jù)之后,所接收的數(shù)據(jù)量仍未達(dá)到文件大小,也可在等到將后續(xù)數(shù)據(jù)存入中繼設(shè)備之后,通過重復(fù)文件接收處理來對文件傳送速度進(jìn)行調(diào)整。
本發(fā)明并不局限于特別公開的實施例,可以在不脫離本發(fā)明范圍的情況下進(jìn)行修改和變化。
權(quán)利要求
1.一種文件傳送系統(tǒng),該系統(tǒng)從一個發(fā)送設(shè)備向一個接收設(shè)備傳送文件,所述文件傳送系統(tǒng)包括所述發(fā)送設(shè)備,該設(shè)備發(fā)送所述文件;中繼設(shè)備,該設(shè)備中繼所述文件;以及所述接收設(shè)備,該設(shè)備接收所述文件;所述文件傳送系統(tǒng)中的所述中繼設(shè)備包括文件存儲部分,該部分保存所述文件、一個文件標(biāo)識符、一個文件大小以及一個目的地址,它們彼此相互關(guān)聯(lián);文件始發(fā)信息接收部分,該部分接收包含所述文件大小和所述目的地址的文件始發(fā)信息,將所述文件標(biāo)識符分配給所述文件,將所述文件標(biāo)識符、文件大小以及所述地址存入所述文件存儲部分,并將所述文件標(biāo)識符告知所述發(fā)送設(shè)備;文件輸入信息發(fā)送部分,該部分基于所述目的地址來判定所述文件的目的地,并將包含所述文件標(biāo)識符和所述文件大小的文件輸入信息通知給所述接收設(shè)備;始發(fā)文件接收部分,該部分從所述發(fā)送設(shè)備接收所述文件標(biāo)識符和對應(yīng)于所述文件標(biāo)識符的文件數(shù)據(jù),并將所述文件標(biāo)識符和所述文件數(shù)據(jù)存入所述文件存儲部分;以及輸入文件發(fā)送部分,該部分從所述接收設(shè)備接收所述文件標(biāo)識符和所述接收設(shè)備作為所述文件數(shù)據(jù)已經(jīng)接收的數(shù)據(jù)量,并將保存在所述文件存儲部分中的所述文件數(shù)據(jù)中的仍未被所述接收設(shè)備接收的數(shù)據(jù)發(fā)送到所述接收設(shè)備;所述發(fā)送設(shè)備包括始發(fā)文件存儲部分,該部分保存相互關(guān)聯(lián)的所述文件和所述文件標(biāo)識符;始發(fā)文件信息發(fā)送部分,該部分將包含所述文件大小和所述目的地址的文件始發(fā)信息發(fā)送到所述中繼設(shè)備,從所述中繼設(shè)備接收所述文件標(biāo)識符,并將所述文件標(biāo)識符存入始發(fā)文件存儲部分;以及始發(fā)文件發(fā)送部分,該部分將所述文件標(biāo)識符和對應(yīng)于所述文件標(biāo)識符的所述文件數(shù)據(jù)發(fā)送到所述中繼設(shè)備;所述接收設(shè)備包括輸入文件存儲部分,該部分保存相互關(guān)聯(lián)的所述文件數(shù)據(jù),所述文件標(biāo)識符以及所述文件大??;文件輸入信息接收部分,該部分從所述中繼設(shè)備接收包含所述文件標(biāo)識符和所述文件大小的所述文件輸入信息,并將所述文件標(biāo)識符和所述文件大小記錄在所述輸入文件存儲部分中;以及輸入文件接收部分,該部分重復(fù)執(zhí)行一個程序,直到所述文件的已接收數(shù)據(jù)量達(dá)到所述文件大小,其中,在所述程序中,所述輸入文件接收部分將所述文件標(biāo)識符和所述已接收數(shù)據(jù)量發(fā)送到所述中繼設(shè)備,從所述中繼設(shè)備接收所述文件中仍未接收的數(shù)據(jù),以及將所述數(shù)據(jù)添加到已接收數(shù)據(jù)中。
2.如權(quán)利要求1所述的文件傳送系統(tǒng),所述中繼設(shè)備還包括傳送目的地確定部分,該部分基于所述目的地址來判定是否有必要將所述文件傳送到一個第二中繼設(shè)備,并在有必要將所述文件發(fā)送到另一個中繼設(shè)備的時候,確定所述第二中繼設(shè)備;文件中繼信息發(fā)送部分,該部分將包含所述目的地址、所述文件標(biāo)識符以及所述文件大小的文件中繼信息發(fā)送到所述第二中繼設(shè)備;中繼文件發(fā)送部分,該部分接收所述文件標(biāo)識符和所述第二中繼設(shè)備已經(jīng)接收的數(shù)據(jù)量,并且發(fā)送跟隨在所述第二中繼設(shè)備已接收的所述數(shù)據(jù)量數(shù)據(jù)之后的數(shù)據(jù);文件中繼信息接收部分,該部分從一個第三設(shè)備中接收所述文件中繼信息,并將所述文件中繼信息中包含的所述目的地址、所述文件標(biāo)識符以及所述文件大小記錄在所述文件存儲部分中;以及中繼文件接收部分,該部分重復(fù)執(zhí)行一個第二程序,直到所述文件的已接收數(shù)據(jù)量達(dá)到所述文件大小,其中,在所述第二程序中,所述中繼文件接收部分將所述文件標(biāo)識符和所述已接收數(shù)據(jù)量發(fā)送到所述第三中繼設(shè)備,并從所述第三中繼設(shè)備接收所述文件中仍未被接收的數(shù)據(jù),以及將接收自所述第三中繼設(shè)備的所述數(shù)據(jù)添加到已接收數(shù)據(jù)中。
3.如權(quán)利要求2所述的文件傳送系統(tǒng),所述中繼文件發(fā)送部分還包括一個部分,在發(fā)送所述文件數(shù)據(jù)之前,該部分發(fā)送代表文件發(fā)送狀態(tài)的信息,其中該狀態(tài)與所述文件標(biāo)識符相關(guān)聯(lián);所述中繼文件接收部分還包括一個部分,該部分從所述第三中繼設(shè)備接收所述代表文件發(fā)送狀態(tài)的信息,當(dāng)所述文件發(fā)送狀態(tài)是發(fā)送中止?fàn)顟B(tài)時中止數(shù)據(jù)接收,并且在所述文件發(fā)送狀態(tài)不是發(fā)送中止?fàn)顟B(tài)的時候,接收所述文件中仍未被接收的數(shù)據(jù)。
4.如權(quán)利要求1所述的文件傳送系統(tǒng),所述文件存儲部分包括一個部分,該部分存儲代表文件發(fā)送狀態(tài)的信息,其中該信息指示的是所述發(fā)送設(shè)備是否中止文件發(fā)送,所述信息與所述文件標(biāo)識符相關(guān)聯(lián);其中當(dāng)所述發(fā)送設(shè)備中止文件發(fā)送時,所述始發(fā)文件接收部分將所述代表文件發(fā)送狀態(tài)的信息改為一個表示中止的值;以及在將所述文件數(shù)據(jù)發(fā)送到所述接收設(shè)備之前,所述輸入文件接收部分發(fā)送所述代表文件發(fā)送狀態(tài)的信息;所述中繼設(shè)備還包括已接收數(shù)據(jù)量響應(yīng)部分,當(dāng)所述中繼設(shè)備從所述發(fā)送設(shè)備接收到關(guān)于所述已接收數(shù)據(jù)量的查詢時,該部分將所述文件存儲部分中保存的所述文件的已接收數(shù)據(jù)量告知所述發(fā)送設(shè)備;其中當(dāng)所述發(fā)送設(shè)備恢復(fù)文件發(fā)送時,所述發(fā)送設(shè)備中的所述始發(fā)文件發(fā)送部分將所述已接收數(shù)據(jù)量的數(shù)據(jù)之后的數(shù)據(jù)發(fā)送到所述中繼設(shè)備;以及當(dāng)所述文件發(fā)送狀態(tài)是中止?fàn)顟B(tài)時,所述接收設(shè)備中的所述輸入文件接收部分從所述中繼設(shè)備接收所述代表文件發(fā)送狀態(tài)的信息,并且在所述文件發(fā)送狀態(tài)不是中止?fàn)顟B(tài)時,接收所述文件中仍未被接收的數(shù)據(jù)。
5.如權(quán)利要求1所述的文件傳送系統(tǒng),所述接收設(shè)備中的所述文件輸入信息接收部分包括一個部分,該部分將所述目的地址發(fā)送到所述中繼設(shè)備;所述中繼設(shè)備中的所述文件輸入信息發(fā)送部分包括一個部分,該部分接收所述目的地址,并且發(fā)送所述輸入文件信息,該信息涉及去往所述目的地址的一個文件。
6.如權(quán)利要求1所述的文件傳送系統(tǒng),其中所述始發(fā)文件信息發(fā)送部分將所述文件標(biāo)識符分配給將要傳送的所述文件,并將所述文件標(biāo)識符包含在所述始發(fā)文件信息中;所述中繼設(shè)備中的所述文件始發(fā)信息接收部分獲取包含在所述始發(fā)文件信息中的所述文件標(biāo)識符,而不是將所述文件標(biāo)識符分配給所述文件。
7.如權(quán)利要求1-6中任何一個所述的文件傳送系統(tǒng),所述數(shù)據(jù)量是字節(jié)數(shù)。
8.一種中繼設(shè)備,該設(shè)備將一個文件從一個發(fā)送設(shè)備經(jīng)由網(wǎng)絡(luò)發(fā)送到一個接收設(shè)備,包括輸入文件發(fā)送部分,該部分從所述接收設(shè)備接收一個文件標(biāo)識符和已下載數(shù)據(jù)量;文件存儲部分,該部分保存所述文件的文件標(biāo)識符和文件數(shù)據(jù),其中文件標(biāo)識符和文件數(shù)據(jù)相互關(guān)聯(lián),并且該部分根據(jù)所述文件標(biāo)識符和所述已下載數(shù)據(jù)量而將文件數(shù)據(jù)傳遞到所述輸入文件發(fā)送部分;其中所述輸入文件發(fā)送部分根據(jù)所述已下載數(shù)據(jù)量來將所述文件數(shù)據(jù)發(fā)送到所述接收設(shè)備。
9.如權(quán)利要求8所述的中繼設(shè)備,還包括傳送目的地確定部分,該部分返回一個與目的地址相對應(yīng)的另一個中繼設(shè)備的地址;文件中繼信息發(fā)送部分,該部分從所述傳送目的地確定部分接收所述另一個中繼設(shè)備的所述地址,并使用所述地址來發(fā)送文件中繼信息。
10.如權(quán)利要求8或9所述的中繼設(shè)備,所述文件存儲部分還包括一個字段,其中記錄了文件發(fā)送狀態(tài);所述中繼設(shè)備還包括已接收數(shù)據(jù)量響應(yīng)部分,該部分將已從所述發(fā)送設(shè)備發(fā)送到所述中繼設(shè)備的所述文件數(shù)據(jù)中的數(shù)據(jù)量發(fā)送到所述發(fā)送設(shè)備。
11.一種文件傳送系統(tǒng)中的發(fā)送設(shè)備,該系統(tǒng)包括發(fā)送文件的所述發(fā)送設(shè)備,一個中繼所述文件的中繼設(shè)備,以及一個接收所述文件的接收設(shè)備,所述發(fā)送設(shè)備包括始發(fā)文件存儲部分,該部分保存相互關(guān)聯(lián)的所述文件和一個文件標(biāo)識符;始發(fā)文件信息發(fā)送部分,該部分將包含所述文件的文件大小和目的地址的文件始發(fā)信息發(fā)送到所述中繼設(shè)備,從所述中繼設(shè)備接收分配給所述文件的所述文件標(biāo)識符,并將所述文件標(biāo)識符存入所述始發(fā)文件存儲部分;始發(fā)文件發(fā)送部分,該部分將所述文件標(biāo)識符和對應(yīng)于所述文件標(biāo)識符的文件數(shù)據(jù)發(fā)送到所述中繼設(shè)備。
12.如權(quán)利要求11所述的發(fā)送設(shè)備,其中在中止文件傳送之后,當(dāng)所述發(fā)送設(shè)備恢復(fù)文件發(fā)送時,所述發(fā)送設(shè)備將由所述中繼設(shè)備通知的已發(fā)送數(shù)據(jù)量的數(shù)據(jù)之后的數(shù)據(jù)發(fā)送到所述中繼設(shè)備。
13.如權(quán)利要求11所述的發(fā)送設(shè)備,其中所述始發(fā)文件信息發(fā)送部分將所述文件標(biāo)識符分配給所述文件,并將所述發(fā)送設(shè)備分配的所述文件標(biāo)識符包含到所述始發(fā)文件信息中。
14.一種文件傳送系統(tǒng)中的接收設(shè)備,該系統(tǒng)包括一個發(fā)送文件的發(fā)送設(shè)備,一個中繼所述文件的中繼設(shè)備,以及接收所述文件的所述接收設(shè)備,所述接收設(shè)備包括輸入文件存儲部分,該部分保存所述文件的文件數(shù)據(jù)、文件標(biāo)識符以及文件大小,這些數(shù)據(jù)相互關(guān)聯(lián);文件輸入信息接收部分,該部分從所述中繼設(shè)備接收包含所述文件標(biāo)識符和所述文件大小的文件輸入信息,并將所述文件標(biāo)識符和所述文件大小記錄到所述輸入文件存儲部分中;輸入文件接收部分,該部分重復(fù)執(zhí)行一個程序,直到所述文件的已接收數(shù)據(jù)量達(dá)到所述文件大小為止,其中,在所述程序中,所述輸入文件接收部分將所述文件標(biāo)識符和所述已接收數(shù)據(jù)量發(fā)送到所述中繼設(shè)備,從所述中繼設(shè)備接收所述文件中仍未被接收的數(shù)據(jù),并將所述數(shù)據(jù)添加到已接收數(shù)據(jù)中。
15.如權(quán)利要求14所述的接收設(shè)備,其中所述輸入文件接收部分從所述中繼設(shè)備接收代表文件發(fā)送狀態(tài)的信息,當(dāng)所述文件發(fā)送狀態(tài)是中止?fàn)顟B(tài)時,中止文件發(fā)送,并且在所述文件發(fā)送狀態(tài)不是中止?fàn)顟B(tài)的時候,接收所述文件中仍未被接收的數(shù)據(jù)。
16.一種文件傳送方法,該方法在將文件從發(fā)送設(shè)備經(jīng)由網(wǎng)絡(luò)發(fā)送到接收設(shè)備的時候被使用,所述文件傳送方法包括步驟當(dāng)接收到一個文件發(fā)送請求的時候,產(chǎn)生一個用于識別所述文件的文件標(biāo)識符;在接收所述文件的數(shù)據(jù)之前,從所述發(fā)送設(shè)備接收一個文件大小,并且保存相互關(guān)聯(lián)的所述文件大小和所述文件標(biāo)識符;請求所述發(fā)送設(shè)備發(fā)送文件數(shù)據(jù),直到已接收數(shù)據(jù)達(dá)到所述文件大??;在將所述文件數(shù)據(jù)發(fā)送到所述接收設(shè)備之前,將所述文件標(biāo)識符和所述文件大小發(fā)送到所述接收設(shè)備;將所述文件數(shù)據(jù)發(fā)送到所述接收設(shè)備,直到所述接收設(shè)備接收的數(shù)據(jù)量達(dá)到所述文件大小。
17.如權(quán)利要求16所述的文件傳送方法,還包括步驟根據(jù)所述文件的目的地址來判定是否有必要傳送所述文件;當(dāng)有必要傳送所述文件的時候,確定傳送目的地;把包括所述目的地址、所述文件標(biāo)識符和所述文件大小的文件中繼信息發(fā)送到所述傳送目的地。
18.如權(quán)利要求16或17所述的文件傳送方法,還包括步驟在發(fā)送所述數(shù)據(jù)之前,將指示所述發(fā)送設(shè)備是否中止文件發(fā)送的文件發(fā)送狀態(tài)發(fā)送到所述接收設(shè)備;其中當(dāng)所述文件發(fā)送狀態(tài)指示中止時,所述接收設(shè)備中止文件接收,當(dāng)所述文件發(fā)送狀態(tài)不指示中止時,所述接收設(shè)備接收所述文件中仍未被接收的數(shù)據(jù)。
19.一種用于存儲程序代碼的計算機可讀介質(zhì),該程序代碼用于使計算機將文件從一個發(fā)送設(shè)備經(jīng)由網(wǎng)絡(luò)傳送到一個接收設(shè)備,所述計算機可讀介質(zhì)包括程序代碼手段,在接收到一個文件發(fā)送請求的時候,產(chǎn)生一個用于識別所述文件的文件標(biāo)識符;程序代碼手段,在接收所述文件的數(shù)據(jù)之前,從所述發(fā)送設(shè)備接收一個文件大小,并且保存相互關(guān)聯(lián)的所述文件大小和所述文件標(biāo)識符;程序代碼手段,用于請求所述發(fā)送設(shè)備發(fā)送文件數(shù)據(jù),直到已接收數(shù)據(jù)達(dá)到所述文件大??;程序代碼手段,在將所述文件數(shù)據(jù)發(fā)送到所述接收設(shè)備之前,用于將所述文件標(biāo)識符和所述文件大小發(fā)送到所述接收設(shè)備;程序代碼手段,用于將所述文件數(shù)據(jù)發(fā)送到所述接收設(shè)備,直到所述接收設(shè)備接收的數(shù)據(jù)量達(dá)到所述文件大小。
20.如權(quán)利要求19所述的計算機可讀介質(zhì),還包括程序代碼手段,根據(jù)所述文件的目的地址來判定是否有必要傳送所述文件;程序代碼手段,當(dāng)有必要傳送所述文件時,用于確定傳送目的地;程序代碼手段,用于把包含所述目的地址、所述文件標(biāo)識符以及所述文件大小的文件中繼信息發(fā)送到所述傳送目的地。
21.如權(quán)利要求19或20所述的計算機可讀介質(zhì),還包括程序代碼手段,在發(fā)送所述文件之前,用于發(fā)送指示所述發(fā)送設(shè)備是否中止文件發(fā)送的文件發(fā)送狀態(tài)。
22.一種用于存儲程序代碼的計算機可讀介質(zhì),該程序代碼用于使計算機執(zhí)行文件傳送系統(tǒng)中的一個發(fā)送設(shè)備的處理過程,該系統(tǒng)包括發(fā)送一個文件的所述發(fā)送設(shè)備,中繼所述文件的中繼設(shè)備,接收所述文件的接收設(shè)備,所述計算機可讀介質(zhì)包括程序代碼手段,用于把包含所述文件的一個文件大小和一個目的地址的文件始發(fā)信息發(fā)送到所述中繼設(shè)備;程序代碼手段,用于從所述中繼設(shè)備接收分配給所述文件的所述文件標(biāo)識符,并且保存所述文件標(biāo)識符;程序代碼手段,用于將所述文件標(biāo)識符和對應(yīng)于所述文件標(biāo)識符的文件數(shù)據(jù)發(fā)送到所述中繼設(shè)備。
23.如權(quán)利要求22所述的計算機可讀介質(zhì),還包括程序代碼手段,在中止文件發(fā)送之后,當(dāng)所述發(fā)送設(shè)備恢復(fù)文件發(fā)送時,用于將由所述中繼設(shè)備通知的已發(fā)送數(shù)據(jù)量的數(shù)據(jù)之后的數(shù)據(jù)發(fā)送到所述中繼設(shè)備。
24.一種用于存儲程序代碼的計算機可讀介質(zhì),該程序代碼用于使計算機執(zhí)行文件傳送系統(tǒng)中的一個接收設(shè)備的處理過程,該系統(tǒng)包括發(fā)送一個文件的發(fā)送設(shè)備,中繼所述文件的中繼設(shè)備,以及接收所述文件的所述接收設(shè)備,所述計算機可讀介質(zhì)包括程序代碼手段,用于從所述中繼設(shè)備接收包含文件標(biāo)識符和文件大小的文件輸入信息;程序代碼手段,用于重復(fù)執(zhí)行一個程序,直到所述文件的已接收數(shù)據(jù)量達(dá)到所述文件大小,其中,在所述程序中,所述計算機將所述文件標(biāo)識符和所述已接收數(shù)據(jù)量發(fā)送到所述中繼設(shè)備,從所述中繼設(shè)備接收所述文件中仍未被接收的數(shù)據(jù),并將所述數(shù)據(jù)添加到已接收數(shù)據(jù)中。
25.如權(quán)利要求24所述的計算機可讀介質(zhì),還包括程序代碼手段,用于從所述中繼設(shè)備接收代表文件發(fā)送狀態(tài)的信息,當(dāng)所述文件發(fā)送狀態(tài)是中止?fàn)顟B(tài)時中止文件接收,并且當(dāng)所述文件發(fā)送狀態(tài)不是中止?fàn)顟B(tài)時,接收所述文件中仍未被接收的數(shù)據(jù)。
26.一種用于使計算機將一個文件從發(fā)送設(shè)備經(jīng)由網(wǎng)絡(luò)發(fā)送到接收設(shè)備的程序,所述程序包括程序代碼手段,當(dāng)接收到一個文件發(fā)送請求時,產(chǎn)生一個用于識別所述文件的文件標(biāo)識符;程序代碼手段,在接收所述文件的數(shù)據(jù)之前,用于從所述發(fā)送設(shè)備接收一個文件大小,并且保存相互關(guān)聯(lián)的所述文件大小和所述文件標(biāo)識符;程序代碼手段,用于請求所述發(fā)送設(shè)備發(fā)送文件數(shù)據(jù),直到已接收數(shù)據(jù)達(dá)到所述文件大小為止;程序代碼手段,在將所述文件數(shù)據(jù)發(fā)送到所述接收設(shè)備之前,用于將所述文件標(biāo)識符和所述文件大小發(fā)送到所述接收設(shè)備;程序代碼手段,用于將所述文件數(shù)據(jù)發(fā)送到所述接收設(shè)備,直到所述接收設(shè)備的已接收數(shù)據(jù)量達(dá)到所述文件大小。
27.如權(quán)利要求26所述的程序,還包括程序代碼手段,用于根據(jù)所述文件的目的地址來判定是否有必要傳送所述文件;程序代碼手段,當(dāng)有必要傳送所述文件的時候,用于確定文件傳送目的地;程序代碼手段,用于把包含所述目的地址、所述文件標(biāo)識符以及所述文件大小的文件中繼信息發(fā)送到所述傳送目的地。
28.如權(quán)利要求26或27所述的程序,還包括程序代碼手段,在發(fā)送所述文件之前,用于發(fā)送指示所述發(fā)送設(shè)備是否中止文件發(fā)送的文件發(fā)送狀態(tài)。
29.一種用于使計算機執(zhí)行文件傳送系統(tǒng)中的發(fā)送設(shè)備的處理過程的程序,該系統(tǒng)包括發(fā)送一個文件的所述發(fā)送設(shè)備,中繼所述文件的中繼設(shè)備以及接收所述文件的接收設(shè)備,所述程序包括程序代碼手段,用于把包含所述文件的一個文件大小和一個目的地址的文件始發(fā)信息發(fā)送到所述中繼設(shè)備;程序代碼手段,用于從所述中繼設(shè)備接收分配給所述文件的所述文件標(biāo)識符,并且保存所述文件標(biāo)識符;程序代碼手段,用于將所述文件標(biāo)識符和對應(yīng)于所述文件標(biāo)識符的文件數(shù)據(jù)發(fā)送到所述中繼設(shè)備。
30.如權(quán)利要求29所述的程序,還包括程序代碼手段,在中止文件發(fā)送之后,當(dāng)所述發(fā)送設(shè)備恢復(fù)文件發(fā)送時,用于將由所述中繼設(shè)備通知的已發(fā)送數(shù)據(jù)量的數(shù)據(jù)之后的數(shù)據(jù)發(fā)送到所述中繼設(shè)備。
31.一種用于使計算機執(zhí)行文件傳送系統(tǒng)中的接收設(shè)備的處理過程的程序,該系統(tǒng)包括發(fā)送一個文件的發(fā)送設(shè)備,中繼所述文件的中繼設(shè)備,以及接收所述文件的所述接收設(shè)備,所述程序包括程序代碼手段,用于從所述中繼設(shè)備接收包含文件標(biāo)識符和文件大小的文件輸入信息;程序代碼手段,用于重復(fù)執(zhí)行一個程序,直到所述文件的已接收數(shù)據(jù)量達(dá)到所述文件大小,其中,在所述程序中,所述計算機將所述文件標(biāo)識符和所述已接收數(shù)據(jù)量發(fā)送到所述中繼設(shè)備,從所述中繼設(shè)備接收所述文件中仍未被接收的數(shù)據(jù),并將所述數(shù)據(jù)添加到已接收數(shù)據(jù)中。
32.如權(quán)利要求31所述的程序,還包括程序代碼手段,用于從所述中繼設(shè)備中接收代表文件發(fā)送狀態(tài)的信息,當(dāng)所述文件發(fā)送狀態(tài)是中止?fàn)顟B(tài)時中止文件接收,并且當(dāng)所述文件發(fā)送狀態(tài)不是中止?fàn)顟B(tài)時,接收所述文件中仍未被接收的數(shù)據(jù)。
全文摘要
提供了一種包括一個中繼設(shè)備的文件傳送系統(tǒng),其中,該中繼設(shè)備包括一個輸入文件發(fā)送部分15,用于從接收設(shè)備50接收一個文件標(biāo)識符I和已下載數(shù)據(jù)量O_R;以及一個文件存儲部分13,該部分保存文件計算機可讀介質(zhì)和文件數(shù)據(jù),并根據(jù)文件標(biāo)識符和和已下載數(shù)據(jù)量將文件數(shù)據(jù)傳遞到輸入文件發(fā)送部分。文件數(shù)據(jù)F(O_R)被發(fā)送到接收設(shè)備。
文檔編號H04L29/06GK1451118SQ01815012
公開日2003年10月22日 申請日期2001年8月30日 優(yōu)先權(quán)日2000年8月31日
發(fā)明者安部剛, 川島正久 申請人:日本電信電話株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
云南省| 祥云县| 安阳县| 普安县| 津南区| 綦江县| 韩城市| 南投县| 安龙县| 安泽县| 龙井市| 辽阳县| 甘孜县| 武清区| 凤凰县| 旺苍县| 光山县| 团风县| 汶上县| 公主岭市| 儋州市| 大同市| 桑日县| 福泉市| 弋阳县| 若尔盖县| 科技| 云南省| 潞城市| 梅河口市| 新建县| 祁阳县| 临桂县| 镇赉县| 霍邱县| 辽源市| 鄯善县| 阿克陶县| 长武县| 高青县| 岗巴县|