專利名稱:用于數(shù)據(jù)通信的方法和裝置及其程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)通信的方法和裝置及其程序,更具體地,涉及這樣一種 數(shù)據(jù)通信的方法和設(shè)備及其程序,即將大量數(shù)據(jù)分成多個(gè)塊數(shù)據(jù),并通過多 播通信將所述多個(gè)塊數(shù)據(jù)從服務(wù)器發(fā)送至多個(gè)客戶機(jī)。
背景技術(shù):
在服務(wù)器-客戶機(jī)系統(tǒng)中,當(dāng)服務(wù)器向客戶機(jī)發(fā)送大量數(shù)據(jù)時(shí),由于在客 戶機(jī)中硬件的限制,所以將一個(gè)數(shù)據(jù)分成多個(gè)塊(塊數(shù)據(jù))并發(fā)送。在這種服務(wù)器-客戶機(jī)系統(tǒng)中,為了減小服務(wù)器的負(fù)擔(dān)以及降低網(wǎng)絡(luò)負(fù)載,提出建立有效的系統(tǒng)(參照國際專利申請(qǐng)No.2005-518120和日本專利特 開No.2000-089996的國家公布)。g卩,服務(wù)器通過多播通信發(fā)送每一塊數(shù)據(jù)。 預(yù)定的客戶機(jī)高速緩存(存儲(chǔ))所接收的塊數(shù)據(jù),并響應(yīng)于來自其它客戶機(jī) 的請(qǐng)求向其他客戶機(jī)提供被高速緩存的塊數(shù)據(jù)。根據(jù)我們的研究,當(dāng)客戶機(jī)通過多播通信接收到從服務(wù)器發(fā)送的塊數(shù)據(jù) 時(shí),由于客戶機(jī)性能的不同,所以在客戶機(jī)中對(duì)塊數(shù)據(jù)的處理時(shí)間不同。結(jié) 果,在塊數(shù)據(jù)接收時(shí)出現(xiàn)時(shí)滯。因此,為了使所有客戶機(jī)同步,如圖13A所 示,每當(dāng)塊數(shù)據(jù)的接收處理結(jié)束時(shí),各客戶機(jī)121至123需要向服務(wù)器101 發(fā)送響應(yīng)應(yīng)答(Ack或Nack)。然而,在這種情況下,由于一個(gè)服務(wù)器101 處理來自所有客戶機(jī)121至123的響應(yīng)應(yīng)答,所以在服務(wù)器101的處理中出 現(xiàn)延遲。此外,考慮到在客戶機(jī)121至123的處理中出現(xiàn)的延遲,服務(wù)器101 需要緩存(保存)被發(fā)送的數(shù)據(jù)。然而,在這種情況下,盡管服務(wù)器101可 通過緩存當(dāng)前被發(fā)送的塊數(shù)據(jù)來對(duì)所有客戶機(jī)121至123執(zhí)行重發(fā)處理,但 是服務(wù)器101的性能降低。在存在多個(gè)客戶機(jī)時(shí),而性能取決于服務(wù)器101 的接收性能時(shí),服務(wù)器101的性能降低。因此,可以設(shè)想,僅通過用以代表如圖13B中所示的所有客戶機(jī)121至 123的一個(gè)客戶機(jī)(代表客戶機(jī))121來執(zhí)行響應(yīng)應(yīng)答,代替通過所有客戶 機(jī)121至123來執(zhí)行響應(yīng)應(yīng)答。然而,在這種情況下,響應(yīng)應(yīng)答的處理集中在一個(gè)代表客戶機(jī)121上。此外,當(dāng)執(zhí)行響應(yīng)應(yīng)答時(shí),不能保證除了代表客 戶機(jī)121之外的客戶機(jī)122和123結(jié)束了數(shù)據(jù)處理。此外,為了處理出現(xiàn)延 遲的客戶機(jī),服務(wù)器101需要保存所有的塊數(shù)據(jù)。因此,服務(wù)器101必須具 有與所有塊數(shù)據(jù)對(duì)應(yīng)數(shù)量的數(shù)據(jù)緩沖器115。發(fā)明內(nèi)容本發(fā)明的一個(gè)目的在于提供一種用于數(shù)據(jù)通信的方法,其可將大量數(shù)據(jù) 分成多個(gè)塊數(shù)據(jù),并且在不降低數(shù)據(jù)通信系統(tǒng)性能的情況下通過多播通信將 多個(gè)塊數(shù)據(jù)從服務(wù)器發(fā)送至多個(gè)客戶機(jī)。本發(fā)明的另一目的在于提供一種用于數(shù)據(jù)通信的設(shè)備,其可將大量數(shù)據(jù) 分成多個(gè)塊數(shù)據(jù),并且在不降低數(shù)據(jù)通信系統(tǒng)性能的情況下通過多播通信將 多個(gè)塊數(shù)據(jù)從服務(wù)器發(fā)送至多個(gè)客戶機(jī)。本發(fā)明的又一目的在于提供一種用以實(shí)現(xiàn)服務(wù)器的程序,其可將大量數(shù) 據(jù)分成多個(gè)塊數(shù)據(jù),并且在不降低數(shù)據(jù)通信系統(tǒng)性能的情況下通過多播通信 將多個(gè)塊數(shù)據(jù)從服務(wù)器確定地發(fā)送至多個(gè)客戶機(jī)。本發(fā)明的用于數(shù)據(jù)通信的方法為這樣一種數(shù)據(jù)通信的方法,即利用該方 法使得服務(wù)器通過多播通信將包含多個(gè)塊數(shù)據(jù)的數(shù)據(jù)發(fā)送至多個(gè)客戶機(jī)。該方法包括以下步驟服務(wù)器將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī),該代 表客戶機(jī)在接收到塊數(shù)據(jù)時(shí)以預(yù)定順序發(fā)送對(duì)于多個(gè)塊數(shù)據(jù)中每一個(gè)塊數(shù) 據(jù)的響應(yīng)應(yīng)答;該服務(wù)器通過多播通信向多個(gè)客戶機(jī)發(fā)送所述多個(gè)塊數(shù)據(jù)中 的一個(gè)塊數(shù)據(jù)以及用以表示所述多個(gè)客戶機(jī)中分配給該一個(gè)塊數(shù)據(jù)的代表 客戶機(jī)的信息;該代表客戶機(jī)發(fā)送響應(yīng)應(yīng)答至服務(wù)器;以及,當(dāng)服務(wù)器從代 表客戶機(jī)接收到響應(yīng)應(yīng)答時(shí),該服務(wù)器向所述多個(gè)客戶機(jī)發(fā)送所述多個(gè)塊數(shù) 據(jù)中該一個(gè)塊數(shù)據(jù)的后續(xù)塊數(shù)據(jù)以及用以表示所述多個(gè)客戶機(jī)中分配給該 后續(xù)塊數(shù)據(jù)的新代表客戶機(jī)的信息。優(yōu)選地,在本發(fā)明實(shí)施例中,在開始發(fā)送數(shù)據(jù)之前,服務(wù)器基于與多個(gè) 客戶機(jī)的通信創(chuàng)建客戶機(jī)列表,在該客戶機(jī)列表中登記接收到該數(shù)據(jù)的多個(gè) 客戶機(jī)。服務(wù)器以循環(huán)的方式基于該客戶機(jī)列表并以在該客戶機(jī)列表中的登 記順序?qū)Χ鄠€(gè)塊數(shù)據(jù)中的每一個(gè)塊數(shù)據(jù)分配代表客戶機(jī)。
優(yōu)選地,在本發(fā)明實(shí)施例中,所述代表客戶機(jī)對(duì)與該代表客戶機(jī)對(duì)應(yīng)的 塊數(shù)據(jù)進(jìn)行高速緩存,以將該塊數(shù)據(jù)重新發(fā)送至其它客戶機(jī)。優(yōu)選地,在本發(fā)明實(shí)施例中,所述代表客戶機(jī)在接收到用以表示將所述 代表客戶機(jī)第二次分配作為代表客戶機(jī)的信息之后丟棄被高速緩存的塊數(shù) 據(jù)。優(yōu)選地,在本發(fā)明實(shí)施例中,所述代表客戶機(jī)確定所述代表客戶機(jī)正常 接收到在所述多個(gè)塊數(shù)據(jù)中的該塊數(shù)據(jù)之前的所有塊數(shù)據(jù),并基于確定結(jié)果 發(fā)送響應(yīng)應(yīng)答至服務(wù)器。本發(fā)明的用于數(shù)據(jù)通信的裝置為這樣一種數(shù)據(jù)通信的裝置。該裝置包括: 響應(yīng)客戶機(jī)確定處理單元,其將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī),該 代表客戶機(jī)在接收到一個(gè)塊數(shù)據(jù)時(shí)以循環(huán)的方式發(fā)送對(duì)于用以形成數(shù)據(jù)的 多個(gè)塊數(shù)據(jù)中每一個(gè)塊數(shù)據(jù)的響應(yīng)應(yīng)答;和發(fā)送/接收處理單元,其通過多播 通信向所述多個(gè)客戶機(jī)發(fā)送該一個(gè)塊數(shù)據(jù)以及表示所述多個(gè)客戶機(jī)中分配 給該一個(gè)塊數(shù)據(jù)的代表客戶機(jī)的信息,并且當(dāng)從代表客戶機(jī)接收到響應(yīng)應(yīng)答 時(shí),其通過多播通信將該一個(gè)塊數(shù)據(jù)的后續(xù)塊數(shù)據(jù)與用以表示所述多個(gè)客戶 機(jī)中分配給該后續(xù)塊數(shù)據(jù)的新代表客戶機(jī)的信息一起發(fā)送至所述多個(gè)客戶 機(jī)。本發(fā)明的用以在數(shù)據(jù)通信系統(tǒng)中實(shí)現(xiàn)服務(wù)器的程序?yàn)檫@樣一種用以在 數(shù)據(jù)通信系統(tǒng)中實(shí)現(xiàn)服務(wù)器的程序,其中該數(shù)據(jù)通信系統(tǒng)包括服務(wù)器、多個(gè) 客戶機(jī)以及和與該服務(wù)器和所述多個(gè)客戶機(jī)連接的網(wǎng)絡(luò)。該程序使得計(jì)算機(jī) 執(zhí)行以下步驟,包括將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī),該代表客 戶機(jī)在接收到塊數(shù)據(jù)時(shí)以循環(huán)的方式發(fā)送對(duì)于用以形成數(shù)據(jù)的多個(gè)塊數(shù)據(jù) 中每一個(gè)塊數(shù)據(jù)的響應(yīng)應(yīng)答;通過多播通信向所述多個(gè)客戶機(jī)發(fā)送塊數(shù)據(jù)以 及表示分配給該塊數(shù)據(jù)的多個(gè)客戶機(jī)中的代表客戶機(jī)的信息;以及當(dāng)從代表 客戶機(jī)接收到響應(yīng)應(yīng)答時(shí),通過多播通信向所述多個(gè)客戶機(jī)發(fā)送該一個(gè)塊數(shù) 據(jù)的后續(xù)塊數(shù)據(jù)以及用以表示所述多個(gè)客戶機(jī)中分配給該后續(xù)塊數(shù)據(jù)的新 代表客戶機(jī)的信息。本發(fā)明的用于數(shù)據(jù)通信的方法為這樣一種在服務(wù)器中數(shù)據(jù)通信的方法, 其中該服務(wù)器通過多播通信將包括多個(gè)塊數(shù)據(jù)的數(shù)據(jù)發(fā)送至多個(gè)客戶機(jī)。該 方法包括如下步驟將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī),該代表客戶 機(jī)在接收到塊數(shù)據(jù)時(shí)以預(yù)定的順序發(fā)送對(duì)于用以形成數(shù)據(jù)的多個(gè)塊數(shù)據(jù)中 每一個(gè)塊數(shù)據(jù)的響應(yīng)應(yīng)答;添加用以表示分配給任一塊數(shù)據(jù)的代表客戶機(jī)的 信息至該塊數(shù)據(jù),并通過多播通信將該信息發(fā)送至多個(gè)客戶機(jī);以及當(dāng)從代 表客戶機(jī)接收到響應(yīng)應(yīng)答時(shí),通過多播通信向所述多個(gè)客戶機(jī)發(fā)送與該響應(yīng) 應(yīng)答對(duì)應(yīng)的該塊數(shù)據(jù)的后續(xù)塊數(shù)據(jù)以及用以表示分配給該后續(xù)塊數(shù)據(jù)的新 代表客戶機(jī)的信息。本發(fā)明的用于數(shù)據(jù)通信的方法為這樣一種在客戶機(jī)中數(shù)據(jù)通信的方法, 其中該客戶機(jī)通過多播通信從服務(wù)器接收塊數(shù)據(jù)。該方法包括如下步驟該 服務(wù)器將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī),該代表客戶機(jī)在接收到一 個(gè)塊數(shù)據(jù)時(shí)以預(yù)定順序發(fā)送給對(duì)于多個(gè)塊數(shù)據(jù)中每一個(gè)塊數(shù)據(jù)的響應(yīng)應(yīng)答; 該客戶機(jī)判斷是否將用以識(shí)別該客戶機(jī)的信息添加至從服務(wù)器所接收到的 該一個(gè)塊數(shù)據(jù)中;以及在將用以識(shí)別該客戶機(jī)的信息添加至該一個(gè)塊數(shù)據(jù)中 時(shí),該客戶機(jī)發(fā)送對(duì)于所接收的該一個(gè)塊數(shù)據(jù)的響應(yīng)應(yīng)答至服務(wù)器。根據(jù)本發(fā)明的用于數(shù)據(jù)通信的方法,服務(wù)器以預(yù)定順序?qū)τ诙鄠€(gè)塊數(shù)據(jù) 中每一個(gè)塊數(shù)據(jù)將多個(gè)客戶機(jī)中的一個(gè)分配作為代表客戶機(jī)(響應(yīng)應(yīng)答客戶 機(jī))。在對(duì)于多個(gè)塊數(shù)據(jù)中每一個(gè)塊數(shù)據(jù)將多個(gè)客戶機(jī)分配作為代表客戶機(jī) 之后,服務(wù)器通過多播通信將所述塊數(shù)據(jù)和用以表示分配給該塊數(shù)據(jù)的代表 客戶機(jī)的信息發(fā)送至多個(gè)客戶機(jī)。當(dāng)服務(wù)器從代表客戶機(jī)接收到響應(yīng)應(yīng)答 時(shí),服務(wù)器通過多播通信將該塊數(shù)據(jù)的后續(xù)塊數(shù)據(jù)與用以表示分配給該塊數(shù) 據(jù)的代表客戶機(jī)的信息一起發(fā)送至所述多個(gè)客戶機(jī)。因此,由于代表客戶機(jī) 對(duì)于每一塊數(shù)據(jù)而改變,所以能夠防止響應(yīng)應(yīng)答集中在一個(gè)代表客戶機(jī)上的 處理。由于代表客戶機(jī)始終接收被分配給代表客戶機(jī)的塊數(shù)據(jù),結(jié)合每一塊 數(shù)據(jù)的代表客戶機(jī)的改變,能夠保證多個(gè)塊數(shù)據(jù)存在于多個(gè)代表客戶機(jī)中的 任一個(gè)中。因此,由于服務(wù)器不需要對(duì)所有塊數(shù)據(jù)進(jìn)行高速緩存,所以能夠 消除服務(wù)器的負(fù)擔(dān)。根據(jù)本發(fā)明的實(shí)施例,服務(wù)器以循環(huán)的方式根據(jù)客戶機(jī)列表中的登記順 序?qū)Χ鄠€(gè)塊數(shù)據(jù)中的每一個(gè)塊數(shù)據(jù)分配多個(gè)客戶機(jī)中的一個(gè)作為代表客戶 機(jī),其中在該客戶機(jī)列表中登記多個(gè)客戶機(jī)。因此,能夠以預(yù)定順序固定和 平均地分配多個(gè)客戶機(jī)作為代表客戶機(jī)。根據(jù)本發(fā)明的實(shí)施例,代表客戶機(jī)保存與該代表客戶機(jī)對(duì)應(yīng)的塊數(shù)據(jù)。
因此,能夠保證該代表客戶機(jī)保存預(yù)定的塊數(shù)據(jù)。還能夠保證多個(gè)塊數(shù)據(jù)平 均地存在于多個(gè)客戶機(jī)中。根據(jù)本發(fā)明的實(shí)施例,代表客戶機(jī)在接收到用以表示將所述代表客戶機(jī) 第二次分配為代表客戶機(jī)的信息之后丟棄被高速緩存的塊數(shù)據(jù)。因此,對(duì)于 保存的塊數(shù)據(jù),代表客戶機(jī)可處理來自其它客戶機(jī)的重發(fā)請(qǐng)求。因此,能夠 平均分布重發(fā)處理的負(fù)擔(dān)。根據(jù)本發(fā)明的實(shí)施例,代表客戶機(jī)在確認(rèn)該代表客戶機(jī)已正常接收在該 代表客戶機(jī)應(yīng)保存的塊數(shù)據(jù)之前的所有塊數(shù)據(jù)之后發(fā)送響應(yīng)應(yīng)答至服務(wù)器。 因此,能夠保證代表客戶機(jī)始終保存從開始?jí)K數(shù)據(jù)至該代表客戶機(jī)應(yīng)保存的 塊數(shù)據(jù)的塊數(shù)據(jù)。因此,代表客戶機(jī)可處理來自其它客戶機(jī)的重發(fā)請(qǐng)求。
圖1為示出根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)的結(jié)構(gòu)實(shí)例的示圖。圖2A至圖2C為說明根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)結(jié)構(gòu)的示圖。圖3至圖6為說明根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)中數(shù)據(jù)通信的示圖。圖7和圖8為說明根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)中數(shù)據(jù)狀態(tài)的示圖。圖9為根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)中在服務(wù)器與客戶機(jī)之間進(jìn)行協(xié)調(diào)處理的流程的流程圖。圖10為根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)中由服務(wù)器執(zhí)行的發(fā)送處理流程的流程圖。圖11為根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)中由客戶機(jī)執(zhí)行的接收處理流程的 流程圖。圖12為根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)中由客戶機(jī)執(zhí)行的結(jié)束處理流程的 流程圖。圖13A和圖13B為示出作為本發(fā)明的背景的數(shù)據(jù)通信系統(tǒng)的結(jié)構(gòu)示圖。
具體實(shí)施方式
圖1為示出根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)的實(shí)例的示圖。圖2為說明根據(jù) 本發(fā)明的數(shù)據(jù)通信系統(tǒng)結(jié)構(gòu)的示圖。圖1中的數(shù)據(jù)通信系統(tǒng)為根據(jù)服務(wù)器-客戶機(jī)模式的計(jì)算機(jī)系統(tǒng)(服務(wù)器-客戶機(jī)系統(tǒng))。該數(shù)據(jù)通信系統(tǒng)包括服務(wù)器l、多個(gè)客戶機(jī)2 (21至23)以及網(wǎng)絡(luò)3,該網(wǎng)絡(luò)3連接服務(wù)器1與多個(gè)客戶機(jī)2 (21至23)。例如,網(wǎng) 絡(luò)3包括互聯(lián)網(wǎng)和LAN (局域網(wǎng))等,并執(zhí)行多播通信或單播通信。服務(wù)器1是用以通過多播通信發(fā)送數(shù)據(jù)的數(shù)據(jù)發(fā)送源服務(wù)器(計(jì)算機(jī))。 根據(jù)需要,服務(wù)器1也可以執(zhí)行單播通信。服務(wù)器1包括協(xié)調(diào)處理單元11、 響應(yīng)客戶機(jī)確定處理單元12、發(fā)送/接收處理單元13、客戶機(jī)列表14以及數(shù) 據(jù)緩沖器15??蛻魴C(jī)21是用以通過多播通信接收數(shù)據(jù)的數(shù)據(jù)接收客戶機(jī)(計(jì)算機(jī))。 根據(jù)需要,客戶機(jī)21也可以執(zhí)行單播通信。客戶機(jī)21包括連接請(qǐng)求處理 單元21K響應(yīng)應(yīng)答處理單元212、發(fā)送/接收處理單元213以及數(shù)據(jù)高速緩 存214。其它客戶機(jī)22和23與客戶機(jī)21相同。當(dāng)用作服務(wù)器1和客戶機(jī)2的計(jì)算機(jī)的CPU (未示出)執(zhí)行在計(jì)算機(jī)的 主存儲(chǔ)器(未示出)上具有的處理單元的處理程序時(shí),實(shí)現(xiàn)各處理單元11 至13以及211至213。在服務(wù)器1中,協(xié)調(diào)處理單元11在開始發(fā)送數(shù)據(jù)之前執(zhí)行協(xié)調(diào)處理。 進(jìn)行協(xié)調(diào)處理,以預(yù)先在服務(wù)器l中對(duì)客戶機(jī)2進(jìn)行登記,該客戶機(jī)2通過 多播通信從服務(wù)器1接收數(shù)據(jù)。具體地,如圖2A所示,協(xié)調(diào)處理單元11從客戶機(jī)2的連接請(qǐng)求處理單 元211接收到與多播通信連接的請(qǐng)求,直至服務(wù)器1被指示開始數(shù)據(jù)發(fā)送。 通過連接請(qǐng)求處理單元211,期望接收該數(shù)據(jù)的客戶機(jī)2發(fā)送該連接請(qǐng)求至 服務(wù)器1?;谂c客戶機(jī)2通信所接收的連接請(qǐng)求,協(xié)調(diào)處理單元11創(chuàng)建所 有客戶機(jī)2的客戶機(jī)列表14。如圖2B所示,客戶機(jī)列表14是登記通過多播通信接收數(shù)據(jù)的多個(gè)客戶 機(jī)2的列表。例如,客戶機(jī)列表14存儲(chǔ)(登記)與每一客戶機(jī)(名)的客 戶機(jī)(名)關(guān)聯(lián)的客戶機(jī)IP地址等。登記順序?yàn)閷?duì)服務(wù)器1的連接請(qǐng)求的接 收順序。在開始發(fā)送數(shù)據(jù)之前,發(fā)送/接收處理單元13將待發(fā)送的數(shù)據(jù)分成多個(gè) 塊數(shù)據(jù),如圖2C所示。將塊數(shù)據(jù)的大小設(shè)置為例如固定長度。例如,發(fā)送/ 接收處理單元13將一個(gè)數(shù)據(jù)(原始數(shù)據(jù))分成具有塊數(shù)據(jù)編號(hào)(以下,稱 為塊編號(hào))1至Z的塊數(shù)據(jù),所述塊數(shù)據(jù)編號(hào)在數(shù)據(jù)中是唯一的。具有塊編
號(hào)(N-l)的塊數(shù)據(jù)稱為塊數(shù)據(jù)(N-l)。塊數(shù)據(jù)(N-l)簡單表示為塊(N-l)。塊數(shù)據(jù)還被分成比該塊數(shù)據(jù)大小更小的多個(gè)數(shù)據(jù)(以下稱為單元數(shù)據(jù))。 對(duì)于每一單元數(shù)據(jù)執(zhí)行實(shí)際發(fā)送。將塊數(shù)據(jù)中唯一的數(shù)據(jù)編號(hào)給予單元數(shù)據(jù)。將一個(gè)數(shù)據(jù)存儲(chǔ)在例如存儲(chǔ)器(未示出)中。如圖2C所示,發(fā)送/接收 處理單元13從存儲(chǔ)器的數(shù)據(jù)中提取應(yīng)被發(fā)送的一個(gè)塊數(shù)據(jù),并將該塊數(shù)據(jù) 存儲(chǔ)在數(shù)據(jù)緩沖器15中。因此,數(shù)據(jù)緩沖器15僅存儲(chǔ)當(dāng)前由發(fā)送/接收處理 單元13發(fā)送的塊數(shù)據(jù)。因此,服務(wù)器1僅必須對(duì)當(dāng)前被發(fā)送的數(shù)據(jù)進(jìn)行高 速緩存。因此,僅必須設(shè)置一個(gè)數(shù)據(jù)緩沖器15,并且該數(shù)據(jù)緩沖器15的大 小可以較小。在開始發(fā)送數(shù)據(jù)之前,響應(yīng)客戶機(jī)確定處理單元(以下稱為確定處理單 元)12基于數(shù)據(jù)的劃分對(duì)多個(gè)塊數(shù)據(jù)中的每一塊數(shù)據(jù)分配代表客戶機(jī)2 (由 其處理)。因此,對(duì)于每一數(shù)據(jù)塊改變代表客戶機(jī)2。在客戶機(jī)接收到塊數(shù) 據(jù)時(shí),代表客戶機(jī)2是發(fā)送響應(yīng)應(yīng)答Ack的客戶機(jī)(響應(yīng)應(yīng)答客戶機(jī))。以預(yù)定順序?qū)⒍鄠€(gè)客戶機(jī)2分配為代表客戶機(jī)2。在發(fā)送一個(gè)數(shù)據(jù)時(shí)(在 一個(gè)會(huì)話期間),分配的順序固定。由于應(yīng)被分配的客戶機(jī)個(gè)數(shù)對(duì)于每一會(huì) 話而被改變,并且塊數(shù)據(jù)的個(gè)數(shù)對(duì)于每一數(shù)據(jù)改變,所以分配的順序?qū)τ诿?一會(huì)話和每一數(shù)據(jù)而被改變。具體地,確定處理單元12以客戶機(jī)列表14中登記的順序按循環(huán)的方式 基于客戶機(jī)列表14對(duì)多個(gè)塊數(shù)據(jù)中的每一個(gè)塊數(shù)據(jù)分配代表客戶機(jī)2。循環(huán) 表示以預(yù)定順序重復(fù)(周期性)分配順序。例如,基于圖2B中的客戶機(jī)列表14,將具有第一登記順序的客戶機(jī)#1 的客戶機(jī)21分配為對(duì)于塊(N-l)的代表客戶機(jī)2。在這種情況下,以循環(huán) 的方式,將塊(N)分配給作為客戶機(jī)#2的客戶機(jī)22,并且將塊(N+l)分 配給作為客戶機(jī)#3的客戶機(jī)23。當(dāng)分別將所有客戶機(jī)分配為代表客戶機(jī)2 一次時(shí),將作為客戶機(jī)#1的客戶機(jī)21第二次分配為對(duì)于塊(N+2)的代表 客戶機(jī)(參照?qǐng)D3至圖6)。因此,多個(gè)客戶機(jī)2以固定順序被平均分配為 代表客戶機(jī)2,并以循環(huán)的方式按對(duì)于每一塊數(shù)據(jù)的設(shè)置順序(根據(jù)客戶機(jī) 列表14)改變。發(fā)送/接收處理單元13通過多播通信將包括多個(gè)塊數(shù)據(jù)的數(shù)據(jù)發(fā)送至多
個(gè)客戶機(jī)2。實(shí)際上,發(fā)送/接收處理單元13發(fā)送塊數(shù)據(jù)至多播IP。多個(gè)客戶機(jī)2被預(yù)先限制在客戶機(jī)列表14中登記的客戶機(jī)2。具體地,發(fā)送/接收 處理單元13發(fā)送多個(gè)塊數(shù)據(jù)中的一個(gè)塊數(shù)據(jù)(第一或主塊數(shù)據(jù))以及表示 在多個(gè)客戶機(jī)中分配給塊數(shù)據(jù)的代表客戶機(jī)(第一代表客戶機(jī))2的信息。 在包括塊數(shù)據(jù)的分組(數(shù)據(jù)分組)頭中的預(yù)定位置存儲(chǔ)用以表示代表客戶機(jī) 2的信息。另一方面,在客戶機(jī)2,發(fā)送/接收處理單元213接收通過多播通信發(fā)送 的塊數(shù)據(jù)。實(shí)際上,發(fā)送/接收處理單元213接收發(fā)送至多播IP的塊數(shù)據(jù)((同 樣用于以下說明)的分組),并分析該塊數(shù)據(jù)。發(fā)送/接收處理單元213知曉 該塊數(shù)據(jù)是轉(zhuǎn)發(fā)至多播IP的分組,并且例如在存儲(chǔ)器(未示出)中存儲(chǔ)該塊 數(shù)據(jù)。發(fā)送/接收處理單元213檢査是否正常接收塊數(shù)據(jù)。當(dāng)發(fā)送/接收處理單 元213接收失敗時(shí),發(fā)送/接收處理單元213發(fā)送(包括在以下說明中采用的 相同的分組)重發(fā)請(qǐng)求Resend。通過多播通信發(fā)送該重發(fā)請(qǐng)求Resend。與響 應(yīng)應(yīng)答Ack不同,例如當(dāng)發(fā)送/接收處理單元213在接收例如塊數(shù)據(jù)中的單 元數(shù)據(jù)時(shí)(例如,當(dāng)沒有單元數(shù)據(jù)或單元數(shù)據(jù)包含錯(cuò)誤時(shí))失敗時(shí)(例如, 當(dāng)沒有單元數(shù)據(jù)或單元數(shù)據(jù)包含誤碼時(shí))發(fā)送該重發(fā)請(qǐng)求Resend。始終通過多播通信來發(fā)送該重發(fā)請(qǐng)求Resend。這是因?yàn)榭蛻魴C(jī)2不知道 哪個(gè)其它客戶機(jī)2保存有對(duì)于待發(fā)送的重發(fā)請(qǐng)求Resend的塊數(shù)據(jù)。在服務(wù)器1中,發(fā)送/接收處理單元13從客戶機(jī)2接收到對(duì)于當(dāng)前待被 發(fā)送的塊數(shù)據(jù)的重發(fā)請(qǐng)求Resend。因此,在服務(wù)器1的數(shù)據(jù)緩沖器15中對(duì) 該塊數(shù)據(jù)進(jìn)行高速緩存。因此,發(fā)送/接收處理單元13通過多播通信重新發(fā) 送對(duì)于當(dāng)前待被發(fā)送的塊數(shù)據(jù)的重發(fā)數(shù)據(jù)。服務(wù)器1僅重新發(fā)送對(duì)于當(dāng)前待 被發(fā)送的塊數(shù)據(jù)的重發(fā)數(shù)據(jù)。重發(fā)數(shù)據(jù)作為重發(fā)請(qǐng)求Resend的響應(yīng) ResendData (包括(在以下說明中采用的相同的)分組)來被發(fā)送重發(fā)數(shù)據(jù)。通過多播通信來發(fā)送響應(yīng)ResendData。這是因?yàn)椋谕瑫r(shí)發(fā)送對(duì)于塊數(shù) 據(jù)的多個(gè)重發(fā)請(qǐng)求Resend時(shí),響應(yīng)ResendData僅必須被發(fā)送一次??墒褂?單播通信來發(fā)送響應(yīng)ResendData。另一方面,對(duì)于已經(jīng)發(fā)送至服務(wù)器1 (發(fā)送/接收處理單元13)的塊數(shù)據(jù), 通過多播通信從多個(gè)客戶機(jī)2中的任一個(gè)重新發(fā)送重發(fā)數(shù)據(jù)。服務(wù)器1不重 發(fā)該塊數(shù)據(jù)。因此,該塊數(shù)據(jù)不存在于服務(wù)器1的數(shù)據(jù)緩沖器15中。在服務(wù)器1中,當(dāng)發(fā)送/接收處理單元13結(jié)束一個(gè)塊數(shù)據(jù)的發(fā)送時(shí),發(fā)送/接收處理單元13向?qū)?yīng)于該塊數(shù)據(jù)的代表客戶機(jī)2發(fā)送響應(yīng)應(yīng)答Ack或 Nack (以下簡單稱為響應(yīng)應(yīng)答Ack)以及從對(duì)應(yīng)于該塊數(shù)據(jù)的代表客戶機(jī)2 接收響應(yīng)應(yīng)答Ack或Nack。響應(yīng)應(yīng)答Ack或Nack包括用以表示發(fā)送/接收 處理單元13接收數(shù)據(jù)(塊數(shù)據(jù))成功(正常接收數(shù)據(jù))或接收數(shù)據(jù)失敗的 信息(包括(在以下說明中采用的相同的)分組)。當(dāng)發(fā)送/接收處理單元 13從代表客戶機(jī)2接收到對(duì)于塊數(shù)據(jù)的響應(yīng)應(yīng)答Ack時(shí),發(fā)送/接收處理單 元13結(jié)束塊數(shù)據(jù)的發(fā)送,并發(fā)送下一塊數(shù)據(jù)。當(dāng)發(fā)送/接收處理單元13接收 到響應(yīng)應(yīng)答Nack時(shí),發(fā)送/接收處理單元13基于在Nack中描述的塊的數(shù)據(jù) 編號(hào)重發(fā)塊數(shù)據(jù)。當(dāng)客戶機(jī)2為代表客戶機(jī)2時(shí),客戶機(jī)21的響應(yīng)應(yīng)答處理單元212確 認(rèn)代表客戶機(jī)2已經(jīng)正常接收到與(代表客戶機(jī)2對(duì)其應(yīng)執(zhí)行響應(yīng)應(yīng)答的) 代表客戶機(jī)2對(duì)應(yīng)的在前塊數(shù)據(jù)(在前塊數(shù)據(jù))的塊數(shù)據(jù)。響應(yīng)應(yīng)答處理單 元212基于該確認(rèn)結(jié)果發(fā)送響應(yīng)應(yīng)答Ack至服務(wù)器1。因此,能夠保證在代 表客戶機(jī)2中已經(jīng)安全接收到從服務(wù)器1發(fā)送的塊數(shù)據(jù)。由于代表客戶機(jī)2已知服務(wù)器1的IP地址,所以使用單播通信將響應(yīng) 應(yīng)答Ack發(fā)送至服務(wù)器1 。因此,安全地將響應(yīng)應(yīng)答Ack發(fā)送至服務(wù)器l。 可通過多播通信來發(fā)送響應(yīng)應(yīng)答Ack。在服務(wù)器1中,當(dāng)發(fā)送/接收處理單元13從代表客戶機(jī)2接收到響應(yīng)應(yīng) 答Ack時(shí),發(fā)送/接收處理單元13通過多播通信將代表客戶機(jī)2對(duì)應(yīng)的數(shù)據(jù) 塊的后續(xù)塊數(shù)據(jù)(第二或后續(xù)塊數(shù)據(jù))以及用以表示分配給該第二塊數(shù)據(jù)的 代表客戶機(jī)(第二代表客戶機(jī))2的信息一起發(fā)送至多個(gè)客戶機(jī)2。代表客戶機(jī)2包括數(shù)據(jù)高速緩存214,用于進(jìn)行重新發(fā)送以及對(duì)代表客 戶機(jī)2對(duì)應(yīng)的塊數(shù)據(jù)進(jìn)行高速緩存,以將該塊數(shù)據(jù)重新發(fā)送至其它客戶機(jī)2。 即,當(dāng)客戶機(jī)21為代表客戶機(jī)2時(shí),發(fā)送/接收處理單元213在數(shù)據(jù)高速緩 存214中存儲(chǔ)客戶機(jī)21應(yīng)高速緩存(保存)的塊數(shù)據(jù)。在數(shù)據(jù)高速緩存214 中存儲(chǔ)的塊數(shù)據(jù)為客戶機(jī)21應(yīng)發(fā)送響應(yīng)應(yīng)答Ack至服務(wù)器1的塊數(shù)據(jù)。因 此,服務(wù)器1不必包括數(shù)據(jù)高速緩存。通過將塊數(shù)據(jù)僅重發(fā)至塊數(shù)據(jù)當(dāng)前被 發(fā)送到的代表客戶機(jī)2來簡單保障整個(gè)系統(tǒng)的數(shù)據(jù)。代表客戶機(jī)2在接收到 用以表示代表客戶機(jī)2被第二次分配為代表客戶機(jī)2的信息之后丟棄被高速 緩存的塊數(shù)據(jù)。在代表客戶機(jī)2中,在發(fā)送響應(yīng)應(yīng)答Ack之前,發(fā)送/接收處理單元213 發(fā)送在該塊數(shù)據(jù)之前的塊數(shù)據(jù)中沒有正常接收到的塊數(shù)據(jù)的重發(fā)請(qǐng)求 Resend至多個(gè)客戶機(jī)2中的其它客戶機(jī)2。發(fā)送/接收處理單元213從其它客 戶機(jī)2接收到未正常接收到的塊數(shù)據(jù)。另一方面,當(dāng)(代表)客戶機(jī)2從多個(gè)客戶機(jī)2中的其它客戶機(jī)2接收 到對(duì)于高速緩存的塊數(shù)據(jù)的重新發(fā)送請(qǐng)求Resend時(shí),客戶機(jī)2通過多播通 信或單播通信發(fā)送該塊數(shù)據(jù)。目卩,當(dāng)接收的分組為重發(fā)請(qǐng)求Resend,以及為 對(duì)于作為代表客戶機(jī)2的客戶機(jī)2發(fā)送和接收的響應(yīng)應(yīng)答Ack的塊數(shù)據(jù)時(shí), 客戶機(jī)2響應(yīng)于重發(fā)請(qǐng)求Resend。在服務(wù)器1中,當(dāng)發(fā)送/接收處理單元13結(jié)束所有塊數(shù)據(jù)的發(fā)送時(shí),發(fā) 送/接收處理單元13通過多播通信發(fā)送用以表示數(shù)據(jù)發(fā)送結(jié)束的數(shù)據(jù)發(fā)送結(jié) 束信息至多個(gè)客戶機(jī)2。實(shí)際上,如圖2C所示,發(fā)送數(shù)據(jù)發(fā)送結(jié)束的分組。 在任一塊數(shù)據(jù)的發(fā)送結(jié)束時(shí),能夠執(zhí)行該發(fā)送處理。已經(jīng)接收到數(shù)據(jù)發(fā)送結(jié)束的分組的多個(gè)客戶機(jī)2分別確認(rèn)是否己經(jīng)正常 接收所有多個(gè)塊數(shù)據(jù),并發(fā)送對(duì)于數(shù)據(jù)發(fā)送結(jié)束的響應(yīng)應(yīng)答Ack至服務(wù)器1 。 即,當(dāng)對(duì)于所有塊數(shù)據(jù)編號(hào)的塊數(shù)據(jù)的接收已經(jīng)結(jié)束時(shí),多個(gè)客戶機(jī)2發(fā)送 響應(yīng)應(yīng)答Ack至服務(wù)器1 。所有客戶機(jī)2通過多播通信或單播通信發(fā)送對(duì)于 數(shù)據(jù)發(fā)送結(jié)束的響應(yīng)應(yīng)答Ack。當(dāng)對(duì)于所有塊數(shù)據(jù)編號(hào)的塊數(shù)據(jù)的接收沒有 結(jié)束時(shí),多個(gè)客戶機(jī)2通過多播通信發(fā)送重發(fā)請(qǐng)求Resend。當(dāng)發(fā)送/接收處理單元13已經(jīng)從所有客戶機(jī)2接收到對(duì)于數(shù)據(jù)發(fā)送結(jié)束 的響應(yīng)應(yīng)答Ack時(shí),該發(fā)送/接收處理單元13還發(fā)送用以表示通信結(jié)束的通 信結(jié)束信息(的分組)至所有(多個(gè))客戶機(jī)2。所有的客戶機(jī)2分別保持 通信(會(huì)話),直至客戶機(jī)2接收到通信結(jié)束的分組,并準(zhǔn)備從其它客戶機(jī) 接收重發(fā)請(qǐng)求Resend。如上所述,所有的客戶機(jī)2向/從服務(wù)器1發(fā)送/接收響應(yīng)應(yīng)答Ack,并 根據(jù)來自服務(wù)器l的指令結(jié)束通信。即,僅對(duì)于數(shù)據(jù)發(fā)送終止信息由所有客 戶機(jī)2來執(zhí)行僅使用代表客戶機(jī)2執(zhí)行的響應(yīng)應(yīng)答Ack。因此,能夠保證在所有客戶機(jī)2中的所有塊數(shù)據(jù)的接收和一致性。
以下,將參照?qǐng)D3至圖8具體說明根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)中的數(shù)據(jù)通信。圖3、 4、 5和6是說明根據(jù)本發(fā)明的在數(shù)據(jù)通信系統(tǒng)中的數(shù)據(jù)通信的 示圖。在圖3、 4、 5和6中分別示出塊(N-l)的發(fā)送、塊(N)的發(fā)送、塊 (N+l)的發(fā)送以及塊(N+2)的發(fā)送。圖7和圖8為說明根據(jù)本發(fā)明的數(shù) 據(jù)通信系統(tǒng)中的數(shù)據(jù)狀態(tài)的示圖。如圖3所示,在數(shù)據(jù)通信系統(tǒng)中, 一個(gè)服務(wù)器1和三個(gè)客戶機(jī)21至23 連接至網(wǎng)絡(luò)3。服務(wù)器1具有IP地址"A.B.C.D",客戶機(jī)21、 22和23分 別具有IP地址"A.B.C.E" 、 "A.B.C.F"和"A.B.C.G"。網(wǎng)絡(luò)3具有多播 IP地址。以客戶機(jī)21、 22和23的順序在服務(wù)器1的客戶機(jī)列表14中登記所述 三個(gè)客戶機(jī)21、 22和23。因此,分別將客戶機(jī)號(hào)#1、 #2和#3分配給三個(gè)客 戶機(jī)21、 22和23。因此,客戶機(jī)21、 22和23以該順序運(yùn)行為代表客戶機(jī)。如圖2C所示,將應(yīng)該通過多播通信來發(fā)送的數(shù)據(jù)分為具有塊編號(hào)1至 Z的塊數(shù)據(jù)。服務(wù)器1當(dāng)前正在通過多播通信發(fā)送塊(N-l)(發(fā)送塊(N-l) 至多播IP地址)。塊(N-l)的代表客戶機(jī)(即,在當(dāng)前點(diǎn)的代表客戶機(jī)) 為客戶機(jī)#1。在圖3中,代表客戶機(jī)#1在當(dāng)前點(diǎn)對(duì)于代表客戶機(jī)#1應(yīng)發(fā)送的響應(yīng)應(yīng) 答Ack的塊(N-l)進(jìn)行高速緩存。因此,在代表客戶機(jī)#1中保存塊(N-l)。 在這種情況下,代表客戶機(jī)#1確認(rèn)在代表客戶機(jī)#1中是否己經(jīng)正常接收到 直到對(duì)于代表客戶機(jī)W應(yīng)發(fā)送的響應(yīng)應(yīng)答Ack的塊(N-l)的所有塊數(shù)據(jù)。服務(wù)器1正在發(fā)送塊(N-l),好像服務(wù)器1正在僅發(fā)送塊(N-l)的數(shù) 據(jù)至一個(gè)代表客戶機(jī)#1。此外,服務(wù)器1僅從一個(gè)代表客戶機(jī)#1獲得響應(yīng)應(yīng) 答Ack (對(duì)于圖4至圖6保持相同)。因此,根據(jù)響應(yīng)應(yīng)答Ack的接收,服 務(wù)器l結(jié)束待發(fā)送的塊(N-l)的發(fā)送??蛻魴C(jī)#1至#3接收到塊(N-l)。在處理塊(N-l)之后,直至下一次再將客戶機(jī)#1分配為代表客戶機(jī), 響應(yīng)于來自其它客戶機(jī)#2和#3的對(duì)于塊(N-l)的重發(fā)請(qǐng)求Resend,客戶機(jī) #1發(fā)送該數(shù)據(jù)至其它客戶機(jī)#2和#3。在客戶機(jī)#1中,保證已經(jīng)正常接收到 塊(N-l)。在圖3中的處理之后,如圖4所示,服務(wù)器1改變待發(fā)送的塊數(shù)據(jù)。艮P, 服務(wù)器1通過多播通信重新發(fā)送塊(N)來代替塊(N-l)。服務(wù)器1還根據(jù) 該塊數(shù)據(jù)的改變來改變代表客戶機(jī)。即,將客戶機(jī)#2重新分配為代表客戶機(jī) 來代替客戶機(jī)#1。在圖4中,使用改變?yōu)榭蛻魴C(jī)#2的代表客戶機(jī)2來執(zhí)行發(fā)送處理。以與客戶機(jī)#1相同的方式,客戶機(jī)#2對(duì)塊(N)進(jìn)行高速緩存。當(dāng)客戶機(jī)#3接 收塊(N-l)失敗時(shí),客戶機(jī)#3請(qǐng)求客戶機(jī)#1 (精確地,多播IP)以重發(fā)塊 (N-l)的數(shù)據(jù)。由于客戶機(jī)#1保存有塊(N-l),所以客戶機(jī)#1可重發(fā)該 數(shù)據(jù)。因此,當(dāng)客戶機(jī)約接收塊(N-l)失敗時(shí),客戶機(jī)#3發(fā)送對(duì)于塊(N-l) 的重發(fā)請(qǐng)求Resend至多播IP。由于客戶機(jī)#1保存有塊(N-l),所以客戶機(jī) #1發(fā)送塊(N-l)至客戶機(jī)#3,作為對(duì)于重發(fā)請(qǐng)求Resend的響應(yīng)ResendData。 因此,能夠恢復(fù)在客戶機(jī)#3中的接收時(shí)的失敗。因此,服務(wù)器l未處理來自 客戶機(jī)#3的重發(fā)請(qǐng)求Resend。另一方面,客戶機(jī)#2發(fā)送響應(yīng)應(yīng)答Ack至服 務(wù)器l。因此,保證由客戶機(jī)#2正常接收直到塊(N)的數(shù)據(jù)。因此,以這樣的方式,服務(wù)器1結(jié)束通過多播通信對(duì)待發(fā)送的塊(N) 的發(fā)送??蛻魴C(jī)#1至#3接收塊(N)。代表客戶機(jī)#2確認(rèn)正常接收直到代 表客戶機(jī)存2應(yīng)發(fā)送響應(yīng)應(yīng)答Ack的塊(N)的數(shù)據(jù)。之后,客戶機(jī)#2發(fā)送對(duì) 于塊(N)的響應(yīng)應(yīng)答至服務(wù)器l。在圖4的處理之后,如圖5所示,服務(wù)器1改變待發(fā)送的塊數(shù)據(jù)。艮口, 服務(wù)器1通過多播通信重新發(fā)送塊(N+l)來代替塊(N)。服務(wù)器1還根 據(jù)該塊數(shù)據(jù)的改變來改變代表客戶機(jī)。即,將客戶機(jī)#3重新分配為代表客戶 機(jī)來代替客戶機(jī)#2。在圖5中,使用改變?yōu)榭蛻魴C(jī)#3的代表客戶機(jī)來執(zhí)行發(fā)送處理。以與客 戶機(jī)#1和#2相同的方式,客戶機(jī)#3對(duì)塊(N+l)進(jìn)行高速緩存。當(dāng)客戶機(jī)#1接收塊(N)失敗時(shí),客戶機(jī)#1發(fā)送對(duì)于塊(N)的重發(fā)請(qǐng) 求Resend至多播IP。由于客戶機(jī)#2對(duì)塊(N)進(jìn)行高速緩存,所以客戶機(jī) #2重發(fā)塊(N)。因此,客戶機(jī)#1可恢復(fù)塊(N)的接收失敗??蛻魴C(jī)#3發(fā)送對(duì)于塊(N+l)的響應(yīng)應(yīng)答Ack。因此,保證在客戶機(jī)#3 中正確保存直到塊(N+l)的塊數(shù)據(jù)。因此,以這樣的方式,服務(wù)器1結(jié)束通過多播通信對(duì)待發(fā)送的塊(N+l) 的發(fā)送。客戶機(jī)#1至#3接收塊(N+l)。代表客戶機(jī)#3確認(rèn)正常接收直到 代表客戶機(jī)#3應(yīng)發(fā)送響應(yīng)應(yīng)答Ack的塊(N+l)的數(shù)據(jù)。之后,客戶機(jī)#3發(fā)送對(duì)于塊(N+l)的響應(yīng)應(yīng)答至服務(wù)器l。在圖5的處理之后,如圖6所示,服務(wù)器1改變待發(fā)送的塊數(shù)據(jù)。艮P, 服務(wù)器1通過多播通信重新發(fā)送塊(N+2)來代替塊(N+l)。服務(wù)器1還 根據(jù)該塊數(shù)據(jù)的改變來改變代表客戶機(jī)。即,將客戶機(jī)#1重新分配為代表客 戶機(jī)來代替客戶機(jī)#3。在圖6中,根據(jù)客戶機(jī)列表14的循環(huán)由客戶機(jī)#1再次對(duì)塊(N+2)進(jìn) 行響應(yīng)應(yīng)答和高速緩存。如上述情況,客戶機(jī)#1對(duì)塊(N+2)執(zhí)行處理。由客戶機(jī)#1進(jìn)行的塊(N+2)的發(fā)送表示服務(wù)器1始終在發(fā)送之前接收 到對(duì)于塊(N+l)的響應(yīng)應(yīng)答Ack。因此,其它客戶機(jī)#2和#3已經(jīng)確定接收 到從塊(N-l)至塊(N+l)的所有塊數(shù)據(jù)。因此,客戶機(jī)#1可丟棄對(duì)于先 前響應(yīng)應(yīng)答Ack被發(fā)送的塊(N-l)。艮口,由于客戶機(jī)#2和#3己經(jīng)發(fā)送對(duì)于塊(N)和塊(N+l)的響應(yīng)應(yīng)答 Ack,所以保證客戶機(jī)#2和#3始終已接收到塊(N-l)。因此,客戶機(jī)#1可 丟棄塊(N-l)。因此,嚴(yán)格地講,完成對(duì)于塊(N-l)的處理。以這樣的方 式,當(dāng)一次將所有客戶機(jī)2分配為代表客戶機(jī)2時(shí),由所有客戶機(jī)2接收到 被客戶機(jī)2接收到的塊數(shù)據(jù)(N-l) 、 (N)和(N+l)。如圖7和圖8中所示總結(jié)出上述處理。在圖7中,服務(wù)器l當(dāng)前正在發(fā) 送塊(N+l)??蛻魴C(jī)23為代表客戶機(jī)2。其它客戶機(jī)21和22通過多播通 信正在接收(獲得)同一塊(N+l)。由于服務(wù)器1正在發(fā)送塊(N+l), 所以服務(wù)器1在發(fā)送之前已經(jīng)接收到對(duì)于塊(N)的應(yīng)答響應(yīng)Ack。對(duì)于其 它塊數(shù)據(jù)同樣。因此,保證由客戶機(jī)2中的任一個(gè)正常接收直到塊(N)的 塊數(shù)據(jù),并且在客戶機(jī)2中存在該塊數(shù)據(jù)。在圖8中,服務(wù)器1發(fā)送塊(N+2)。根據(jù)塊(N+2)的發(fā)送,將客戶 機(jī)21分配為代表客戶機(jī)2。在將所有客戶機(jī)2分配為代表客戶機(jī)2 —次時(shí), 代表客戶機(jī)21已正常接收到數(shù)據(jù)。因此,代表客戶機(jī)21已確定接收到從塊 (N-l)至塊(N+l)的塊數(shù)據(jù)。以這樣的方式,保證在將所有客戶機(jī)2分配 為代表客戶機(jī)2 —次時(shí),保證被發(fā)送的塊數(shù)據(jù)已由所有客戶機(jī)2接收到。當(dāng)代表客戶機(jī)21在該狀態(tài)下接收塊(N+2)失敗時(shí),接收到對(duì)于塊(N+2) 的重發(fā)請(qǐng)求Resend的服務(wù)器l重新發(fā)送塊(N+2)。當(dāng)其它客戶機(jī)22和23接收塊(N+2)失敗時(shí),接收到對(duì)于塊(N+2)的重發(fā)請(qǐng)求Resend的代表客 戶機(jī)21重新發(fā)送塊(N+2)。例如,當(dāng)客戶機(jī)21接收塊(N)失敗時(shí),客戶機(jī)21發(fā)送對(duì)于塊(N) 的重發(fā)請(qǐng)求Resend。接收到對(duì)于塊(N)的該重發(fā)請(qǐng)求Resend的代表客戶機(jī) 22重新發(fā)送塊(N)。即,代表客戶機(jī)22發(fā)送響應(yīng)ResendData。以這樣的方式,由于代表客戶機(jī)2對(duì)該數(shù)據(jù)進(jìn)行高速緩存,并以循環(huán)的 方式將客戶機(jī)21至23輪流分配為代表客戶機(jī)2,所以能夠在服務(wù)器1中不 提供高速緩存的情況下正確執(zhí)行處理。能夠處理在客戶機(jī)2中接收數(shù)據(jù)失敗 的情況。此外,即使存在幾百至幾千個(gè)客戶機(jī)2,也能夠同時(shí)通過多播通信 執(zhí)行發(fā)送和接收。因此,系統(tǒng)的性能沒有降低。圖9為根據(jù)本發(fā)明的在數(shù)據(jù)通信系統(tǒng)中在服務(wù)器1與客戶機(jī)之間進(jìn)行協(xié) 調(diào)處理的流程的流程圖。在步驟Sll,服務(wù)器1處于等待來自客戶機(jī)2的連接請(qǐng)求的狀態(tài)。在步 驟S12,客戶機(jī)2在該狀態(tài)下發(fā)送連接請(qǐng)求至服務(wù)器1,并且在步驟S13進(jìn) 入等待數(shù)據(jù)發(fā)送的狀態(tài)。當(dāng)在步驟S14輸入開始發(fā)送數(shù)據(jù)的指令時(shí),服務(wù)器 l停止接收來自客戶機(jī)2的連接請(qǐng)求,創(chuàng)建客戶機(jī)列表14,基于該客戶機(jī)列 表14確定代表客戶機(jī)2,并在步驟S15開始發(fā)送數(shù)據(jù)。圖10為根據(jù)本發(fā)明在數(shù)據(jù)通信系統(tǒng)中由服務(wù)器1執(zhí)行的發(fā)送處理流程 的流程圖。在圖9的處理之后,服務(wù)器l開始發(fā)送塊數(shù)據(jù),并在歩驟S21判斷(檢 查)應(yīng)被發(fā)送的塊數(shù)據(jù)中的數(shù)據(jù)編號(hào)。在步驟S22,服務(wù)器l通過多播通信 發(fā)送包含該數(shù)據(jù)編號(hào)的數(shù)據(jù)的分組(數(shù)據(jù)分組)。在發(fā)送期間,在步驟S23, 當(dāng)服務(wù)器1從客戶機(jī)2接收到分組時(shí),在步驟S24,服務(wù)器1檢查該分組是 否為用以表示塊數(shù)據(jù)結(jié)束(發(fā)送結(jié)束分組)的分組。當(dāng)該分組不是發(fā)送結(jié)束 分組(是包含重發(fā)請(qǐng)求Resend的分組)時(shí),服務(wù)器重復(fù)在步驟S21至S24 的處理。當(dāng)該分組是發(fā)送結(jié)束分組時(shí),在步驟S25,服務(wù)器l向/從代表客戶機(jī)2 發(fā)送/接收響應(yīng)應(yīng)答Ack,并基于該響應(yīng)應(yīng)答Ack檢査是否有必要向代表客戶 機(jī)2重新發(fā)送塊數(shù)據(jù)。當(dāng)重新發(fā)送有必要時(shí),服務(wù)器1重復(fù)在步驟S21至S26 的處理。當(dāng)重新發(fā)送沒有必要時(shí),服務(wù)器l結(jié)束發(fā)送塊數(shù)據(jù)。
圖11為在根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)中由客戶機(jī)執(zhí)行接收處理流程的 流程圖。圖11示出與服務(wù)器執(zhí)行的圖10中的處理對(duì)應(yīng)的由客戶機(jī)執(zhí)行的處 理。在步驟S31,開始接收塊數(shù)據(jù)的客戶機(jī)2從服務(wù)器1接收分組。在步驟 S32,客戶機(jī)2檢査該分組是重發(fā)請(qǐng)求分組還是數(shù)據(jù)分組。當(dāng)該分組為重發(fā) 請(qǐng)求分組時(shí),在歩驟S33,客戶機(jī)2重發(fā)由客戶機(jī)2獲得的塊數(shù)據(jù),并重復(fù) 在步驟S31和S32中的處理。當(dāng)該分組為數(shù)據(jù)分組時(shí),在步驟S34,客戶機(jī)2確認(rèn)正在獲得的該塊數(shù) 據(jù)。在步驟S35,客戶機(jī)2檢査該處理是否繼續(xù),重發(fā)是否有必要,以及塊 數(shù)據(jù)是否結(jié)束。當(dāng)該處理繼續(xù)時(shí),客戶機(jī)2重復(fù)在步驟S31至S35中的處理。 當(dāng)重發(fā)有必要時(shí),在步驟S36,客戶機(jī)2發(fā)送重發(fā)請(qǐng)求Resend,并重復(fù)在歩 驟S31至S35中的處理。當(dāng)塊數(shù)據(jù)結(jié)束時(shí),在步驟S37,在客戶機(jī)2為代表 客戶機(jī)的情況下,客戶機(jī)2向/從服務(wù)器1發(fā)送/接收響應(yīng)應(yīng)答Ack,并結(jié)束 塊數(shù)據(jù)的接收。當(dāng)客戶機(jī)2不是代表客戶機(jī)時(shí),省略步驟S37。圖12為在根據(jù)本發(fā)明的數(shù)據(jù)通信系統(tǒng)中由客戶機(jī)執(zhí)行的結(jié)束處理流程 的流程圖。在步驟S41,開始接收塊數(shù)據(jù)的客戶機(jī)2從服務(wù)器1接收分組。在步驟 S42,客戶機(jī)2檢査該分組是否為重發(fā)請(qǐng)求分組、數(shù)據(jù)發(fā)送結(jié)束分組、或者 通信結(jié)束分組。當(dāng)該分組為重發(fā)請(qǐng)求分組時(shí),在步驟S43,客戶機(jī)2重發(fā)由 客戶機(jī)2獲得的塊數(shù)據(jù),并重復(fù)在步驟S41和S42中的處理。當(dāng)該分組為數(shù)據(jù)發(fā)送結(jié)束分組時(shí),在步驟S44,客戶機(jī)2確認(rèn)正在獲得 的該塊數(shù)據(jù),并在步驟S45檢査是否有必要重發(fā),或者塊數(shù)據(jù)是否結(jié)束。當(dāng) 有必要重發(fā)時(shí),在步驟S46,客戶機(jī)2發(fā)送重發(fā)請(qǐng)求Resend,并重復(fù)在步驟 S41和S45中的處理。當(dāng)該分組為數(shù)據(jù)發(fā)送結(jié)束分組時(shí),在步驟S47,在不 考慮客戶機(jī)2是否為代表客戶機(jī)的情況下,客戶機(jī)2向/從服務(wù)器1發(fā)送/接 收響應(yīng)應(yīng)答Ack,并重復(fù)在步驟S41和S45中的處理。因此,所有客戶機(jī)2 執(zhí)行響應(yīng)應(yīng)答Ack。當(dāng)在步驟S42中該分組為通信結(jié)束分組時(shí),客戶機(jī)2結(jié)束用以接收塊數(shù) 據(jù)的多播通信。在該附圖中沒有示出與客戶機(jī)2執(zhí)行的在圖12中的處理對(duì)應(yīng)的由服務(wù) 器1執(zhí)行的處理。以下簡單說明該處理。從圖12可以看出,在發(fā)送最后塊 數(shù)據(jù)之后,服務(wù)器1通過多播通信將數(shù)據(jù)發(fā)送結(jié)束分組發(fā)送至客戶機(jī)。在從 所有客戶機(jī)接收到響應(yīng)應(yīng)答Ack之后,服務(wù)器1通過多播通信發(fā)送通信結(jié)束 分組至客戶機(jī)。如上所述,根據(jù)本發(fā)明的數(shù)據(jù)通信的方法,能夠防止響應(yīng)應(yīng)答處理集中 在一個(gè)代表客戶機(jī)上,并保證多個(gè)塊數(shù)據(jù)存在于多個(gè)客戶機(jī)中的任一個(gè)中。 因此,能夠以預(yù)定順序?qū)⒍鄠€(gè)客戶機(jī)固定且平均地分配為代表客戶機(jī)。能夠 保證代表客戶機(jī)始終保存從開始?jí)K數(shù)據(jù)至代表客戶機(jī)應(yīng)保存的塊數(shù)據(jù)的所 有塊數(shù)據(jù)。此外,代表客戶機(jī)可處理來自其它客戶機(jī)的對(duì)于被保存的塊數(shù)據(jù) 的重發(fā)請(qǐng)求,并且可以將重發(fā)處理的負(fù)載平均分布給多個(gè)客戶機(jī)。另一方面,服務(wù)器僅必須對(duì)正被發(fā)送的塊數(shù)據(jù)進(jìn)行高速緩存,并且不必 對(duì)所有塊數(shù)據(jù)進(jìn)行高速緩存。因此,能夠消除服務(wù)器上對(duì)所有塊數(shù)據(jù)進(jìn)行高 速緩存的負(fù)載。服務(wù)器不必對(duì)己經(jīng)發(fā)送的塊數(shù)據(jù)執(zhí)行重發(fā)處理。因此,能夠 消除服務(wù)器上對(duì)已經(jīng)發(fā)送的塊進(jìn)行重發(fā)處理的負(fù)載。因此,即使在客戶機(jī)個(gè)數(shù)增加時(shí),也能夠防止由于客戶機(jī)個(gè)數(shù)增加而造 成的通信速度下降的情況。即使在服務(wù)器1執(zhí)行多個(gè)通信會(huì)話時(shí),也能夠防 止由于執(zhí)行通信會(huì)話而造成的通信速度下降的情況。因此,能夠?qū)崿F(xiàn)快速和 高可靠性的大量數(shù)據(jù)通信。
權(quán)利要求
1.一種用于數(shù)據(jù)通信的方法,利用該方法使得服務(wù)器通過多播通信將包含多個(gè)塊數(shù)據(jù)的數(shù)據(jù)發(fā)送至多個(gè)客戶機(jī),該方法包括如下步驟服務(wù)器將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī),該代表客戶機(jī)在接收到塊數(shù)據(jù)時(shí)以預(yù)定順序發(fā)送對(duì)于多個(gè)塊數(shù)據(jù)中每一個(gè)塊數(shù)據(jù)的響應(yīng)應(yīng)答;該服務(wù)器通過多播通信向所述多個(gè)客戶機(jī)發(fā)送所述多個(gè)塊數(shù)據(jù)中的一個(gè)塊數(shù)據(jù)以及用以表示所述多個(gè)客戶機(jī)中分配給該一個(gè)塊數(shù)據(jù)的代表客戶機(jī)的信息;該代表客戶機(jī)發(fā)送該響應(yīng)應(yīng)答至該服務(wù)器;以及當(dāng)該服務(wù)器從該代表客戶機(jī)接收到響應(yīng)應(yīng)答時(shí),該服務(wù)器通過多播通信向所述多個(gè)客戶機(jī)發(fā)送所述多個(gè)塊數(shù)據(jù)中的該一個(gè)塊數(shù)據(jù)的后續(xù)塊數(shù)據(jù)以及用以表示所述多個(gè)客戶機(jī)中分配給該后續(xù)塊數(shù)據(jù)的新代表客戶機(jī)的信息。
2. 如權(quán)利要求1所述的方法,其中所述代表客戶機(jī)通過多播通信或單 播通信發(fā)送該響應(yīng)應(yīng)答至該服務(wù)器。
3. 如權(quán)利要求1所述的方法,其中該服務(wù)器在開始發(fā)送所述數(shù)據(jù)之前 將所述數(shù)據(jù)分成多個(gè)塊數(shù)據(jù),并基于該數(shù)據(jù)的劃分向所述多個(gè)塊數(shù)據(jù)中的每 一個(gè)塊數(shù)據(jù)分配該代表客戶機(jī)。
4. 如權(quán)利要求1所述的方法,其中在開始發(fā)送所述數(shù)據(jù)之前,該服務(wù) 器基于與所述多個(gè)客戶機(jī)的通信創(chuàng)建客戶機(jī)列表,在該客戶機(jī)列表中登記接 收所述數(shù)據(jù)的所述多個(gè)客戶機(jī);以及其中該服務(wù)器以循環(huán)的方式基于該客戶機(jī)列表并以在該客戶機(jī)列表中 的登記順序向所述多個(gè)塊數(shù)據(jù)中的每一個(gè)塊數(shù)據(jù)分配該代表客戶機(jī)。
5. 如權(quán)利要求4所述的方法,其中所述代表客戶機(jī)對(duì)于該代表客戶機(jī) 對(duì)應(yīng)的塊數(shù)據(jù)進(jìn)行高速緩存,以將該塊數(shù)據(jù)重新發(fā)送至其它客戶機(jī)。
6. 如權(quán)利要求5所述的方法,其中所述代表客戶機(jī)在接收到用以表示 將所述代表客戶機(jī)第二次分配為代表客戶機(jī)的信息之后丟棄所高速緩存的 塊數(shù)據(jù)。
7. 如權(quán)利要求6所述的方法,其中當(dāng)所述代表客戶機(jī)從所述多個(gè)客戶 機(jī)中的其它客戶機(jī)接收到對(duì)高速緩存的該塊數(shù)據(jù)的重發(fā)請(qǐng)求時(shí),所述代表客 戶機(jī)通過多播通信或單播通信發(fā)送該塊數(shù)據(jù)至所述其它客戶機(jī)。
8. 如權(quán)利要求5所述的方法,其中所述代表客戶機(jī)確定所述代表客戶 機(jī)是否正常接收到在所述多個(gè)塊數(shù)據(jù)中的該一個(gè)塊數(shù)據(jù)之前的所有塊數(shù)據(jù), 并基于該確定結(jié)果發(fā)送響應(yīng)應(yīng)答至該服務(wù)器。
9. 如權(quán)利要求5所述的方法,其中所述代表客戶機(jī)在發(fā)送該響應(yīng)應(yīng)答 之前將一重發(fā)請(qǐng)求發(fā)送至所述多個(gè)客戶機(jī)中的其它客戶機(jī),以請(qǐng)求重發(fā)在該 一個(gè)塊數(shù)據(jù)之前的塊數(shù)據(jù)中未正常接收到的塊數(shù)據(jù),并從所述其它客戶機(jī)接 收未正常接收到的該塊數(shù)據(jù)。
10. 如權(quán)利要求9所述的方法,其中所述代表客戶機(jī)通過多播通信發(fā)送 該重發(fā)請(qǐng)求。
11. 如權(quán)利要求IO所述的方法,其中所述其它客戶機(jī)通過多播通信或 單播通信發(fā)送未正常接收到的該塊數(shù)據(jù)。
12. 如權(quán)利要求1所述的方法,其中在該服務(wù)器結(jié)束發(fā)送所述多個(gè)塊數(shù) 據(jù)之后,該服務(wù)器發(fā)送用以表示數(shù)據(jù)發(fā)送結(jié)束的數(shù)據(jù)發(fā)送結(jié)束信息至所述多 個(gè)客戶機(jī);以及其中所述多個(gè)客戶機(jī)分別確認(rèn)是否所有塊數(shù)據(jù)都被正常接收到,并通過 多播通信或單播通信發(fā)送對(duì)該數(shù)據(jù)發(fā)送結(jié)束信息的響應(yīng)應(yīng)答至該服務(wù)器。
13. 如權(quán)利要求12所述的方法,其中當(dāng)該服務(wù)器從所述多個(gè)客戶機(jī)接 收到對(duì)該數(shù)據(jù)發(fā)送結(jié)束信息的該響應(yīng)應(yīng)答時(shí),該服務(wù)器將用以表示通信結(jié)束 的通信結(jié)束信息發(fā)送至所述多個(gè)客戶機(jī)。
14. 一種用于數(shù)據(jù)通信的裝置,其包括響應(yīng)客戶機(jī)確定處理單元,其將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī), 該代表客戶機(jī)在接收到一個(gè)塊數(shù)據(jù)時(shí)以循環(huán)的方式發(fā)送對(duì)于用以形成數(shù)據(jù) 的多個(gè)塊數(shù)據(jù)中每一個(gè)塊數(shù)據(jù)的響應(yīng)應(yīng)答;以及發(fā)送/接收處理單元,其通過多播通信向所述多個(gè)客戶機(jī)發(fā)送該一個(gè)塊數(shù) 據(jù)以及用以表示所述多個(gè)客戶機(jī)中分配給該一個(gè)塊數(shù)據(jù)的代表客戶機(jī)的信 息,并且在從該代表客戶機(jī)接收到該響應(yīng)應(yīng)答時(shí),其通過多播通信向所述多 個(gè)客戶機(jī)發(fā)送該一個(gè)塊數(shù)據(jù)的后續(xù)塊數(shù)據(jù)以及用以表示所述多個(gè)客戶機(jī)中 分配給該后續(xù)塊數(shù)據(jù)的新代表客戶機(jī)的信息。
15. —種用以在數(shù)據(jù)通信系統(tǒng)中實(shí)現(xiàn)服務(wù)器的程序,其中該數(shù)據(jù)通信系 統(tǒng)包括該服務(wù)器、多個(gè)客戶機(jī)以及連接該服務(wù)器與所述多個(gè)客戶機(jī)的網(wǎng)絡(luò),該程序使得計(jì)算機(jī)執(zhí)行以下步驟,包括將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī),該代表客戶機(jī)在接收到塊數(shù) 據(jù)時(shí)以循環(huán)的方式發(fā)送對(duì)于用以形成數(shù)據(jù)的多個(gè)塊數(shù)據(jù)中每一個(gè)塊數(shù)據(jù)的 響應(yīng)應(yīng)答;通過多播通信向所述多個(gè)客戶機(jī)發(fā)送一個(gè)塊數(shù)據(jù)以及用以表示所述多 個(gè)客戶機(jī)中分配給該一個(gè)塊數(shù)據(jù)的代表客戶機(jī)的信息;以及當(dāng)從該代表客戶機(jī)接收到該響應(yīng)應(yīng)答時(shí),通過多播通信向所述多個(gè)客戶 機(jī)發(fā)送該一個(gè)塊數(shù)據(jù)的后續(xù)塊數(shù)據(jù)以及用以表示所述多個(gè)客戶機(jī)中分配給 該后續(xù)塊數(shù)據(jù)的新代表客戶機(jī)的信息。
16. —種用于服務(wù)器中數(shù)據(jù)通信的方法,其中該服務(wù)器通過多播通信將 包括多個(gè)塊數(shù)據(jù)的數(shù)據(jù)發(fā)送至多個(gè)客戶機(jī),該方法包括以下步驟將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī),該代表客戶機(jī)在接收到一個(gè) 塊數(shù)據(jù)時(shí)以預(yù)定的順序向該服務(wù)器發(fā)送對(duì)于用以形成數(shù)據(jù)的多個(gè)塊數(shù)據(jù)中 每一個(gè)塊數(shù)據(jù)的響應(yīng)應(yīng)答;添加用以表示分配給任一塊數(shù)據(jù)的代表客戶機(jī)的信息至該一個(gè)塊數(shù)據(jù), 并通過多播通信將該信息發(fā)送至所述多個(gè)客戶機(jī);以及當(dāng)從該代表客戶機(jī)接收到該響應(yīng)應(yīng)答時(shí),通過多播通信向所述多個(gè)客戶 機(jī)發(fā)送與該響應(yīng)應(yīng)答對(duì)應(yīng)的該一個(gè)塊數(shù)據(jù)的后續(xù)塊數(shù)據(jù)以及用以表示分配 給該后續(xù)塊數(shù)據(jù)的新代表客戶機(jī)的信息。
17. —種用于客戶機(jī)中數(shù)據(jù)通信的方法,其中該客戶機(jī)通過多播通信從 服務(wù)器接收塊數(shù)據(jù),該方法包括如下步驟該服務(wù)器將多個(gè)客戶機(jī)中的一個(gè)分配為代表客戶機(jī),該代表客戶機(jī)在接 收到一個(gè)塊數(shù)據(jù)時(shí)以預(yù)定順序發(fā)送對(duì)于多個(gè)塊數(shù)據(jù)中每一個(gè)塊數(shù)據(jù)的響應(yīng) 應(yīng)答;該客戶機(jī)判斷是否將用以識(shí)別該客戶機(jī)的信息添加至從該服務(wù)器所接 收到的該一個(gè)塊數(shù)據(jù)中;以及在將用以識(shí)別該客戶機(jī)的信息添加至該一個(gè)塊數(shù)據(jù)中時(shí),該客戶機(jī)發(fā)送 對(duì)于所接收的該一個(gè)塊數(shù)據(jù)的響應(yīng)應(yīng)答至該服務(wù)器。
全文摘要
本發(fā)明公開用于數(shù)據(jù)通信的方法和裝置及其程序。例如,服務(wù)器將多個(gè)客戶機(jī)中的一個(gè)分配為多個(gè)塊數(shù)據(jù)中每一個(gè)塊數(shù)據(jù)的代表客戶機(jī)。服務(wù)器通過多播通信向所述多個(gè)客戶機(jī)發(fā)送該塊數(shù)據(jù)和用以表示分配給該塊數(shù)據(jù)的代表客戶機(jī)的信息。代表客戶機(jī)發(fā)送響應(yīng)應(yīng)答至服務(wù)器。當(dāng)服務(wù)器接收到響應(yīng)應(yīng)答時(shí),服務(wù)器通過多播通信向所述多個(gè)客戶機(jī)發(fā)送所述多個(gè)塊數(shù)據(jù)中該塊數(shù)據(jù)的后續(xù)塊數(shù)據(jù)以及用以表示多個(gè)客戶機(jī)中分配給該后續(xù)塊數(shù)據(jù)的新代表客戶機(jī)的信息。因此,由于服務(wù)器不需要對(duì)所有塊數(shù)據(jù)進(jìn)行高速緩存,所以能夠消除服務(wù)器的負(fù)擔(dān)。
文檔編號(hào)H04L12/56GK101155144SQ20071010396
公開日2008年4月2日 申請(qǐng)日期2007年5月17日 優(yōu)先權(quán)日2006年9月29日
發(fā)明者稻垣修 申請(qǐng)人:富士通株式會(huì)社