国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      安全的對等消息業(yè)務(wù)的制作方法

      文檔序號:7635459閱讀:163來源:國知局
      專利名稱:安全的對等消息業(yè)務(wù)的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及對等網(wǎng)絡(luò)領(lǐng)域,具體地說,本發(fā)明涉及用于在P2P網(wǎng)絡(luò)上安全通信的方法和系統(tǒng)。
      背景技術(shù)
      對等(P2P)網(wǎng)絡(luò)已隨著其主要應用是文件共享而變得越加流行。很多用戶正在采用P2P網(wǎng)絡(luò)進行通信,其中通過網(wǎng)絡(luò)協(xié)議(VoIP)P2P電話業(yè)務(wù)進行語音通信,例如Skype就是其中最流行的之一。為了在兩臺計算機之間使用Skype系統(tǒng),這兩臺計算機的用戶必須同時在線。

      發(fā)明內(nèi)容
      本發(fā)明具體表現(xiàn)為一種方法,用于在對等網(wǎng)絡(luò)中從主叫對等體向被叫對等體發(fā)送消息。該方法包括主叫對等體判斷被叫對等體是否離線。如果是,則將消息復制N次,其中N可以取決于對等網(wǎng)絡(luò)中一個對等體在線的概率和消息傳送的期望可靠性。發(fā)送這N個復制消息,以便存儲在N個相應對等體中。
      本發(fā)明還可以具體表現(xiàn)為一種方法,其中,當被叫對等體離線時,將消息發(fā)送到預定數(shù)量的其它對等體,并存儲在所述預定數(shù)量的在線的其它對等體中。此外,當被叫對等體上線時,將至少一個所存儲的消息發(fā)送到該被叫對等體。
      本發(fā)明還可以具體表現(xiàn)為一種方法,其中,當被叫對等體離線時,將消息進行壓縮以生成再現(xiàn)版本,其表示達到或超過門限質(zhì)量的該消息,將該壓縮消息發(fā)送到預定數(shù)量的其它對等體,并將該壓縮消息至少存儲在所述預定數(shù)量的在線的其它對等體中。此外,當被叫對等體上線時,將至少一個所存儲的壓縮消息發(fā)送到該被叫對等體。
      本發(fā)明還可以具體表現(xiàn)為一種方法,其中,當被叫對等體離線時,將消息分解為多層,從而,一個相應層或者多個相應層的組合表示該消息的一個版本。從分解消息的相應層中至少選擇一層達到或超過該消息的再現(xiàn)版本的門限質(zhì)量。將分解消息的相應層發(fā)送到預定數(shù)量的其它對等體,并存儲于所述預定數(shù)量的在線的其它對等體中。
      本發(fā)明還可以具體表現(xiàn)為對等網(wǎng)絡(luò),其包括在該對等網(wǎng)絡(luò)上進行通信的多個對等體。該對等網(wǎng)絡(luò)包括主叫對等體,用于生成呼叫者發(fā)出的消息;被叫對等體,用于接收該消息并向被叫用戶提供該消息;存儲對等體,用于存儲來自該主叫對等體的壓縮或分層消息。此外,當被叫對等體離線時,主叫對等體將壓縮或分層消息發(fā)送到預定數(shù)量的在線的存儲對等體,以及,當被叫對等體上線時,一個所述存儲對等體將其存儲的相應消息發(fā)送到所述被叫對等體。
      本發(fā)明還可以具體表現(xiàn)為對等網(wǎng)絡(luò)。該對等網(wǎng)絡(luò)包括主叫對等體,用于發(fā)送復制消息;被叫對等體,當被叫對等體可達時,被叫對等體通過一個或多個信箱對等體從主叫對等體接收一個或多個復制消息。當被叫對等體不可達時,每個信箱對等體接收并存儲要發(fā)送到被叫對等體的至少一個相應消息。此外,當被叫對等體可達時,每個信箱對等體將所存儲的消息發(fā)送到該被叫對等體。


      通過結(jié)合附圖閱讀下面的詳細描述,將能更好地理解本發(fā)明。需要強調(diào)的是,根據(jù)通常的慣例,這些圖的各種部件/元件并沒有按照比例畫出。相反,為了清楚起見,可以將各種部件/元件任意放大或縮小。此外,在這些附圖中,相同的標記用于表示相同的部件/元件。在這些附圖中包括下圖圖1、2和3是一個示例性的P2P網(wǎng)絡(luò)的示意圖,示出了依照本發(fā)明的各個示例性實施例的消息傳送方法。
      圖4A和4B是另一個示例性P2P網(wǎng)絡(luò)的示意圖,示出了依照本發(fā)明的各個示例性實施例的另外的消息傳送方法。
      圖5的框圖示出了用于本發(fā)明的某些示例性實施例的對等網(wǎng)絡(luò)中的對等體。
      圖6、7A、7B、8和9示出了依照本發(fā)明的各個示例性實施例用于在對等網(wǎng)絡(luò)中在主叫對等體和被叫對等體之間進行通信的方法的流程圖。
      具體實施例方式為了在市場上生存下去,未來的P2P通信系統(tǒng)應該能夠支持消息業(yè)務(wù),即一個用戶可以給另一用戶留下消息,這與當前的電話系統(tǒng)所支持的語音信箱功能類似。大多數(shù)當前的P2P網(wǎng)絡(luò)中的對等設(shè)備是計算機。但是,消費電子設(shè)備的當前增長趨勢已是模擬設(shè)備的數(shù)字化。因此,膠片照相機被數(shù)碼相機所取代,而模擬電視機被數(shù)字電視所取代。很多數(shù)字化用戶電子產(chǎn)品的發(fā)展趨勢就是可以通過網(wǎng)絡(luò)實現(xiàn)互聯(lián)。P2P技術(shù)在很多方面對于網(wǎng)絡(luò)消費電子設(shè)備都很有吸引力。例如,如果這些設(shè)備都是聯(lián)網(wǎng)的,那么,由終端用戶開發(fā)出的新應用可以很容易得以推廣。消費電子設(shè)備的聯(lián)網(wǎng)提出了類似問題,即,當用戶離線時,如何向該用戶傳送內(nèi)容。
      P2P網(wǎng)絡(luò)的自組織功能及其相對于較正式網(wǎng)絡(luò)的相對簡單性,對于用戶組建消費電子設(shè)備的私有網(wǎng)絡(luò)是很重要的功能。
      理想的情況是,任何這種P2P網(wǎng)絡(luò)都可以支持消息業(yè)務(wù)。該業(yè)務(wù)可以支持由各種用戶電子設(shè)備產(chǎn)生的各種媒體,包括文本、語音、視頻和圖像。消費電子設(shè)備的類型非常不同,從高功率的個人計算機到相對簡單的音樂播放器。這一差異性是任何消息系統(tǒng)在系統(tǒng)設(shè)計時都要考慮的問題。消費電子設(shè)備的另一個特點是網(wǎng)絡(luò)接入的不可靠性,尤其是在具有無線組件的網(wǎng)絡(luò)中。也就是說,即使某個設(shè)備當前在線,但當內(nèi)容已發(fā)出時,該設(shè)備可能離線,至少暫時離線。
      消息保密性 在傳統(tǒng)的客戶機/服務(wù)器結(jié)構(gòu)中實現(xiàn)的典型消息系統(tǒng)采用消息服務(wù)器,該服務(wù)器可以通過用戶驗證和/或消息加密來提供消息保密性。通常,將消息發(fā)送到服務(wù)器并存儲在其中,該服務(wù)器針對消息接收方控制消息的存儲。
      在P2P消息系統(tǒng)的示例性實施例中,并不存在與傳統(tǒng)的客戶機/服務(wù)器結(jié)構(gòu)中的服務(wù)器相對應的消息服務(wù)器。而是,當接收方在線時,可以將消息直接傳送到該接收方,而當該接收方離線時,可由對等體將其存儲起來。這種P2P消息系統(tǒng)可能存在一些保密性問題。例如,存儲(如,臨時地)消息的對等體可以使消息便于讀取。或者,除了接收方以外其他人也可以訪問存儲在該對等體上的消息。
      利用傳統(tǒng)的消息服務(wù)器實現(xiàn)的典型消息系統(tǒng)可以通過用戶驗證和消息加密來提供消息保密。這些傳統(tǒng)的消息服務(wù)器通常具有很大的存儲容量和很強大的處理器。
      理想情況下,P2P消息系統(tǒng)應該可以在接收方離線時以如下方式將消息存儲在對等體中,即,保證只有原定接收方可以讀取該消息,而網(wǎng)絡(luò)中任何其它節(jié)點的對等體都不能讀取。為此,可以將消息加密,從而,原定接收方和生成該消息的對等體可以解密該消息,而任何第三方對等體不能解密該消息。對于消息加密,可以利用原定對等體的公開密鑰或者共享密鑰。
      對于消息驗證,可以由生成消息的對等體以密碼的形式對該消息進行簽名。為此目的可以采用數(shù)字簽名方法。
      消息傳送的可靠性 P2P消息系統(tǒng)的另一個問題是,對等體可能不可靠。已經(jīng)為離線接收方存儲了消息的一個或多個對等體本身可能在接收方上線之前也離線了。也就是說,即使為接收方存儲了消息,該接收方也可能無法及時地訪問到該消息。另外,接收方不能控制對等體的行為,在接收方獲得消息之前,對等體可能故意或意外地破壞或損壞了該消息。用于提高P2P網(wǎng)絡(luò)中消息傳送可靠性的一種方法是將該消息存儲在多個對等體信箱中。選擇該消息可以存儲的信箱的數(shù)量,以維持特定等級的可靠性(如,消息傳送)。但是,隨著信箱數(shù)量的增加,由于在大量信箱中分配該消息所需的帶寬開銷和存儲開銷的原因,系統(tǒng)的伸縮性會隨之降低。
      為了維持特定等級的可靠性,相應地可以選擇存儲該消息的信箱(信箱對等體)的數(shù)量。
      如果結(jié)構(gòu)化的P2P網(wǎng)絡(luò)中的信箱對等體上線時在所述存儲消息的位置變成不合格,則其可以將該存儲消息傳遞到適當?shù)膶Φ润w。例如,在基于DHT的P2P網(wǎng)絡(luò)中,如果有一個新的對等體加入到該網(wǎng)絡(luò)中并改變了該P2P網(wǎng)絡(luò)的拓撲結(jié)構(gòu),則DHT算法可以將部分或全部存儲消息從當前的信箱對等體移到該新的對等體,因為該新的對等體的ID更接近消息ID。因此,可以假設(shè),只要信箱對等體在線,就能獲得存儲在對等體中的任何消息。存儲消息的這種移動性只能適用于結(jié)構(gòu)化的P2P網(wǎng)絡(luò)。如果該P2P是非結(jié)構(gòu)化的,則對等體通常不能因為拓撲結(jié)構(gòu)改變而在它們之間傳遞消息。
      為了保證消息的傳送,應該在多個對等體信箱中對該消息進行復制或者傳播,從而,當接收方上線時,即使一個或多個對等體離線,也可以及時地傳送該消息。在特定的示例性實施例中,該復制方法可以在每個選中的信箱對等體提供該整體消息的一個副本,其中,這些信箱對等體是該消息要發(fā)往的地方。在本申請中將這一技術(shù)稱為“整體消息復制”。整體消息復制適于相對較小尺寸的消息。
      另一種技術(shù)是在每個信箱對等體中只存儲該消息的一部分。對于這一方案,當接收方上線時,擁有足夠組成部分以再現(xiàn)該消息的至少某一版本的一組對等體也應該在線。依照各種示例性實施例,下面描述使用局部消息部分的復制方法(1)漸進式分層復制方法;(2)等級式分層復制方法。在每種方法中,可以將局部消息部分存儲在信箱對等體中,并由被叫對等體獲取。
      基于漸進式分層的復制 漸進式分層指的是這樣一種分層技術(shù),其可以增加多層,從而,即使一個或多個其它層丟失,也可以提高解碼內(nèi)容的質(zhì)量。也就是說,每一層都獨立于其它層。
      基于等級式分層的復制 等級式分層指的是另一種分層技術(shù),其中,可以增加多個層,但僅在要增加的特定層之下(等級上處于下面的)的層可用時,才能提高解碼內(nèi)容的質(zhì)量。后一種方法的一個例子是對JPEG編碼圖像的等級式編碼,其中,根據(jù)目標分辨率的圖像和用下層生成的該圖像之間的差異而生成上層。這就使得如果沒有下層,則上層也沒有用。將上層數(shù)據(jù)與它的下層數(shù)據(jù)分開放置就增加了它的一個或多個下層丟失時還能獲得該上層數(shù)據(jù)的概率,從而,所獲得的上層是沒用的而且也浪費了該上層的帶寬和存儲空間。
      發(fā)明人已開發(fā)出一種分析模型,用來預測副本數(shù)量,從而實現(xiàn)將消息傳送到被叫對等體(即,接收方)的期望等級的可靠性。在這一模型中,采用了下面的符號(1)整體消息中的信息量為I;(2)獲取的平均信息為&lt;Ir&gt;;(3)消息尺寸為m(字節(jié));(4)對等體在線概率為Po;(5)可以發(fā)現(xiàn)在線對等體的概率為Pd。在下面的材料中,上層由較小的數(shù)字表示,而下層由較大的數(shù)字表示。
      為了對接收圖像的質(zhì)量進行建模,可以采用度量標準“信息量”。如果整體消息中的信息量記為I而第i層中的信息量記為Ii,則第i層復制的份數(shù)可以是Ni且Ii=αiI,其中,αi確定了第i層中信息的比例,以及,&Sigma;iL&alpha;i=1,]]>其中,L等于層數(shù)??梢岳弥T如平均意見評分(MOS)、峰值信噪比(PSNR)或者均方誤差(MSE)等公知的技術(shù)來確定信息量I。
      每層的信息量或者αi取決于內(nèi)容和具體的分層編碼技術(shù)。如果排列層的順序使得下層比上層包括有較多的信息,也就是說,信息集中在下層,并且每層的每個副本可以放置在不同的信箱對等體(從而每一層的獲取獨立于其它層)中,則成功獲取第i層的概率vi就是vi=1-(1-P)Ni.]]>獲取的平均信息&lt;Ir&gt;是&lang;Ir&rang;=&Sigma;iLIivi=&Sigma;iLI&alpha;i(1-(1-P)Ni)]]>=I-I&Sigma;iL&alpha;i(1-P)Ni]]>
      信息獲取率&lt;Ir&gt;/I是&lang;Ir&rang;/I=1-&Sigma;iL&alpha;i(1-P)Ni]]> 在某些示例性實施例中,可以將任何上層和它相對應的下層一起存儲起來,這樣,例如,如果層3存儲在信箱對等體,則層1和層2也可以存儲在相同的信箱對等體中。在這一方案中,層組可以這樣構(gòu)成,例如,組j包括層1、2、…、和j的數(shù)據(jù)。組j中的信息是I′j,而組j的信箱對等體數(shù)量是N′j。對于j=1到L-1和N′L=NL,I′j=I1+I2+…+Ij并且N′L=NL-Nj+1。由于存儲有組L的信箱對等體包括從1到L的所有層,所以一旦該信箱對等體在線,則來自從1到L-1的其它組的信息就都不需要了。也就是說,只有當存儲有組L的信箱對等體不在線時,在與組L-1相關(guān)聯(lián)的信箱對等體中存儲的信息才有用。因此,v′j是組j中至少一個信箱對等體在線的概率。本發(fā)明人已經(jīng)確定出平均獲取信息&lt;Ir&gt;是&lang;Ir&rang;=&Sigma;iLI&prime;jv&prime;j&Pi;i=j+1L(1-vi&prime;)]]>=I&Sigma;jL(1-(1-P)N&prime;j)&Sigma;k=1j&alpha;k&Pi;i=j+1L(1-P)N&prime;i]]>而平均獲取信息率&lt;Ir&gt;/I是&lang;Ir&rang;/I=&Sigma;jL(1-(1-P)N&prime;j)&Sigma;k=1j&alpha;k&Pi;i=j+1L(1-P)N&prime;i]]> 可以到達某個單獨的信箱對等體的概率是P=Po×Pd。對等體發(fā)現(xiàn)概率是當接收方對等體在線時成功發(fā)現(xiàn)特定對等體(信箱對等體)的概率,在某些情況下,該概率可能并不小于1。例如,如果對具有有限的生存時間的消息使用消息擴散方法,則P可能小于1。生存時間指的是在某個消息被丟棄之前經(jīng)歷的一段時間或重復或轉(zhuǎn)發(fā)的次數(shù)。在這種情況下,接收方對等體可能無法在有限的生存時間內(nèi)找到存儲有該消息的信箱對等體。也就是說,在線的信箱對等體有可能無法到達,因為它離該接收對等體的跳數(shù)太多了。同樣,利用DHT,當該DHT路由表不穩(wěn)定時,查找消息也有可能無法到達信箱對等體。
      消息最好能夠被復制N次,以使信息獲取率&lt;Ir&gt;/I接近于1。本發(fā)明人已經(jīng)確定出,&lt;Ir&gt;/I=1-(1-P)KN。因此,可以將N計算為N=log(1-Pr)/Klog(1-P),其中K是接收方對等體嘗試連接每個信箱對等體的次數(shù),而Pr是成功傳送消息的概率。表1示出了到達成功傳送消息的概率為Pr的副本份數(shù)N,其中給定了嘗試連接每個信箱對等體的次數(shù)K和可以到達某個獨立的信箱對等體的概率P。
      表1.副本份數(shù)
      表1示出了當P等于0.1時要達到99.999%需要復制的份數(shù)是110,而P等于0.01時則要復制1146份。隨著對等體在線的概率的降低,N會變大,有可能是這種情況,P2P網(wǎng)絡(luò)包括大量便攜式用戶設(shè)備,它們只在一天中的有限時間里處于在線狀態(tài)。減少復制份數(shù)的一種方法就是讓接收方對等體多次檢查是否存在任何存儲的消息。該檢查應該以間隔開的時間間隔進行。表1還示出了K次嘗試之后成功獲得的概率。具體而言,隨著嘗試連接信箱對等體的次數(shù)的增加,復制份數(shù)以反比關(guān)系減少。也就是說,該復制份數(shù)可能會減少1/K,但是,消息傳送的平均延遲從T升高到KT,其中T是獲取嘗試之間的時間間隔。
      可以使用兩種消息獲取模型拉(Pull)模型和推(Push)模型。依照拉模型,當接收方上線時,它會查找所存儲消息的存儲位置。在這種模型下,接收方通過聯(lián)系存儲對等體開始消息獲取過程。下面參照圖1-3描述拉模型。在推模型中,當接收方上線時,由存儲對等體(稱為信箱對等體)發(fā)現(xiàn)上線的接收方并通過連接該接收方開始消息獲取過程。下面參照圖4和5描述推模型。
      雖然這里分開描述推模型和拉模型,但可以想到的是,本發(fā)明的各種示例性實施例可以包括其中任一種模型或者兩種模型,以從存儲對等體向接收方傳遞復制的消息。也就是說,存儲對等體可以進行監(jiān)控,從而,當接收方上線時就能發(fā)現(xiàn)該接收方并通過聯(lián)系該接收方而開始消息獲取過程,以及/或者,當接收方上線時,由它查找存儲消息的位置。如果一起使用,一旦消息(或消息片段)從相應存儲對等體傳遞到接收方,則對于該相應的存儲對等體而言處理就完成了。
      雖然某些示例性實施例描述了消息業(yè)務(wù)是自動化的(如,消息在無人工干預下在對等體之間發(fā)送),但應該想到的是,消息業(yè)務(wù)也可以由一個或多個用戶進行控制。為了方便起見,在下面的材料中,由對等體發(fā)出的動作可以是自動發(fā)出的也可以是在用戶控制下發(fā)出的。
      圖1、2和3是示例性P2P網(wǎng)絡(luò)的示意圖,用于說明依照本發(fā)明各個示例性實施例的消息傳送的方法。
      現(xiàn)在參照圖1、2和3,圖1-3中示出了拉模型的結(jié)構(gòu)。這一示例性P2P網(wǎng)絡(luò)包括5個對等體110、112、114、116和118。在該示例性P2P網(wǎng)絡(luò)中,對等體110想要向離線的對等體118發(fā)送消息。發(fā)送消息之前,在對等體110和118都在線的時候,它們將用于加密消息的密鑰進行交換,如箭頭120所示。同時,當對等體110想要向離線的對等體118發(fā)送消息時,對等體110可以將該消息分成已加密的片段并將這些片段發(fā)送到對等體112、114和116(參見箭頭122)。當對等體118上線時,它會對一部分或全部的在線對等體進行輪詢(參見箭頭124),以判斷它們是否存儲了任何要發(fā)給對等體118的消息,如果有,則可以請求傳遞該消息。然后,對等體118可以對這些消息部分進行解密和重組。
      在這一方案中,可以通過只在主叫對等體110存儲消息,并且當被叫對等體118上線時,將該消息和用于解密任何后續(xù)消息的密鑰進行交換,從而來處理第一次連接。主叫對等體110可以在其它對等體112、114和116留下語音郵件通知,以告知被叫對等體118有消息在等候。然后,被叫對等體118會在它們都在線時嘗試聯(lián)系主叫對等體110。
      利用拉模型,可以將消息片段僅存儲在被叫對等體118可訪問的對等體112、114和116中。一種可以確保連接的方法是,由被叫對等體118確定一份它可以到達的對等體的候選URL位置列表(如,對等體112、114和116),并將這份列表發(fā)送給主叫對等體110,同時交換密鑰。然后,當主叫對等體110向離線的被叫對等體118發(fā)送消息時,它會將消息發(fā)送到URL列表上的對等體。
      可以想到的是,在某些示例性實施例中,分段可能會重疊,因此并不需要恢復所有的分段以再現(xiàn)原始消息。
      或者,也可以采用一種多級方案,其中,實際的消息(即,主要等級消息一等級1)存儲在選定的位置,而只有關(guān)于該存儲的主要等級消息的元數(shù)據(jù)(即,包括位置信息-等級2)存儲在其它選定的位置。由于元數(shù)據(jù)相對較小,所以它可以存儲在很多位置,同時整體的加密或未加密的消息可以存儲在較少數(shù)量的位置,其中的一些可能并不在被叫對等體的URL列表上。例如,這些位置可能被選中,因為它們有較高的在線概率(Po)。
      雖然前面描述了對消息進行加密,但是可以想到的是,根據(jù)其敏感度或者諸如對等體處理功率、系統(tǒng)帶寬和P2P網(wǎng)絡(luò)的其它安全性測量等其它因素,也可以不對其進行加密。如果對其進行加密,則可以采用多種不同方法對其加密,這些方法包括如上所述的公開密鑰方法或者在公鑰、私鑰系統(tǒng)使用公開密鑰。選擇用于存儲消息的對等體可以依據(jù)(1)預先安排好的組;(2)基于所用網(wǎng)絡(luò)的結(jié)構(gòu),它們對接收方的接近程度,如DHT條目;和/或(3)隨機選擇。該選擇可以是在主叫對等體110和被叫對等體118之間達成一致的,例如,在保密信息的最初交換期間。該消息可以分段的形式存儲也可以整體存儲??梢赃x擇復制的份數(shù)以達到期望的接收概率。這一概率隨著消息的重要性而改變,而該重要性是由主叫對等體為某個特定消息設(shè)置的,或者由主叫對等體根據(jù)呼叫者設(shè)置的偏好自動設(shè)置。
      如果使用兩級存儲,則要定義主要信箱和次要信箱。該次要信箱可以是由主叫對等體110為了存儲消息或被叫對等體118為了獲取消息而最初連接的信箱。這些信箱可以包括存儲該消息(或它的消息片段)的主要信箱(一個或多個信箱)的位置。雖然將它們描述成是分開的,但主要信箱和次要信箱之間的差別只是邏輯上的差別。也就是說,一些主要信箱也可以充當次要信箱。
      由于主要信箱的地址可以由次要信箱提供,所以可以任意選擇這些主要信箱,因此,可以由被叫對等體118利用常規(guī)的尋址方案到達該主要信箱。主要信箱的選擇也可以基于它們的存儲空間和/或基于P2P網(wǎng)絡(luò)上的消息的負載平衡。選擇多個次要信箱可以增加可靠性。如上所述,次要信箱執(zhí)行的功能相對開銷較小,因為存儲的信息(即,包括一個或多個主要信箱對等體的地址的元數(shù)據(jù))比較小。
      如果采用單級存儲,則由主要信箱存儲消息而不需要次要信箱。在這種特定情況下,被叫對等體118期望可以容易地訪問主要信箱。可以依照在兩級系統(tǒng)中選擇次要信箱的方法選擇這些信箱。例如,利用UHT,可以依照下面的DHT方案將被叫對等體的標識符(或它的依據(jù)預定規(guī)則的變形)映射到資源ID。然后,主叫對等體110可以連接控制該資源ID的對等體節(jié)點,并可以將這一節(jié)點用作(第一)主要信箱(即,信箱對等體)。當需要多個主要信箱時,DHT特定規(guī)則可以用于確定其它對等體。
      例如,如果P2P網(wǎng)絡(luò)是用Chord(環(huán)形)拓撲構(gòu)建的(例如,參看Frank Dabek et al.,“Building Peer-to Peer Systems With Chord,aDistributed Lookup Service,”MIT Laboratory for Computer Science),則可以選擇從第一個主要信箱對等體(節(jié)點)開始的連續(xù)對等體節(jié)點。具有可訪問主要信箱對等體的結(jié)構(gòu)化P2P網(wǎng)絡(luò)的優(yōu)點幾乎可以確保成功檢查消息和合理的速度(假設(shè)合理的DHT性能)。
      或者,也可以在非結(jié)構(gòu)化的P2P中實現(xiàn)單級存儲系統(tǒng)。在這一特定情況中,發(fā)送方可以隨機挑選R個對等體用于存儲。然后,接收方可以用預定的名字開始搜索存儲的消息。這一系統(tǒng)的主要優(yōu)點就是它的簡單性。如果可以選擇離被叫對等體最近的對等體節(jié)點作為主要信箱,則消息檢查的可靠性和延時可以得到改進(尤其是,如果將擴散法用于該搜索)。
      在單級系統(tǒng)中,也可以預先安排好主要信箱對等體,如利用URL列表。這一方案鼓勵對等體與其它對等體進行交流以得到允許作為主要信箱。對等體之間的業(yè)務(wù)關(guān)聯(lián)會回報更多的合作(社會化的)對等體。通過隨機將消息留在與另一對等體協(xié)作的組成員,來驗證某個對等體的真實性要相對容易。
      依照某些示例性實施例,在會話過程中,對等體可以交換信箱對等體的列表。然后,當被叫對等體118離線時,可以將一些預先安排的信箱作為主要信箱。這一方案的優(yōu)點在于它高效且可靠,沒有DHT維護的開銷,容易升級并且促進協(xié)作和獎勵合作節(jié)點。這一單級系統(tǒng)(方法)也可以和另一種方法一起使用,例如,該方法處理主叫對等體110和被叫對等體118之間的首次聯(lián)系。
      依照某些示例性實施例,信箱對等體112,114和116可以告知被叫對等體118存在要發(fā)送到被叫對等體118或者被叫對等體118的用戶的存儲消息。被叫對等體118或者其用戶會選擇這些消息中一些或全部,并且從適當?shù)男畔鋵Φ润w112、114或116獲取這些消息。也就是說,被叫對等體118可以首先收到來自信箱對等體112、114和116的消息的列表,然后,在被叫對等體118或者被叫對等體118的用戶確定(選擇)了獲得一些或全部消息之后,才進行實際的消息傳送。
      圖4A和4B是另一個示例性P2P網(wǎng)絡(luò)的示意圖,用于說明依照本發(fā)明的各個示例性實施例的其它的消息傳送方法。
      現(xiàn)在參照圖4A和4B,在圖4A和4B中示出了推模型的結(jié)構(gòu)。這一示例性網(wǎng)絡(luò)可以包括對等體110、112、114、116和118。還可以包括現(xiàn)狀(Presence)服務(wù)220。現(xiàn)狀服務(wù)220指的是一種至少跟蹤對等體在對等網(wǎng)絡(luò)200中的出現(xiàn)情況的服務(wù)。例如,該現(xiàn)狀服務(wù)可以包括一個或多個服務(wù)器/對等體,用于負責跟蹤某個對等體的出現(xiàn)情況(如,對等網(wǎng)絡(luò)200中哪些對等體當前是在線的),并且,例如,用于通知信箱對等體被叫對等體在線。示例性的推模型可以按照如下運行,主叫對等體110隨機選擇R個對等體用于存儲。每個信箱對等體只接收部分消息,因此不足夠重新生成完整的消息。每個消息片段可以包括關(guān)于接收方118(即,被叫對等體)的信息,因此信箱對等體112、114和116就可以預知接收方的出現(xiàn)情況。也就是說,這些信箱對等體利用現(xiàn)狀服務(wù)(或現(xiàn)狀服務(wù)器)確定被叫對等體118何時在線。當被叫對等體118上線時,每個信箱對等體112、114和116可以通過現(xiàn)狀服務(wù)220來獲知這一情況,并且可以將它們的消息片段傳送到該接收方118。理想的情況是有安全的P2P現(xiàn)狀服務(wù)。
      可以依照下面的標準來選擇信箱對等體112、114和116。如果存儲在每個信箱對等體的消息片段沒有加密,則這些片段應該足夠小,這樣即使收集了一些這樣的分段也不足以重構(gòu)出原始消息或者從中判斷出任何的重要信息。在這種情況下,可以隨機選擇信箱對等體112、114和116,這樣它們就是無法預測的。此外,對等體的總數(shù)要足夠大,以避免被攻擊者掃描而盜取該消息。因此,該推模型可以包括消息加密方法,例如,不加密、用共享密鑰加密或用公開密鑰加密。用公開密鑰加密的優(yōu)點是,對于適當?shù)幕A(chǔ)設(shè)施有很好的安全性。而對于拉模型,用于到達期望的可靠性等級的復制份數(shù)可以預先確定,或者根據(jù)測量出的量,如P2P網(wǎng)絡(luò)中各個對等體的在線時間。
      共享密鑰的優(yōu)點主要是,它能夠在沒有附加基礎(chǔ)設(shè)施的情況下使用。但是,共享密鑰建立易受到中間人攻擊,例如,采用Diffie-Hellman算法時。對于拉模型,為了減少或避免這種中間人攻擊,可以在主叫對等體110和被叫對等體118均在線時改變共享密鑰。這可以通過只留下一個通知來實現(xiàn),該通知表示有消息存在于選出的信箱對等體112、114和116中。
      本發(fā)明人已經(jīng)開發(fā)出一種利用內(nèi)容感知消息分段方法在P2P網(wǎng)絡(luò)中傳送消息的方案。對于文本消息,該方案可以將該消息劃分成優(yōu)先級相等的片段,并且可以為每一片創(chuàng)建幾乎相等數(shù)量的副本。但是,包括有附件的文本消息可以允許內(nèi)容感知的分段方案。在這一示例性方案中,消息和消息各部分復制的次數(shù)可以大于復制附件的次數(shù),并且相比于附件發(fā)送到更多的信箱對等體,從而,提高被叫對等體能夠獲取消息的概率。
      對于諸如JPEG編碼圖片之類的視頻和圖像,該內(nèi)容感知的方法可以將該圖像劃分(分解)成多層。每一層有不同的優(yōu)先級,而主要層的優(yōu)先級最高。然后,該方案將每一層再劃分成片段,并將較高優(yōu)先級的層復制較多次,以提高到達被叫對等體的概率。該復制份數(shù)可以根據(jù)每一層的圖像內(nèi)容。也就是說,如果圖像內(nèi)容接近于原始圖像的內(nèi)容,則應增加復制的次數(shù)。可以將各層或?qū)悠伟l(fā)送到相應數(shù)量的信箱對等體?;蛘撸瑢τ谝曨l數(shù)據(jù),該方法也可以采用多重描述編碼(Multiple Description Coding)并遵從相似的優(yōu)先級方案。
      如上所述,在拉模型中,某個消息或消息部分的復制份數(shù)N可以根據(jù)公式N=log(1-Pr)/log(1-P)(其中K=1)來確定。在一些情況中,特別當Pr或Po較小時,N可能會很大。降低N的大小的一種方法是使被叫對等體不止一次嘗試獲取它的消息,其中,該多次嘗試在時間上的分布是Pr=1-(1-P)NK。在這種情況下,復制份數(shù)為N=log(1-Pr)/Klog(1-P)。這可以大大降低為了達到期望的可靠性所需復制的份數(shù)。
      應當理解的是,所述的方法可以用硬件、軟件或者二者的組合來實現(xiàn)。在這樣的實施例中,下面所描述的各種組件和步驟都可以用硬件和/或軟件來實現(xiàn)。
      在某些示例性實施例中,可以將要發(fā)送到被叫對等體的消息劃分成片段,并且,或者可以將這些消息片段進行復制,或者將其發(fā)送到(即,并行發(fā)送到)相應的信箱對等體112、114和116,或傳播(如,發(fā)送并轉(zhuǎn)發(fā))到信箱對等體112、114和116(即,從信箱對等體112、114或116中的一個串行發(fā)送到下一個信箱對等體)。
      在某些示例性實施例中,被叫對等體118可以先接收以它為目的地的消息的列表,然后,開始傳送由被叫對等體118或被叫對等體118的用戶根據(jù)該收到的列表選出的消息。也就是說,例如,被叫對等體根據(jù)收到的消息列表,傳送由被叫對等體118或被叫對等體118的用戶選出的一些或全部實際消息。
      圖5的框圖示出了本發(fā)明的某些示例性實施例所用的對等網(wǎng)絡(luò)的一個對等體。
      現(xiàn)在參照圖5,每個對等體110、112、114、116或118可以包括發(fā)射單元130和接收單元140,用于與例如其它對等體110、112、114、116或118或現(xiàn)狀服務(wù)220進行通信。也就是說,每個對等體可以通過天線(未示出)進行無線通信或者通過有線連接(未示出)進行通信。
      每個對等體110、112、114、116或118還可以包括分解單元150,用于將消息分解成多層,從而,相應層的至少一種組合可以表示該消息的一個版本;選擇分解消息的相應層的至少一種組合,以到達或超過該消息的再現(xiàn)版本的門限質(zhì)量;并通過發(fā)射單元130將相應層的至少一種組合發(fā)送到預定數(shù)量的其它多個對等體。例如,分解單元150可以將消息分解成多層。一層或者相應層的一種組合可以表示所生成的消息的一個版本。也就是說,由分解單元130分解出的每一層可以各自表示分解消息的一個分量(例如,分解消息的頻率分量或空間分量)。
      每個對等體110、112、114、116或118也可以包括重組單元,用于通過將相應層的至少一個組合予以組合,而重構(gòu)分解消息,從而生成消息的重構(gòu)版本。也就是說,例如,被叫對等體118可以接收與發(fā)送到被叫對等體118的消息相對應的一個或多個存儲層或?qū)悠?,并且,重組單元160可以重構(gòu)出要發(fā)送到被叫對等體118的消息的一個版本。
      雖然,前面描述了對等體110、112、114、116或118包括分解單元150和重組單元160,但應該想到的是,對于某些示例性實施例,各個對等體110、112、114、116或118可以不包括這其中的任何一個單元,或者只包括其中的一個單元。
      圖6、7A、7B、8和9示出了依照本發(fā)明的各個示例性實施例用于在對等網(wǎng)絡(luò)中主叫對等體和被叫對等體之間進行通信的方法的流程圖。
      例如,圖6示出了利用信箱對等體的消息的整體消息傳遞。圖7A和7B示出了主要和次要等級消息的使用以及利用信箱對等體對這些消息進行存儲/傳遞。圖8示出了消息壓縮和利用信箱對等體對壓縮消息進行存儲/傳遞。圖9示出了將消息分解為層、利用信箱對等體進行存儲/傳遞以及從接收到的層重新構(gòu)造消息版本。
      現(xiàn)在參照圖6,在框605中,生成經(jīng)由對等網(wǎng)絡(luò)100(圖1所示)或圖4A所示的對等網(wǎng)絡(luò)200的被叫對等體118發(fā)往被叫者(即,被叫用戶)的消息。該消息可以是文本消息、圖像、語音消息、視頻消息或它們的任意組合,并可以由任何數(shù)量的不同設(shè)備生成,例如這些設(shè)備有蜂窩電話、計算機、個人數(shù)字助理和錄制設(shè)備等等。
      在框610中,主叫對等體110可以判斷被叫對等體118是否離線(如,處于不活動、不可訪問、不可達狀態(tài),或者已經(jīng)離開對等網(wǎng)絡(luò)100)。在框615中,如果被叫對等體118在線(如,處于活動和可訪問狀態(tài)),則主叫對等體110可以將以被叫對等體118為目的地的消息發(fā)送給它。因為主叫對等體110和被叫對等體118都在線,所以發(fā)送到被叫對等體118的消息可以通過常規(guī)的對等網(wǎng)絡(luò)路由進行發(fā)送。
      在某些示例性實施例中,在消息發(fā)送到被叫對等體118之前,主叫對等體110會對該消息進行分段處理以準備通過分組網(wǎng)絡(luò)(如,互聯(lián)網(wǎng))進行分組發(fā)送,并且/或者,可以對消息進行加密以防止那些沒有合適的解密密鑰的對等體發(fā)現(xiàn)該消息內(nèi)容。被叫對等體118已經(jīng)事先得到適當?shù)慕饷苊荑€。
      在可選框630中,如果被叫對等體118離線,則將以被叫對等體118為目的地的消息劃分成片段,例如,用于通過互聯(lián)網(wǎng)進行發(fā)送,并且/或者,使該消息遍布在大量信箱對等體112、114和116中,例如,以提高該消息的安全性(如,使得很難或者幾乎不可能重新構(gòu)造這些散布的分段)。
      在可選框640中,對以被叫對等體118為目的地的消息進行加密,該消息可能在框630已經(jīng)被分段。也就是說,如果該消息被分段,則可以分別加密各消息片段,另外,可以加密整體消息。此外,在可選框640中,也可以將可能已經(jīng)被分段的以被叫對等體118為目的地的消息進行數(shù)字簽名以鑒別該消息或消息片段,當然也可以不這樣做。也就是說,如果消息已經(jīng)被分段,則可以對可能已經(jīng)加密的消息片段分別進行數(shù)字簽名?;蛘?,也可以對可能已經(jīng)加密的整體消息進行數(shù)字簽名。
      在框645中,主叫對等體110可以將來自框630以被叫對等體118為目的地的消息或消息片段復制N次。N可以是預定的數(shù)字,例如,也可以根據(jù)對等網(wǎng)絡(luò)100或200中相應對等體110、112、114、116和118在線的概率和期望的消息傳送可靠性。該概率可以根據(jù)某個平均概率,或者還可以包括與對等網(wǎng)絡(luò)100或200上的一部分或所有單獨對等體有關(guān)的概率。例如,主叫對等體110的在線概率可以影響消息或消息片段的復制次數(shù)。
      雖然前面描述了在復制之前在框640中的加密和/或數(shù)字簽名步驟,但是可以在加密和/或數(shù)字簽名步驟之前復制消息或消息片段。例如,在這種情況下,可以分別對每個復制的消息或消息片段進行加密。
      在框650中,主叫對等體110可以發(fā)送這N份復制消息或者與這N份復制消息對應的復制消息片段,以分別存儲在對等網(wǎng)絡(luò)100或200的各信箱對等體112、114和116中。用于存儲該消息或消息片段的信箱對等體112、114和116可以(1)隨機或類似隨機的方式選擇;(2)根據(jù)對等體112、114和116相對于被叫對等體118的位置進行選擇;和/或(3)預先選擇好(即,預先安排好)。
      以隨機或基本隨機的方式選擇信箱對等體112、114和116可能會涉及,例如,將消息或消息片段路由隨機數(shù)量的跳數(shù),該路由過程利用每一跳隨機選擇的分布式哈希表條目進行。這一方案可以通過將生成的隨機數(shù)分割成路由信息,從常規(guī)的隨機數(shù)生成器生成的至少最小長度的任何隨機數(shù)進行應用。也就是說,例如,隨機數(shù)的第一段可以對應于對等網(wǎng)絡(luò)中的跳數(shù),隨機數(shù)的第二段可以對應于分布式哈希表(DHT)中選擇的用于將該復制消息或消息片段路由到第一個路由對等體(如,對等體112)的條目。
      在第一個路由對等體根據(jù)主叫對等體110的DHT中選擇的條目接收到復制消息或消息片段后,則將跳數(shù)減1,并且,隨機數(shù)的第三段可以對應于第一個路由對等體112的分布式哈希表(DHT)中選擇的用于將該復制消息或消息片段路由的第二個路由對等體(如,對等體116)的條目。重復這些操作,直到跳數(shù)減少到0為止。當跳數(shù)減少到0時,如果該路由對等體并沒有存儲特定的復制消息或消息片段,則它可以存儲該特定的復制消息或消息片段。如果該特定的復制消息或消息片段已經(jīng)存儲在路由對等體中,則可以隨機地根據(jù)該路由對等體到另一個路由對等體的DHT條目進行額外的一跳。如果該特定的復制消息或消息片段沒有存儲在該另一個路由對等體中,則該消息或消息片段可以存儲在該另一個路由對等體中。可以重復額外的跳序列,直到找到?jīng)]有存儲該復制消息或消息片段的路由對等體為止。
      根據(jù)對等網(wǎng)絡(luò)的拓撲結(jié)構(gòu)(如,chord拓撲、pastry拓撲),每個對等體可以有其它的相鄰對等體。也就是說,相鄰對等體可以是,例如(1)在chord網(wǎng)絡(luò)中遠離被叫對等體一跳、兩跳或三跳;或(2)在分支式網(wǎng)絡(luò)中與被叫對等體在一個共用分支上。在這樣的網(wǎng)絡(luò)中,可以將消息或消息片段存儲在離被叫對等體較近的地方(在相鄰對等體中),此外,對于結(jié)構(gòu)化的網(wǎng)絡(luò),例如chord網(wǎng)絡(luò),可以將消息或消息片段存儲在被叫對等體離線時對該被叫對等體的資源ID負責的對等體中。例如在chord網(wǎng)絡(luò)中,這可以是被叫對等體的一系列N個后繼對等體。在這種條件下,當被叫對等體上線時,由于該被叫對等體部分加入到對等網(wǎng)絡(luò)中,可以向該被叫對等體提供消息或消息片段。
      信箱對等體112、114和116還可以預先在主叫對等體110和被叫對等體118之間進行選擇(即,預先安排),這樣,當被叫對等體118上線時,被叫對等體118就知道預先檢查某些信箱對等體112、114和116以獲取消息或消息片段。這樣,可以預先選擇信箱對等體112、114和116,其根據(jù)(1)接近程度;(2)安全問題(即,例如,選擇友好對等體,或者可以共同擁有的對等體);和/或(3)某些對等體在線的概率(因此降低要發(fā)送的消息的復制份數(shù))等等。
      如果消息被分段(1)可以將表示整體消息的消息片段一起發(fā)送到各個對等體112、114或116;或者(2)可以分別將每個消息片段發(fā)送到各個選出的信箱對等體112、114或116。也就是說,可以將整體消息存儲在在線的各個信箱對等體112、114或116中,或者,例如,可以將各個消息片段隨機發(fā)送到任何信箱對等體112、114或116,并且,如果信箱對等體112、114或116在線,則將各個消息片段存儲在其中。后一種方法提高了消息的安全性,并且,例如如果消息片段沒有加密,則是所期望的。
      雖然上面描述了消息復制或消息片段復制及發(fā)送,但是應該想到的是,可以將消息或消息片段從一個信箱對等體112、114或116傳播(發(fā)送和轉(zhuǎn)發(fā))到下一個信箱對等體112、114或116。也就是說,如果不并行發(fā)送復制消息或消息片段,可以將其串行地(從一個信箱對等體到下一個信箱對等體)發(fā)送到各個選出的信箱對等體,直到把該消息傳播到適當數(shù)量的對等體為止。這種消息的傳播可以降低用在對于這種消息服務(wù)的對等網(wǎng)絡(luò)中的全部消息容量。
      在框660中,每個信箱對等體112、114和116可以判斷被叫對等體118是否上線(如,處于活動和可訪問狀態(tài))。對于被叫對等體118是否已經(jīng)上線的判斷可以根據(jù)(1)被叫對等體118將它已經(jīng)上線的消息告知預先安排的一組信箱對等體112、114和116;(2)被叫對等體118將它已經(jīng)上線的消息廣播給它所知曉的(如,可訪問的)其它對等體;(3)每個信箱對等體112、114或116輪詢被叫對等體118,并通過接收來自被叫對等體118的響應判斷被叫對等體118是否已經(jīng)上線;和/或(4)使用現(xiàn)狀服務(wù)220(例如,一個或多個服務(wù)器或?qū)Φ润w,用于跟蹤對等體(在對等網(wǎng)絡(luò)200上當前在線的那些對等體)的出現(xiàn)情況,并且,例如,用于告知預定信箱對等體(如,信箱對等體112)被叫對等體118在線)。該現(xiàn)狀服務(wù)可以包括處于對等網(wǎng)絡(luò)200中的設(shè)備,如對等體,并且/或者,可以包括處于對等網(wǎng)絡(luò)200外部的其它設(shè)備,如服務(wù)器、網(wǎng)關(guān)設(shè)備和其它微處理器設(shè)備等等。
      例如,現(xiàn)狀服務(wù)220可以從在線的被叫對等體118接收通知224。每個信箱對等體112、114或116可以向現(xiàn)狀服務(wù)220發(fā)送詢問,以詢問被叫對等體118是否在線?,F(xiàn)狀服務(wù)220可以通過提供被叫對等體118當前在線或離線的通知226來響應該詢問。該詢問可以包括生存時間(指示將通知延伸到發(fā)送詢問的信箱對等體(如,信箱對等體112、114或116)的時間幀,以指示被叫對等體118的狀態(tài)改變(如,在線或離線))。也就是說,如果被叫對等體118在生存時間段結(jié)束之前告知現(xiàn)狀服務(wù)220它在線,則現(xiàn)狀服務(wù)220可以自動地將被叫對等體在線的通知發(fā)送到特定的信箱對等體112、114或116。在已經(jīng)發(fā)送通知之后或在生存時間段結(jié)束之后,將該詢問從現(xiàn)狀服務(wù)220移出。
      現(xiàn)狀服務(wù)220指的是一種方案,通過該方案第一個對等體/用戶至少接收到關(guān)于第二個對等體的可達性(即,它的出現(xiàn)狀況)的通知。當?shù)谝粋€對等體/用戶想知道第二個對等體的現(xiàn)狀信息時,則該第一個對等體/用戶可以預訂關(guān)于第二個對等體的現(xiàn)狀信息(它的出現(xiàn)狀況)。當關(guān)于第二個對等體的現(xiàn)狀信息改變時,該現(xiàn)狀服務(wù)直接向第一個對等體/用戶發(fā)送通知。如果第一個對等體/用戶那個時候并不在線,則該現(xiàn)狀服務(wù)會按照第一個對等體/用戶和現(xiàn)狀服務(wù)之間預先安排的規(guī)則將通知留在其它對等體。現(xiàn)狀服務(wù)可以根據(jù)一個或多個現(xiàn)狀服務(wù)器,例如,在對等網(wǎng)絡(luò)之外的現(xiàn)狀服務(wù)器。在這種情況下,第一個對等體可以向該現(xiàn)狀服務(wù)預訂信息,而第二個對等體將它的現(xiàn)狀信息公布給現(xiàn)狀服務(wù)器。現(xiàn)狀服務(wù)器可以將一個或多個通知發(fā)送到該第一個對等體/用戶。
      在框670中,如果特定的信箱對等體112、114或116判斷出被叫對等體118已經(jīng)上線,則該特定的信箱對等體112、114或116可以向被叫對等體118傳送消息或消息片段,或者此外,通知被叫對等體118有存儲的消息或消息片段并且等待傳遞。
      在本發(fā)明的某些示例性實施例中,可以采用多級消息系統(tǒng)。在這種情況中,主要等級消息可以包括以被叫對等體為目的地的原始消息或消息片段,而次要消息包括主要等級消息或消息片段已經(jīng)發(fā)往的對等體的地址。因此,該次要等級消息包括指向主要等級消息的指針和關(guān)于該主要等級消息的元數(shù)據(jù),但是可以不包括該主要等級消息。在這樣的示例性實施例中,被叫對等體118可以先接收次要等級消息,以便于傳遞主要等級消息。
      現(xiàn)在參照圖7A和7B,在框705中,生成以對等網(wǎng)絡(luò)100或200中的被叫對等體118為目的地的消息。
      在框710中,主叫對等體110可以判斷被叫對等體118是否離線。在框715中,如果被叫對等體118在線(如,處于活動且可訪問狀態(tài)),則主叫對等體可以發(fā)送以被叫對等體118為目的地的主要等級消息以到達該被叫對等體118。也就是說,發(fā)往被叫對等體118的主要等級消息可以通過常規(guī)的端到端路由進行發(fā)送,因為主叫對等體110和被叫對等體118均在線。在該主要等級消息發(fā)送到被叫對等體118之前,由主叫對等體110對其進行分段處理以準備通過分組網(wǎng)絡(luò)(如互聯(lián)網(wǎng))進行分組發(fā)送,并且/或者,可以對該主要等級消息進行加密以避免那些沒有合適的解密密鑰的對等體發(fā)現(xiàn)消息內(nèi)容。被叫對等體118可以事先得到這樣的解密密鑰。
      如果被叫對等體118不在線,則在框720中,可以生成次要等級消息,該消息至少包括主要消息或消息片段所要發(fā)往的各個信箱對等體112、114和116的地址。
      在可選框730中,可以將以被叫對等體118為目的地的主要及次要等級消息劃分成片段,例如,用于通過互聯(lián)網(wǎng)發(fā)送,并且/或者,將這些消息傳播到大量的信箱對等體112、114和116。在可選框740中,可以對可能在框730中已經(jīng)被分段的以被叫對等體118為目的地的主要及次要等級消息進行加密。
      在可選框745中,可以對可能已經(jīng)被分段和/或加密的以被叫對等體118為目的地的主要及次要等級消息進行數(shù)字簽名。
      在框750中,主叫對等體110可以將加密(或未加密)的以被叫對等體118為目的地的主要等級消息或消息片段復制第一數(shù)量的次數(shù)(N次),并將加密(或未加密)的以被叫對等體118為目的地的次要等級消息或消息片段復制第二數(shù)量的次數(shù)(M次)。N和M可以是預定的數(shù)量,并且/或者,例如,可以根據(jù)對等網(wǎng)絡(luò)100中的對等體110、112、114、116和118在線的概率和期望的消息傳送可靠性。該概率可以根據(jù)平均概率,或者此外,可以包括與對等網(wǎng)絡(luò)100或200上的一部分或所有各個對等體相關(guān)的概率。此外,M最好大于N。因為每個次要等級消息包括相對較小量的信息,與同樣數(shù)量的主要等級消息相比,大量的復制及傳遞對P2P網(wǎng)絡(luò)帶寬的消耗相對較小。
      在框760中,主叫對等體110可以發(fā)送該N份復制的主要等級消息或與該N份復制的主要等級消息相對應的復制的主要等級消息片段,以分別存儲在對等網(wǎng)絡(luò)100的信箱對等體112、114和116中??梢噪S機選擇或以類似隨機的方式選擇用于存儲這些消息或消息片段的信箱對等體112、114和116,以提高主要等級消息的安全性。
      在框770中,可以復制并發(fā)送次要等級消息,其方式可以類似于復制該主要等級消息到被叫對等體118可以訪問的信箱對等體112、114和116并由這些信箱對等體112、114和116中在線的對等體存儲消息。例如,可訪問信箱對等體可以指預先安排好的信箱對等體、相鄰對等體或后繼對等體等等。最好是對次要等級消息進行加密并保密任何預先安排的信箱對等體112、114和116的地址,以提高安全性。次要等級消息可以包括關(guān)于主要等級消息的元數(shù)據(jù),該元數(shù)據(jù)包括存儲有主要等級消息或主要等級消息片段的信箱對等體112、114和116的地址。每個次要等級消息的元數(shù)據(jù)可以包括信息指示,例如(1)所存儲的部分或整體主要等級消息或消息片段的地址;(2)主叫方;(3)被叫對等體;(4)消息的優(yōu)先級;(5)主要/次要等級消息的生存時間;和/或(6)呼叫者是否要求確認。
      在框780(如圖7B中所示)中,可訪問的信箱對等體可以判斷被叫對等體118是否已經(jīng)上線(如,處于活動且可訪問狀態(tài))。對于被叫對等體118是否已經(jīng)上線的判斷可以根據(jù)(1)被叫對等體118將它已經(jīng)上線的消息告知可訪問的信箱對等體112、114和116;(2)每個信箱對等體112、114或116輪詢被叫對等體118,并根據(jù)從被叫對等體118收到的響應判斷被叫對等體118是否已經(jīng)上線;和/或(3)利用現(xiàn)狀服務(wù)220,來跟蹤被叫對等體的出現(xiàn)情況并通知可訪問的信箱對等體被叫對等體118已經(jīng)在線。
      在框785中,如果某個特定的可訪問信箱對等體112、114或116判斷出被叫對等體118已經(jīng)上線,則該特定的可訪問信箱對等體112、114或116可以將次要等級消息或消息片段傳送到被叫對等體118,或者此外,可以通知被叫對等體118它正在存儲次要等級消息。
      如果次要等級消息在可選框745中進行了數(shù)字簽名,則在可選框788中,被叫對等體118可以判斷是否可以根據(jù)次要等級消息或次要等級消息片段的數(shù)字簽名鑒別次要等級消息或消息片段(如,來自主叫對等體110的數(shù)字簽名是否合適)。在框789中,如果無法鑒別數(shù)字簽名,則對要發(fā)送到被叫對等體118的特定的次要等級消息或消息片段的處理可以終止。
      如果該處理在框789中未終止,則在框790中,被叫對等體118可以通知一個或多個存儲有主要等級消息或主要等級消息片段的信箱對等體,以將該主要等級消息或主要等級消息片段發(fā)送給它。
      在框795中,被叫對等體118可以接收主要等級消息或與主要等級消息相對應的主要等級消息片段??梢圆⑿械鼗虼械赝瓿煽?90的通知信箱對等體操作和在塊795的接收操作。也就是說,例如,被叫對等體118可以或者向存儲有主要等級消息的信箱對等體廣播一條消息,或者可以有系統(tǒng)地逐個輪詢那些存儲有主要等級消息的信箱對等體。在后一種情況下,發(fā)送到信箱對等體的輪詢消息可以包括關(guān)于先前收到的消息片段的信息,以使這些片段不會再冗余地發(fā)送到被叫對等體118。
      參照圖8,為了簡單起見,對與圖6中的框605、610、615、630和640相同的圖8中的框805、810、815、830和840僅作簡要描述。
      在框805和810中,生成消息并判斷被叫對等體是否在線。在框815中,如果被叫對等體在線則將消息直接發(fā)送給它。
      在框820中,如果被叫對等體118離線,則可以將要發(fā)送到被叫對等體118的消息進行壓縮(無損或有損壓縮)。在有損壓縮的情況下,可以將壓縮質(zhì)量(如,分辨率和透明性)設(shè)定在預定的等級。
      在框850中,可以將分別在框820、830和840進行壓縮、分段、加密和/或數(shù)字簽名的消息發(fā)送到預定數(shù)量的其它對等體。該預定的數(shù)量與將消息(壓縮的、分段的和/或加密的)成功傳送到被叫對等體118的門限概率有關(guān)。
      在框860中,可以將發(fā)送的消息或消息片段存儲在其它對等體中,如在線的對等體112、114和/或116。也就是說,那些發(fā)送消息或消息片段并且在傳送期間在線的對等體可以存儲該消息或消息片段。
      對于用于存儲消息或消息片段的其它對等體112、114和116的選擇可以(1)根據(jù)隨機或類似隨機地選擇其它對等體112、114或116;(2)根據(jù)其它對等體112、114或116相對于被叫對等體118的位置;和/或(3)預先選定的(即,預先安排好的)。
      在框870中,每個其它對等體112、114和116可以判斷被叫對等體118是否在線(如,處于活動且可訪問狀態(tài))。對于被叫對等體118是否已經(jīng)上線的判斷可以根據(jù)(1)被叫對等體118將它已經(jīng)上線的消息告知一組預先安排的信箱對等體112、114和116;(2)被叫對等體118將它已經(jīng)上線的消息廣播給它所知曉的(如,可訪問的)其它對等體;(3)每個信箱對等體112、114或116輪詢被叫對等體118,并通過從被叫對等體118接收響應判斷其是否已經(jīng)上線;和/或(4)利用現(xiàn)狀服務(wù)220。
      在框880中,如果特定的其它對等體112、114或116判斷出被叫對等體118已經(jīng)上線,則該特定的其它對等體112、114或116可以將消息或消息片段傳送到被叫對等體118,或者,還可以通知被叫對等體118有存儲的消息或消息片段并且等待傳遞到被叫對等體118。
      如果消息或消息片段在可選框840中進行了數(shù)字簽名,則在可選框885中,被叫對等體118可以根據(jù)該數(shù)字簽名判斷是否可以鑒別該消息或消息片段。在可選框886中,如果無法鑒別消息或消息片段的數(shù)字簽名,則對于傳送到被叫對等體118的特定的消息或消息片段的處理就可以終止。
      在框890中,可以通過被叫對等體118向用戶提供消息。在包括壓縮、分段和/或加密的某些實施例中,可以在將消息提供給用戶之前將其存儲(根據(jù)逆操作),即,解壓縮、重組消息片段和/或解密。
      在某些實施例中包括對消息進行數(shù)字簽名,可以在將消息提供給用戶之前先鑒別該消息,并且雖然沒有示出,如果該消息沒有得到還原(根據(jù)逆操作),即解壓縮,則對該消息的鑒別操作應該終止。如果該消息已經(jīng)還原,則在向用戶提供消息之前重組該消息片段和/或進行解密。
      現(xiàn)在參照圖9,為了簡要起見,對與圖6中的框605、610和615相同的圖8中的框905、910和915僅作簡要描述。
      在框905和910中,生成消息并判斷被叫對等體118是否在線。在框915中,如果被叫對等體118在線則將消息直接發(fā)送給它。
      在框920中,如果被叫對等體118離線,則可以將要發(fā)送到被叫對等體118的消息分解成層。例如,該消息可以分解成多層。一層或相應層的一種組合可以表示所生成的消息的一個版本。也就是說,每一層可以單獨表示分解消息的一個分量(如,該分解消息的頻率分量或空間分量),這樣各層都可以和任何其它層相組合,以生成與組合的各層有關(guān)的分解消息的改進版本。這一分解技術(shù)被稱為漸進式分層。另一種分解技術(shù)是等級式分層,其中,至少一部分層需要其它層才能重新構(gòu)造分解消息。這一分解技術(shù)的實例包括例如在JPEG標準中的差分編碼方案。
      在可選框930中,如果被叫對等體118離線,則將與發(fā)送到被叫對等體118的消息相對應的層劃分成片段。在可選框940中,可以對這些可能在框930中得以分段的發(fā)往被叫對等體118的層進行加密。也就是說,如果對這些層進行分段,則可以分別對每一層片段進行加密,或者,可以對整個層進行加密。
      在可選框945中,可以對這些可能已得以分段和/或加密的發(fā)往被叫對等體118的層進行數(shù)字簽名。
      在框950中,可以將與可能已經(jīng)分別在可選框930和940得以分段和/或加密的消息相對應的分解層發(fā)送到選出的其它對等體。這些選出的其它對等體可以是預先確定的。選出的對等體的數(shù)量可以相關(guān)于與發(fā)往被叫對等體118的原始消息相對應的重構(gòu)消息的門限質(zhì)量的成功傳送的門限概率。也就是說,可以將每一層或?qū)悠伟l(fā)送到相同或不同數(shù)量的選出的對等體。發(fā)送到各個對等體的層或?qū)悠蔚臄?shù)量可以根據(jù)特定層的質(zhì)量(如,在與原始消息有關(guān)的特定層中的信息量)、各個對等體112、114和116在對等網(wǎng)絡(luò)100或200中在線的概率和消息傳送的期望可靠性。也就是說,例如,與低質(zhì)量的層相比,高質(zhì)量的層可以發(fā)送到更多的對等體。
      在框960中,可以將所發(fā)送的層或?qū)悠未鎯υ谄渌鼘Φ润w中,例如,在線的對等體112、114和/或116。也就是說,那些被發(fā)送了層或?qū)悠尾⑶以趥魉推陂g在線的對等體可以存儲它們。
      對于用于存儲消息或消息片段的其它對等體112、114和116的選擇可以(1)根據(jù)隨機或類似隨機選擇其它對等體112、114或116;(2)根據(jù)其它對等體112、114或116相對于被叫對等體118的位置;和/或(3)預先選出的(即,預先安排好的)。
      在框970中,每個存儲有層或?qū)悠蔚钠渌鼘Φ润w112、114和116可以判斷被叫對等體118是否已經(jīng)上線(如,處于活動且可訪問狀態(tài))。對于被叫對等體118是否已經(jīng)上線的判斷可以根據(jù)(1)被叫對等體118將它已經(jīng)上線的消息告知一組預先安排的信箱對等體112、114和116;(2)被叫對等體118將它已經(jīng)上線的消息廣播給它所知曉的(如,可訪問的)其它對等體;(3)每個信箱對等體112、114或116輪詢被叫對等體118,并通過從被叫對等體118接收響應判斷其是否已經(jīng)上線;和/或(4)利用現(xiàn)狀服務(wù)220。
      在框980中,被叫對等體118可以接收與發(fā)往被叫對等體118的消息相對應的一個或多個存儲層或?qū)悠巍?br> 如果這些層在可選框945中已經(jīng)經(jīng)過數(shù)字簽名,則在可選框985中,被叫對等體118可以根據(jù)該數(shù)字簽名判斷這些層是否可以得以鑒別。在可選框986中,如果無法鑒別特定的層或?qū)悠蔚臄?shù)字簽名,則對于傳送到被叫對等體118的特定層或?qū)悠蔚奶幚砜梢越K止。
      在框990中,根據(jù)接收到的及經(jīng)過鑒別的層或?qū)悠沃匦聵?gòu)造出以被叫對等體為目的地的消息的一個版本。
      如果收到的沒有加密的一層質(zhì)量高于某個門限等級,則可以將該層提供給被叫方(即,被叫用戶)。否則,如果原始分層已經(jīng)經(jīng)過分段或加密,則要進行逆操作(即,重組分段的層和/或?qū)ζ浣饷?。此外,可以將這些層重新組合,以生成相比于未組合的層有更高質(zhì)量的原始消息的重構(gòu)版本。
      在框995中,可以經(jīng)由被叫對等體118將消息提供給用戶。
      本發(fā)明的示例性實施例給出了一種基于分層的復制方法,這可以節(jié)省很多的帶寬(開銷)。這些復制方法實現(xiàn)了P2P網(wǎng)絡(luò)中可伸縮的和可靠的多媒體消息業(yè)務(wù),尤其是,在對等體在線可靠性較低的情況下(即,它們很不可靠),例如,便攜式消息電子設(shè)備。在這一的P2P網(wǎng)絡(luò)中,可靠地發(fā)送消息是很重要的,因此,相比于非分層方法的整體消息傳送的概率,分層方法可以實現(xiàn)部分消息的高概率傳送。
      雖然圍繞著消息系統(tǒng)描述了本發(fā)明,但可以想到的是,它可以用微處理器/通用計算機(為示出)上的軟件來實現(xiàn)。在各種實施例中,各個組件的一個或多個功能可以用控制通用計算機的軟件來實現(xiàn)。這一軟件可以嵌入在計算機可讀的載體中,如,磁盤或光盤、存儲卡或音頻、射頻或光載波中。
      雖然這里參照具體的實施例說明并描述了本發(fā)明,但是本發(fā)明并不限于示出的細節(jié)。因此,在不偏離所附權(quán)利要求及其等同物定義的總體發(fā)明構(gòu)思精神或保護范圍的前提下,可以做出各種修改。
      權(quán)利要求
      1.一種用于在對等網(wǎng)絡(luò)中從主叫對等體向被叫對等體發(fā)送消息的方法,包括下列步驟由所述主叫對等體判斷所述被叫對等體是否離線;如果所述被叫對等體離線,則a)將所述消息復制N次,以及b)發(fā)送所述N份復制消息,以便存儲在N個相應的對等體中。
      2.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟根據(jù)一個對等體在所述對等網(wǎng)絡(luò)中在線的概率和消息傳送的期望可靠性,確定所述次數(shù)N。
      3.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟在發(fā)送每份復制消息前,對所述復制消息進行加密。
      4.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟在復制所述消息之前,將所述消息分成多個片段,從而復制各所述片段。
      5.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟當所述被叫對等體上線時,對所述被叫對等體可訪問的其它對等體進行輪詢,以判斷所述消息是否正在等待。
      6.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟當所述被叫對等體上線時,讓存儲有所述消息的對等體告知所述被叫對等體所述消息正在等待。
      7.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟響應所述被叫對等體的請求,由所述N個相應對等體中的至少一個發(fā)送所述N份復制消息中的至少一份。
      8.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟由所述N個相應對等體中的至少一個判斷所述被叫對等體是否已經(jīng)上線;以及如果所述被叫對等體上線,則由所述N個相應對等體中的所述至少一個發(fā)送所述N份復制消息中的至少一份。
      9.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟生成主要等級消息,其包括所述消息要發(fā)往的對等體的地址;以及將所述主要等級消息發(fā)送到那些被識別為可由所述被叫對等體訪問的對等體。
      10.根據(jù)權(quán)利要求1所述的方法,還包括以下步驟將所述消息分為多個部分;給所述多個消息部分中的每一個分配相應的優(yōu)先級;以及復制各消息部分,其中,具有較高優(yōu)先級的消息部分的復制次數(shù)大于具有較低優(yōu)先級的消息部分的復制次數(shù)。
      11.根據(jù)權(quán)利要求1所述的方法,其中,所述消息是主要等級消息,所述方法還包括以下步驟生成次要等級消息,其包括所述主要等級消息所要發(fā)往的其它對等體的地址;以及將所述次要等級消息發(fā)送到那些被識別為可由所述被叫對等體訪問的其它對等體。
      12.一種用于在對等網(wǎng)絡(luò)中從主叫對等體向被叫對等體發(fā)送消息的方法,所述對等網(wǎng)絡(luò)包括多個其它對等體,所述方法包括以下步驟當所述被叫對等體離線時,壓縮所述消息,以生成再現(xiàn)版本,所述再現(xiàn)版本表示滿足或超過門限質(zhì)量的所述消息,將所述壓縮消息發(fā)送到多個對等體中至少預定數(shù)量的其它對等體,以及將所述壓縮消息存儲在處于在線狀態(tài)的至少所述預定數(shù)量的其它對等體中;以及當所述被叫對等體上線時,將至少一個所存儲的壓縮消息發(fā)送到所述被叫對等體。
      13.一種用于在對等網(wǎng)絡(luò)中從主叫對等體向被叫對等體發(fā)送消息的方法,所述對等網(wǎng)絡(luò)包括多個其它對等體,所述方法包括以下步驟當所述被叫對等體離線時,將所述消息發(fā)送到多個對等體中至少預定數(shù)量的其它對等體,以及將所述消息存儲在處于在線狀態(tài)的至少所述預定數(shù)量的其它對等體中;以及當所述被叫對等體上線時,將至少一個所存儲的消息發(fā)送到所述被叫對等體。
      14.根據(jù)權(quán)利要求13所述的方法,其中,將所述至少一個所存儲的消息發(fā)送到所述被叫對等體的步驟是對所述被叫對等體的請求做出的響應。
      15.根據(jù)權(quán)利要求13所述的方法,其中,將所述至少一個所存儲的消息發(fā)送到所述被叫對等體的步驟還包括以下步驟由擁有所述存儲消息的所述其它對等體中的至少一個對等體判斷所述被叫對等體是否在線;以及如果擁有所述存儲消息的所述其它對等體中的至少一個對等體判斷出所述被叫對等體在線,則從擁有所述存儲消息的所述其它對等體中的所述至少一個對等體向所述被叫對等體發(fā)送所述至少一個所存儲的消息。
      16.一種用于在對等網(wǎng)絡(luò)中從主叫對等體向被叫對等體發(fā)送消息的方法,所述對等網(wǎng)絡(luò)包括多個其它對等體,所述方法包括以下步驟當所述被叫對等體離線時,a)將所述消息分解成多層,以使一個相應層或多個相應層的組合表示所述消息的一個版本;b)從所述分解消息的多個相應層中選擇至少一層,以達到或超過所述消息的再現(xiàn)版本的門限質(zhì)量;c)將所述分解消息的所述多個相應層中的所述至少一層發(fā)送到預定數(shù)量的其它對等體;以及d)將所述分解消息的所述多個相應層中的所述至少一層存儲到處于在線狀態(tài)的所述預定數(shù)量的其它對等體中。
      17.根據(jù)權(quán)利要求13所述的方法,還包括以下步驟在步驟(c)的發(fā)送之前,對所述分解消息的各相應層進行加密。
      18.根據(jù)權(quán)利要求17所述的方法,還包括以下步驟在步驟(c)的發(fā)送之前,將所述分解消息的相應層分為多個片段,從而發(fā)送所述各片段。
      19.根據(jù)權(quán)利要求16所述的方法,還包括以下步驟當所述被叫對等體上線時,對所述被叫對等體能訪問的其它對等體進行輪詢,以判斷所述分解消息的所有相應層是否被存儲。
      20.根據(jù)權(quán)利要求19所述的方法,其中,對其它對等體進行輪詢包括以下步驟向所述被叫對等體能訪問的其它對等體中的第一個對等體發(fā)送請求消息,該請求消息要求發(fā)送由所述第一個對等體存儲的所述分解消息的所有相應層;從所述第一個對等體接收所述分解消息的相應層;用跟蹤信息對所述請求消息進行更新,其中,所述跟蹤信息指示所述相應層中的哪一層或哪些層已經(jīng)由所述被叫對等體接收到;以及向所述被叫對等體能訪問的其它對等體中的另一個對等體發(fā)送所述更新請求消息,該請求消息要求發(fā)送由所述另一個對等體存儲且在所述跟蹤信息中未指示的所述分解消息的所有相應層。
      21.根據(jù)權(quán)利要求16所述的方法,還包括以下步驟當所述被叫對等體上線時,使處于在線狀態(tài)并存儲有所述分解消息的相應層的其它對等體將所存儲的所述分解消息的相應層通知給所述被叫對等體。
      22.根據(jù)權(quán)利要求16所述的方法,還包括以下步驟將所述消息劃分成多個部分;根據(jù)各個消息部分的信息內(nèi)容,為相應消息部分確定一個優(yōu)先級;以及向?qū)Φ染W(wǎng)絡(luò)中的所述其它對等體發(fā)送相應的消息部分,其中,將具有較高確定優(yōu)先級的消息部分發(fā)送到較多的所述其它對等體,而將具有較低優(yōu)先級的消息部分發(fā)送到較少的所述其它對等體。
      23.根據(jù)權(quán)利要求16所述的方法,其中,其它對等體的所述預定數(shù)量是根據(jù)一個對等體在所述對等網(wǎng)絡(luò)中在線的概率和消息傳送的期望可靠性而確定的。
      24.根據(jù)權(quán)利要求16所述的方法,還包括以下步驟當所述被叫對等體上線時,將所述分解消息的所述預定數(shù)量的相應存儲層中的至少一層發(fā)送到所述被叫對等體;以及向用戶提供所發(fā)送的所述分解消息的所述相應層中的至少一層,作為所述消息的所述版本。
      25.根據(jù)權(quán)利要求16所述的方法,其中發(fā)送所述分解消息的所述相應層中的至少一層的步驟(c)包括c-1)發(fā)送所述分解消息的多個相應層,從而,將第一層發(fā)送到所述預定數(shù)量的其它對等體,而將一個或多個另外層發(fā)送到少于所述預定數(shù)量的其它對等體;以及將所述分解消息的所述相應層中的所述至少一層存儲在處于在線狀態(tài)的所述預定數(shù)量的其它對等體中的步驟(d)包括d-1)將所述分解消息的所述多個相應層進行存儲,以將所述一個或多個另外層存儲到所述其它對等體中的相應對等體,所述另外層已經(jīng)在步驟(c-1)中被發(fā)給了這些相應對等體并且這些相應對等體處于在線狀態(tài)。
      26.根據(jù)權(quán)利要求25所述的方法,其中,所述一個或多個相應另外層被發(fā)往的其它對等體的數(shù)量取決于所述分解消息的各個相應另外層的信息內(nèi)容。
      27.根據(jù)權(quán)利要求26所述的方法,其中將所述分解消息的所述預定數(shù)量的相應存儲層中的至少一層發(fā)送到所述被叫對等體的步驟包括將每個相應另外層發(fā)送到所述被叫對等體;以及所述方法還包括根據(jù)將所述被叫對等體接收到的第一層和另外層予以組合,重新構(gòu)造該消息。
      28.一種對等網(wǎng)絡(luò),包括多個在所述對等網(wǎng)絡(luò)中進行通信的對等體,所述對等網(wǎng)絡(luò)包括主叫對等體,用于生成呼叫者發(fā)出的消息;所述多個對等體中的被叫對等體,用于接收所述消息并向被叫用戶提供所述消息;以及所述多個對等體中的若干個存儲對等體,用于存儲來自所述主叫對等體的壓縮消息或分層消息;其中,當所述被叫對等體離線時,所述主叫對等體將所述壓縮消息或分層消息發(fā)送到在線的預定數(shù)量的存儲對等體中;以及其中,當所述被叫對等體上線時,所述若干個存儲對等體中的一個將其存儲的相應消息發(fā)送給所述被叫對等體。
      29.一種網(wǎng)絡(luò),包括主叫對等體,用于發(fā)送復制的消息;被叫對等體;以及多個信箱對等體,當所述被叫對等體可達時,所述被叫對等體通過一個或多個信箱對等體從所述主叫對等體接收一個或多個復制的消息,每個信箱對等體用于(1)當所述被叫對等體不可達時,接收并存儲發(fā)往所述被叫對等體的至少一個相應消息;以及(2)當所述被叫對等體可達時,將至少一個所存儲的消息發(fā)送到所述被叫對等體。
      30.根據(jù)權(quán)利要求29所述的網(wǎng)絡(luò),其中所述主叫對等體包括分解單元,其用于將所述消息分解為多層,以使相應層的至少一種組合表示所述消息的一個版本;選擇所述分解消息的所述相應層的至少一種組合,以滿足或超過所述消息的再現(xiàn)版本的門限質(zhì)量;并且,將所述相應層的至少一種組合發(fā)送到所述多個對等體中預定數(shù)量的其它對等體;以及所述被叫單元包括重組單元,其用于通過將所述相應層的所述至少一種組合予以組合來重構(gòu)所述分解消息,從而產(chǎn)生所述消息的重構(gòu)版本。
      31.一種計算機介質(zhì),其包括程序指令,用于執(zhí)行根據(jù)權(quán)利要求1所述的方法。
      全文摘要
      當被叫對等體離線時,對等網(wǎng)絡(luò)的消息系統(tǒng)在多個對等體存儲消息或消息片段??梢詫λ鶑椭频南⒒蛳⑵渭用?。依照拉模型,當被叫對等體上線時,被叫對等體輪詢它可訪問的其它對等體,以判斷是否有消息正在等待。依照推模型,當被叫對等體上線時,存儲有來自主叫對等體的消息的對等體會通知被叫對等體。該系統(tǒng)可以采用單級,即只存儲消息數(shù)據(jù);也可以采用兩級,即主要等級保存對等體的地址,而這些對等體所包括的消息數(shù)據(jù)構(gòu)成次要等級。
      文檔編號H04L12/58GK101044741SQ200680000988
      公開日2007年9月26日 申請日期2006年7月7日 優(yōu)先權(quán)日2005年7月8日
      發(fā)明者沈恩壽, 薩雅·納拉亞南 申請人:松下電器產(chǎn)業(yè)株式會社
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1