两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

基于所發(fā)現(xiàn)的nat類型選擇主機(jī)的方法

文檔序號(hào):7866591閱讀:159來源:國知局
專利名稱:基于所發(fā)現(xiàn)的nat類型選擇主機(jī)的方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò),更具體地涉及在計(jì)算機(jī)網(wǎng)絡(luò)的若干客戶端之間確定對(duì)等 (peer-to-peer)通信的主機(jī)(host)。
背景技術(shù)
目前,在計(jì)算機(jī)網(wǎng)絡(luò)的若干客戶端之間玩游戲期間,客戶端直接與服務(wù)器通信。中央服務(wù)器處理來自每個(gè)客戶端的數(shù)據(jù),每個(gè)客戶端將該數(shù)據(jù)傳遞給所有其它客戶端,從而該網(wǎng)絡(luò)中的若干客戶端可以相互之間通過中央服務(wù)器來參與游戲。中央服務(wù)器在若干客戶端之間交流數(shù)據(jù)的能力受到帶寬的限制,因此游戲數(shù)據(jù)之外的通信受到限制。
除游戲數(shù)據(jù)之外;客戶端可能想要相互傳送其它信息而不必通過帶寬有限的中央服務(wù)器。這種通信的示例可包括網(wǎng)絡(luò)電話(VoIPhbittorrent、視頻數(shù)據(jù)、文件共享以及數(shù)據(jù)流式傳送。通過允許客戶端相互之間不需要中央服務(wù)器地進(jìn)行通信,中央服務(wù)器的一些職責(zé)可以推(offload)給客戶端。
當(dāng)在參加P2P網(wǎng)絡(luò)的眾多客戶端之間確定了主機(jī)時(shí),對(duì)等網(wǎng)絡(luò)被建立起來。主機(jī)負(fù)起中央服務(wù)器的職責(zé)并且引導(dǎo)客戶端(下面當(dāng)提到P2P網(wǎng)絡(luò)中的非主機(jī)時(shí)這些客戶端被稱為對(duì)等機(jī)(peer))之間的通信。
正是在這一背景下產(chǎn)生了本發(fā)明的實(shí)施例。發(fā)明內(nèi)容
本發(fā)明涉及一種在對(duì)等中用于確定指定兩個(gè)或更多對(duì)等機(jī)中的哪一個(gè)作為用于在對(duì)等網(wǎng)格中進(jìn)行服務(wù)的主機(jī)的方法,所述方法包括
a)收集用于對(duì)等機(jī)的NAT簡檔信息;
b)與所述兩個(gè)或更多對(duì)等機(jī)中的一個(gè)或多個(gè)其它對(duì)等機(jī)共享所述用于對(duì)等機(jī)的NAT簡檔信息;
c)接收用于所述一個(gè)或多個(gè)其它對(duì)等機(jī)的NAT簡檔信息;
d)根據(jù)所述用于對(duì)等機(jī)的NAT簡檔信息和所述用于一個(gè)或多個(gè)其它對(duì)等機(jī)的NAT 簡檔信息確定,指定所述兩個(gè)或更多對(duì)等機(jī)中的哪一個(gè)作為主機(jī)。
本發(fā)明還涉及一種對(duì)等裝置,其包括
計(jì)算機(jī)處理器;
耦合到所述處理器的計(jì)算機(jī)存儲(chǔ)器;
耦合到所述處理器的網(wǎng)絡(luò)接口,其中所述網(wǎng)絡(luò)接口被配置為便于所述處理器與在對(duì)等網(wǎng)格中連接的一個(gè)或多個(gè)其它對(duì)等裝置之間的通信;
以及
一組包含在所述存儲(chǔ)器中的計(jì)算機(jī)可讀指令,其中所述計(jì)算機(jī)可讀指令被配置為實(shí)施一種用于確定指定所述對(duì)等網(wǎng)格中的哪個(gè)對(duì)等裝置作為在所述對(duì)等網(wǎng)格內(nèi)進(jìn)行服務(wù)的主機(jī)的方法,所述方法包括
a)收集用于對(duì)等機(jī)的NAT簡檔信息;
b)與兩個(gè)或更多對(duì)等機(jī)中的一個(gè)或多個(gè)其它對(duì)等機(jī)共享所述 用于對(duì)等機(jī)的NAT 簡檔信息;
c)接收用于所述一個(gè)或多個(gè)其它對(duì)等機(jī)的NAT簡檔信息;
d)根據(jù)所述用于對(duì)等機(jī)的NAT簡檔信息和用于所述一個(gè)或多個(gè)其它對(duì)等機(jī)的NAT 簡檔信息確定,指定所述兩個(gè)或更多對(duì)等機(jī)中的哪一個(gè)作為主機(jī)。
本發(fā)明進(jìn)一步涉及一種計(jì)算機(jī)可讀媒體,其具有一組物化在其中的計(jì)算機(jī)可讀指令,其中所述計(jì)算機(jī)可讀指令被配置為實(shí)施一種用于確定指定所述對(duì)等網(wǎng)格中的哪個(gè)對(duì)等裝置作為在所述對(duì)等網(wǎng)格內(nèi)服務(wù)的主機(jī)的方法,所述方法包括
a)收集用于對(duì)等機(jī)的NAT配置文件信息;
b)與兩個(gè)或更多對(duì)等機(jī)中的一個(gè)或多個(gè)其它對(duì)等機(jī)共享所述用于對(duì)等機(jī)的NAT 配置文件信息;
c)接收用于所述一個(gè)或多個(gè)其它對(duì)等機(jī)的NAT配置文件信息;
d)根據(jù)所述用于對(duì)等機(jī)的NAT配置文件信息和所述用于一個(gè)或多個(gè)其它對(duì)等機(jī)的NAT配置文件信息確定,指定所述兩個(gè)或更多對(duì)等機(jī)中的哪一個(gè)作為主機(jī)。


圖1是示出根據(jù)本發(fā)明實(shí)施例的P2P網(wǎng)絡(luò)的示意圖。
圖2是從客戶端角度示出根據(jù)本發(fā)明特定實(shí)施例基于所發(fā)現(xiàn)的NAT類型選擇主機(jī)的方法的流程圖。
圖3是從客戶端角度示出基于所發(fā)現(xiàn)的NAT類型來選擇主機(jī)的基本方法的流程圖。
圖4是示出根據(jù)當(dāng)前發(fā)明實(shí)施例的客戶端接口的示例的框圖。
具體實(shí)施方式
介紹
當(dāng)嘗試通過對(duì)等通信(P2P)在客戶端之間建立通信時(shí)所產(chǎn)生的一個(gè)問題是網(wǎng)絡(luò)地址翻譯(NAT)的難題。大多數(shù)與中央服務(wù)器連接的客戶端都位于NAT之后。NAT是使得局域網(wǎng)絡(luò)(LAN)能夠使用一組私有IP地址用于內(nèi)部通信業(yè)務(wù)(traffic)并且使用第二組全局IP地址用于外部通信業(yè)務(wù)的互聯(lián)網(wǎng)標(biāo)準(zhǔn)。因此,期望P2P網(wǎng)絡(luò)中的主機(jī)具有有利的 (favorable)的NAT簡檔(profile)以便創(chuàng)建最佳的P2P網(wǎng)絡(luò)。
于是,在本領(lǐng)域中需要一種在若干連接到中央服務(wù)器的客戶端之間確定具有有利 NAT簡檔的主機(jī)的方法。
有4種類型的可利用的NAT :完全錐型NAT (Full Cone NAT)、受限錐型 NAT (Restricted Cone NAT)、端口受限維型 NAT (Port RestrictedCone NAT)以及對(duì)稱型 NAT (Symmetric NAT)。完全錐型NAT是來自同一內(nèi)部IP地址和端口的所有請(qǐng)求都被映射到同一外部IP地址和端口的NAT。另外,任何外部主機(jī)都可以通過向所映射的外部地址發(fā)送分組來向內(nèi)部主機(jī)發(fā)送分組。
在受限錐型NAT中,來自同一內(nèi)部IP地址和端口的所有請(qǐng)求都被映射到同一外部 IP地址和端口。不像完全錐型NAT,只有當(dāng)內(nèi)部主機(jī)之前已經(jīng)向IP地址X發(fā)送過分組時(shí), (具有IP地址X的)外部主機(jī)才可以向內(nèi)部主機(jī)發(fā)送分組。
端口受限的NAT類似于受限錐型NAT,但是限制包括端口號(hào)。具體地,只有當(dāng)內(nèi)部主機(jī)之前已經(jīng)從IP地址X和端口 P發(fā)送過分組時(shí),外部主機(jī)才可以向內(nèi)部主機(jī)發(fā)送具有源 IP地址X和源端口 P的分組。
在對(duì)稱型NAT中,來自同一內(nèi)部IP地址和端口并發(fā)送到特定目標(biāo)IP地址和端口的所有請(qǐng)求都被映射到同一外部IP地址和端口。如果同一主機(jī)將具有相同源地址和端口的分組(但是)發(fā)送到不同的目標(biāo),則使用不同的映射。另外,只有接收分組的外部主機(jī)可以將用戶數(shù)據(jù)協(xié)議(UDP)分組發(fā)送回內(nèi)部主機(jī)。
基于NAT類型的主機(jī)選擇
圖1是示出根據(jù)本發(fā)明實(shí)施例的P2P網(wǎng)絡(luò)的示意圖。網(wǎng)絡(luò)上的客戶端裝置105A、 105BU07和10 最初連接到 外部網(wǎng)絡(luò)109中的服務(wù)器101。舉例來說,服務(wù)器101可監(jiān)視連接到外部網(wǎng)絡(luò)109的客戶端105A、105B、107和10 之間的游戲數(shù)據(jù)??蛻舳?05AU05B、 107和10 可位于相應(yīng)的網(wǎng)絡(luò)地址翻譯器(NAT) 111A、111B、IllC和IllD之后??筛鶕?jù)互聯(lián)網(wǎng)標(biāo)準(zhǔn)對(duì)每個(gè)NAT進(jìn)行配置,所述互聯(lián)網(wǎng)標(biāo)準(zhǔn)使得局域網(wǎng)絡(luò)(LAN)能夠使用一組私有IP 地址用于內(nèi)部通信業(yè)務(wù)并且使用第二組全局IP地址用于外部通信業(yè)務(wù)。大多數(shù)NAT對(duì)IP 地址執(zhí)行動(dòng)態(tài)翻譯,從而外部網(wǎng)絡(luò)在內(nèi)部網(wǎng)絡(luò)發(fā)起通信之前沒有途徑到達(dá)內(nèi)部網(wǎng)絡(luò)。然而, 因?yàn)榭蛻舳?05A、105B、107和10 建立了服務(wù)器-客戶端關(guān)聯(lián),所以服務(wù)器101與客戶端 105A、105B、107 和 10 之間的通信不受 NAT 111A、111B、IllC 和 IllD 的限制。
在建立客戶端可以直接相互通信的P2P網(wǎng)絡(luò)時(shí),可將一個(gè)客戶端作為主機(jī)107建立,而其它對(duì)等機(jī)105 (連接到P2P網(wǎng)絡(luò)的非主機(jī)客戶端)可相互之間建立直接連接。舉例來說而并非限制,可將對(duì)等機(jī)105以公知為完全連接網(wǎng)格(FCG)的配置連接。這種配置防止任何一個(gè)對(duì)等機(jī)成為瓶頸。在本發(fā)明的實(shí)施例中,可基于每個(gè)客戶端的NAT簡檔來確定主機(jī)107。NAT 111A、111B、111C和IllD可以是被一般稱為完全錐型NAT、受限錐型NAT、端口受限錐型NAT和對(duì)稱型NAT的四種不同配置中的一種。
完全錐型NAT是來自同一內(nèi)部IP地址和端口的所有請(qǐng)求都被映射到同一外部IP地址和端口的NAT。任何客戶端都可以通過向所映射的客戶端外部地址發(fā)送分組來向完全錐型NAT之后的客戶端發(fā)送分組。
在受限錐型NAT中,來自同一內(nèi)部IP地址和端口的所有請(qǐng)求都被映射到同一外部 IP地址和端口。然而,不像完全錐型NAT,只有當(dāng)內(nèi)部主機(jī)之前已經(jīng)向IP地址X發(fā)送過分組時(shí),(具有IP地址X的)外部客戶端才可以向完全錐型NAT之后的客戶端發(fā)送分組。
端口受限的NAT類似于受限錐型NAT,但是限制包括端口號(hào)。具體地,只有當(dāng)端口受限的NAT之后的客戶端之前已經(jīng)從IP地址X和端口 P發(fā)送過分組時(shí),外部客戶端才可以向端口受限的NAT之后的客戶端發(fā)送具有源IP地址X和源端口 P的分組。
在對(duì)稱型NAT中,來自同一內(nèi)部IP地址和端口并發(fā)送到特定目標(biāo)IP地址和端口的所有請(qǐng)求都被映射到同一外部IP地址和端口。如果同一主機(jī)將具有相同源地址和端口的分組(但是)發(fā)送到不同的目標(biāo),則使用不同的映射。另外,只有接收分組的外部主機(jī)可以將UDP分組發(fā)送回內(nèi)部主機(jī)。
完全錐型NAT、受限錐型NAT和端口受限錐型NAT的穿越(traversal)相對(duì)簡單, 而對(duì)于對(duì)稱型NAT來說則有點(diǎn)復(fù)雜。如果客戶端在對(duì)稱型NAT之后,則可實(shí)施NAT穿越,例如在共同轉(zhuǎn)讓的美國專利申請(qǐng)公開號(hào)20070076729中所描述的那樣。特別地,客戶端可執(zhí)行端口預(yù)測,該端口預(yù)測包括構(gòu)造該客戶端之前的NAT的預(yù)測傳輸?shù)刂妨斜?。然后,客戶端可將包含該預(yù)測傳輸?shù)刂妨斜淼腎NVITE消息從第一節(jié)點(diǎn)發(fā)送給第二客戶端。然后,在對(duì)稱型NAT之后的客戶端可使用這些預(yù)測傳輸?shù)刂穪韴?zhí)行與第二節(jié)點(diǎn)的連接性檢查。
可通過例如將NAT的用戶數(shù)據(jù)協(xié)議(UDP)簡單穿越(STUN)請(qǐng)求并行地發(fā)送給每個(gè)預(yù)測傳輸?shù)刂穪韴?zhí)行連接性檢查。當(dāng)對(duì)稱型NAT之后的客戶端接收到這些請(qǐng)求時(shí),該客戶端發(fā)送STUN響應(yīng)給第二客戶端。如果第二客戶端接收到STUN響應(yīng),則該第二客戶端可以發(fā)送媒體給該地址。
可能有與上面所述的四種類型不同的NAT類型。在一些情況下,也許可以使用標(biāo)準(zhǔn)技術(shù)來穿越這樣的NAT,而在其它情況下,NAT性能可能如此不可預(yù)測或者不穩(wěn)定,以至于與在這樣的NAT之后的客戶端通信是不可靠的。
因?yàn)橹鳈C(jī)107的職責(zé)是在其它對(duì)等機(jī)105AU05B和10 之間交流信息,所以有必要使主機(jī)107在不干擾該主機(jī)107 通信能力的NAT類型之后。在對(duì)等機(jī)105Α、105Β、10 和主機(jī)107以完全連接網(wǎng)格(FCG)方式連接的實(shí)施例中,特別期望使用在不干擾主機(jī)通信能力的NAT之后的主機(jī),以便為最大數(shù)量的對(duì)等機(jī)提供最高水平的服務(wù)。已經(jīng)有以下情況, 其中相對(duì)于由P2P網(wǎng)絡(luò)中的現(xiàn)有對(duì)等機(jī)使用的其它NAT類型,被認(rèn)為是具有對(duì)P2P的可疑 (未知)支持的NAT實(shí)際上表現(xiàn)得相當(dāng)好。通過選擇具有最有利NAT簡檔的主機(jī)107,可獲得更可靠的對(duì)等通信。如在此所使用的,術(shù)語P2P通信一般指在連接到網(wǎng)絡(luò)的客戶端裝置之間的直接通信。P2P應(yīng)用的示例包括但是不限于,網(wǎng)絡(luò)電話(VoIP)、bit torrent傳輸、 視頻傳輸、文件共享、數(shù)據(jù)共享以及在客戶端之間不超出單個(gè)客戶端帶寬能力的其它類型的直接數(shù)據(jù)傳送。一旦建立了主機(jī)107,對(duì)等機(jī)105Α、105Β、10 可以通過最初將信息傳輸給主機(jī)107、該主機(jī)107然后將該信息分別傳遞給接收對(duì)等機(jī)105Α、105Β、10 來相互通信, 或者對(duì)等機(jī)105Α、105Β、10 可在使用主機(jī)107來建立該直接通信路徑之后直接傳輸信息。
在某些實(shí)施例中,客戶端105Α、105Β、10 和107可通過與外部網(wǎng)絡(luò)109相關(guān)聯(lián)的 NAT的用戶數(shù)據(jù)協(xié)議(UDP)簡單穿越(STUN)服務(wù)器103來獲取這些客戶端的NAT簡檔信息。STUN服務(wù)器103是由互聯(lián)網(wǎng)工程任務(wù)組(IETF)提出的輕量級(jí)協(xié)議,STUN服務(wù)器103允許具有IP功能(IP enabled)的客戶端發(fā)現(xiàn)該客戶端之前的NAT的存在和類型。STUN 103使用大多數(shù)NAT類型工作,并且不依賴于NAT的任何特定性能(behavior)。STUN服務(wù)器103 表現(xiàn)得像為客戶端105A舉起的一面鏡子,從而客戶端105A可以看到它的本地傳輸?shù)刂啡绾伪挥成涞焦矀鬏數(shù)刂???蛻舳?05A還可以通過與STUN服務(wù)器103通信來確定客戶端 105A 之前的 NAT IllA0
舉例來說而并非限制,每個(gè)客戶端1054、1058、107、1050都可使用31'^服務(wù)器103 來獲取NAT簡檔信息,然后該客戶端可將該信息傳遞給中央服務(wù)器101以便中央服務(wù)器101 來確定哪個(gè)客戶端會(huì)成為最有利的主機(jī)107。同樣地,客戶端105Α、105Β、107、10 可使用 STUN服務(wù)器103來獲取NAT簡檔信息,該NAT簡檔信息然后可被傳遞給所有其它試圖通過 P2P網(wǎng)絡(luò)進(jìn)行通信的客戶端105,以便客戶端105Α、105Β、107、10 最佳地確定主機(jī)107。
圖2是示出從客戶端角度基于所發(fā)現(xiàn)的NAT類型來選擇主機(jī)的基本方法的流程圖。每個(gè)連接到服務(wù)器101的客戶端可收集與P2P網(wǎng)絡(luò)一起使用的該客戶端自身的NAT簡檔信息,如在201所指示的。該簡檔信息可包括關(guān)于該客戶端之前的類型的信息、關(guān)于該 NAT是否支持通用即插即用(UPnP)的信息、關(guān)于該NAT是否展示端口保護(hù)(preservation) 的信息,以及關(guān)于該NAT是否支持端口可預(yù)測性的信息。如在此所使用的,端口保護(hù)意味著一旦內(nèi)部IP地址被映射到特定的外部端口,則該內(nèi)部IP地址將前后一致地映射到該特定端口。如在此所使用的,端口可預(yù)測性意味著有可能預(yù)測內(nèi)部IP地址將被映射到的外部端口,即使該端口不總是同一個(gè)端口。例如,外部端口號(hào)可隨著每次試圖映射該內(nèi)部IP地址而前后一致地增加。
除了 NAT性能,每個(gè)客戶端的簡檔信息可包括服務(wù)質(zhì)量(QoS)信息。如在此所使用的,術(shù)語QoS信息包括關(guān)于客戶端裝置的信息,該QoS信息與該客戶端裝置可以與其它客戶端裝置多好地進(jìn)行通信有關(guān)。舉例來說但并非 限制,這樣的信息可與該客戶端可以多快地進(jìn)行通信、該客戶端可以多可靠地進(jìn)行通信、或者兩者的某種組合有關(guān)。QoS信息的特定示例包括但是不限于Ping時(shí)間、帶寬性能、等待時(shí)間、地理、IP供應(yīng)商。
可使用每個(gè)客戶端的簡檔信息來產(chǎn)生所有連接到服務(wù)器的客戶端之間的優(yōu)先級(jí)列表,以便最佳地選擇用于P2P通信的主機(jī)。如果在潛在主機(jī)之間的優(yōu)先級(jí)是平等(tie) 的,則可分配序號(hào)來確定選擇哪個(gè)潛在主機(jī)作為實(shí)際的主機(jī)。在一些實(shí)施例中,可以如在 203所指示的那樣,由服務(wù)器例如以客戶端連接到服務(wù)器的順序來分配這樣的序號(hào)??商鎿Q地,可使用分布式仲裁算法來從兩個(gè)或更多同等合適的潛在主機(jī)中選擇主機(jī)。如果最初的主機(jī)決定離開P2P網(wǎng)絡(luò)或者以某種方式從網(wǎng)絡(luò)中斷開,則可使用該信息來選擇P2P網(wǎng)絡(luò)的下一個(gè)主機(jī)。
一旦給定的客戶端收集了簡檔信息,則該客戶端的NAT簡檔被與其它連接到服務(wù)器的客戶端共享。簡檔信息包括對(duì)連接到該服務(wù)器的客戶端數(shù)量的預(yù)期計(jì)數(shù),以便確定是否達(dá)到了最佳的P2P網(wǎng)絡(luò)。在這時(shí)每個(gè)客戶端等待,直到每個(gè)其它的客戶端提交了它們關(guān)于在它們之前的NAT的簡檔信息,如在205所指示的。一旦所有的NAT簡檔都被這些客戶端提交了,則確定該客戶端是應(yīng)該成為主機(jī)、對(duì)等機(jī)還是這些客戶端是否沒有滿足任一的要求,如在207所描述的。該確定可基于為上述每一個(gè)客戶端所獲取的簡檔信息來做出。例如,通過基于若干因素分配優(yōu)先級(jí),可以基于具有最有利簡檔的客戶端來從可利用客戶端中選擇主機(jī)。其余客戶端可被分配為對(duì)等機(jī),或者基于其余客戶端的簡檔信息,這些其余客戶端可能不被認(rèn)為是對(duì)等機(jī)或主機(jī)。例如,不可穿越的NAT之后的客戶端可能不滿足作為對(duì)等機(jī)或主機(jī)連接到網(wǎng)絡(luò)所必需的要求。舉例來說而并非限制,不能被認(rèn)為是對(duì)等機(jī)或主機(jī)的客戶端可更新其簡檔以將其狀態(tài)通知給P2P網(wǎng)絡(luò)的其余客戶端,并且可將預(yù)期計(jì)數(shù)減少以將該客戶端從P2P網(wǎng)絡(luò)排除。
表I示出可被用于決定P2P網(wǎng)絡(luò)中主機(jī)分配的優(yōu)先級(jí)排序方案的示例。舉例來說但并非限制,該優(yōu)先級(jí)排序方案可被分解成5個(gè)單獨(dú)特性(distinction):主動(dòng)(active)、 可能、未知、進(jìn)行中以及不主動(dòng)(inactive)。這些特性在表I中按照主機(jī)優(yōu)先級(jí)順序列出。 主動(dòng)標(biāo)簽指示客戶端是主機(jī)的非常好候選者??赡軜?biāo)簽指示客戶端是主機(jī)的良好候選者, 但是優(yōu)先級(jí)仍然被給予具有主動(dòng)標(biāo)簽的客戶端。未知標(biāo)簽指示網(wǎng)絡(luò)不能決定該特定客戶端是否是主機(jī)的良好候選者。進(jìn)行中標(biāo)簽指示網(wǎng)絡(luò)仍在決定該客戶端是否是主機(jī)的良好候選者。最后,不主動(dòng)標(biāo)簽指示客戶端無法承擔(dān)主機(jī)的職責(zé)。在表I中示出的示例中,優(yōu)先級(jí)標(biāo)簽可基于4個(gè)單獨(dú)的標(biāo)準(zhǔn)NAT類型、通用即插即用(UPnP)能力、端口保護(hù)以及端口可預(yù)測性。然而,還可使用幾個(gè)其它因素來確定優(yōu)先級(jí)。這些因素被歸入客戶端的服務(wù)質(zhì)量簡檔并且可包括QoS信息,該QoS信息包括但不限于ping時(shí)間、帶寬性能、地理、等待時(shí)間和IP 供應(yīng)商。
表I
權(quán)利要求
1.一種用于對(duì)等裝置的方法,所述方法包括確定NAT之后的兩個(gè)或更多對(duì)等機(jī)中的哪一個(gè)來指定作為用于在對(duì)等網(wǎng)格中進(jìn)行服務(wù)的主機(jī),所述方法包括 a)將所述對(duì)等機(jī)的NAT簡檔信息與所述兩個(gè)或更多對(duì)等機(jī)中的一個(gè)或更多其他對(duì)等機(jī)共享; b)接收所述一個(gè)或更多其他對(duì)等機(jī)的NAT簡檔信息;以及 c)根據(jù)所述對(duì)等機(jī)的NAT簡檔信息和所述一個(gè)或更多其他對(duì)等機(jī)的NAT簡檔信息確定NAT之后的所述兩個(gè)或更多對(duì)等機(jī)中的哪一個(gè)來指定作為所述主機(jī)。
2.根據(jù)權(quán)利要求1所述的方法,其中a)包括經(jīng)由所述對(duì)等機(jī)與所述一個(gè)或更多其他對(duì)等機(jī)之間的預(yù)建立連接將所述對(duì)等機(jī)的NAT簡檔信息傳遞給所述一個(gè)或更多其他對(duì)等機(jī)。
3.根據(jù)權(quán)利要求2所述的方法,其中所述預(yù)建立連接包括使用服務(wù)器以用于被所述兩個(gè)或更多對(duì)等機(jī)共用的應(yīng)用。
4.根據(jù)權(quán)利要求2所述的方法,其中所述服務(wù)器將一個(gè)或多個(gè)功能推給所述對(duì)等網(wǎng)格,所述對(duì)等網(wǎng)格由被指定為所述主機(jī)的所述對(duì)等機(jī)來管理。
5.根據(jù)權(quán)利要求2所述的方法,其中所述預(yù)建立連接包括所述一個(gè)或更多其他對(duì)等機(jī)中的一個(gè)對(duì)等機(jī)擔(dān)當(dāng)主機(jī)。
6.根據(jù)權(quán)利要求2所述的方法,其中b)包括經(jīng)由所述預(yù)建立連接接收所述一個(gè)或更多其他對(duì)等機(jī)的NAT簡檔信息。
7.根據(jù)權(quán)利要求1所述的方法,其中c)包括基于所述對(duì)等機(jī)的NAT簡檔信息和所述一個(gè)或更多其他對(duì)等機(jī)的NAT簡檔信息來為所述兩個(gè)或更多對(duì)等機(jī)中的每一個(gè)分配優(yōu)先級(jí)值,并且基于所述優(yōu)先級(jí)值選擇所述主機(jī)。
8.根據(jù)權(quán)利要求7所述的方法,其中所述NAT簡檔信息包括所述對(duì)等機(jī)之前的NAT的NAT類型、關(guān)于所述NAT是否支持通用即插即用(UPnP)的信息、NAT的端口可預(yù)測性信息以及NAT的端口保護(hù)信息。
9.根據(jù)權(quán)利要求7所述的方法,其中所述一個(gè)或更多其他對(duì)等機(jī)的NAT簡檔信息包括另一對(duì)等機(jī)之前的NAT的NAT類型、關(guān)于所述NAT是否支持通用即插即用(UPnP)的信息、NAT的端口可預(yù)測性信息以及NAT的端口保護(hù)信息。
10.根據(jù)權(quán)利要求7所述的方法,其中,如果所述兩個(gè)或更多對(duì)等機(jī)中的兩個(gè)或更多對(duì)等機(jī)具有同等優(yōu)先級(jí)值,則c)包括決定具有同等優(yōu)先級(jí)值的兩個(gè)或更多潛在主機(jī)中的哪個(gè)來指定作為主機(jī)。
11.根據(jù)權(quán)利要求10所述的方法,其中決定具有同等優(yōu)先級(jí)值的兩個(gè)或更多潛在主機(jī)中的哪個(gè)來指定作為主機(jī)包括,指定具有同等優(yōu)先級(jí)值的兩個(gè)或更多潛在主機(jī)中的具有更高序號(hào)值的一個(gè)作為主機(jī),其中向所述兩個(gè)或更多潛在主機(jī)中的每一個(gè)分配不同的序號(hào)值。
12.根據(jù)權(quán)利要求10所述的方法,其中決定具有同等優(yōu)先級(jí)值的兩個(gè)或更多潛在主機(jī)中的哪個(gè)來指定作為主機(jī)包括分布式仲裁算法。
13.根據(jù)權(quán)利要求1所述的方法,進(jìn)一步包括,如果所述對(duì)等機(jī)被指定為所述主機(jī),則將所述對(duì)等機(jī)被指定為主機(jī)通知給所述一個(gè)或更多其他對(duì)等機(jī)并等待所述一個(gè)或更多其他對(duì)等機(jī)連接。
14.一種對(duì)等裝置,包括計(jì)算機(jī)處理器; 耦合到所述處理器的計(jì)算機(jī)存儲(chǔ)器; 耦合到所述處理器的網(wǎng)絡(luò)接口,其中所述網(wǎng)絡(luò)接口被配置為便于所述處理器與在對(duì)等網(wǎng)格中連接的一個(gè)或更多其他對(duì)等裝置之間的通信;以及 一組包含在所述存儲(chǔ)器中的計(jì)算機(jī)可讀指令,其中所述計(jì)算機(jī)可讀指令被配置為實(shí)施一種用于確定所述對(duì)等網(wǎng)格中NAT之后的哪個(gè)對(duì)等裝置來指定作為在所述對(duì)等網(wǎng)格內(nèi)進(jìn)行服務(wù)的主機(jī)的方法,所述方法包括 a)將所述對(duì)等機(jī)的NAT簡檔信息與所述兩個(gè)或更多對(duì)等機(jī)中的一個(gè)或更多其他對(duì)等機(jī)共享; b)接收所述一個(gè)或更多其他對(duì)等機(jī)的NAT簡檔信息;以及 c)根據(jù)所述對(duì)等機(jī)的NAT簡檔信息和所述一個(gè)或更多其他對(duì)等機(jī)的NAT簡檔信息確定所述兩個(gè)或更多對(duì)等機(jī)中的哪一個(gè)來指定作為所述主機(jī)。
全文摘要
本發(fā)明涉及基于所發(fā)現(xiàn)的NAT類型選擇主機(jī)的方法??苫谒l(fā)現(xiàn)的NAT類型為對(duì)等網(wǎng)格選擇主機(jī)。NAT簡檔信息可由對(duì)等機(jī)中的每一個(gè)收集并與其它對(duì)等機(jī)分享。每個(gè)對(duì)等機(jī)接收用于其它對(duì)等機(jī)的NAT簡檔信息。每個(gè)對(duì)等機(jī)可根據(jù)用于該對(duì)等機(jī)的NAT簡檔信息和用于其它對(duì)等機(jī)的NAT簡檔信息確定,指定兩個(gè)或更多對(duì)等機(jī)中的哪個(gè)作為主機(jī)。
文檔編號(hào)H04L29/12GK103023985SQ20121048867
公開日2013年4月3日 申請(qǐng)日期2009年9月22日 優(yōu)先權(quán)日2008年9月22日
發(fā)明者R.J.羅伊, M.L.雅各布 申請(qǐng)人:美國索尼電腦娛樂公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
辽阳县| 汉源县| 登封市| 南漳县| 同德县| 阿勒泰市| 呼玛县| 泾川县| 介休市| 嘉荫县| 莱阳市| 烟台市| 肇州县| 库伦旗| 沽源县| 锡林浩特市| 南康市| 赣州市| 乌拉特前旗| 余姚市| 环江| 白银市| 沂源县| 武乡县| 铁力市| 金塔县| 芮城县| 宁阳县| 奉节县| 全椒县| 时尚| 盐边县| 盖州市| 鹤岗市| 封开县| 海淀区| 宾川县| 布尔津县| 张家港市| 柞水县| 铜山县|