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

點到點p2p內(nèi)容共享的方法及系統(tǒng)的制作方法

文檔序號:7648281閱讀:204來源:國知局
專利名稱:點到點p2p內(nèi)容共享的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及互聯(lián)網(wǎng)中內(nèi)容共享的技術(shù)。
背景技術(shù)
傳統(tǒng)的互聯(lián)網(wǎng)采用客戶機/服務(wù)器方式,使用網(wǎng)站上集中的服務(wù)器,但互連網(wǎng)的發(fā)展趨勢將由集中式走向分布式,集中的服務(wù)器將變成分布式的,如P2P(Peer to Peer點對點)技術(shù)。
P2P技術(shù)將許多用戶結(jié)合成一個網(wǎng)絡(luò),共享其中的帶寬,共同處理其中的信息。與傳統(tǒng)的客戶機/服務(wù)器模式不同,P2P工作方式中,每一個客戶終端既是客戶機又是服務(wù)器。
P2P共享下載是目前比較通用的下載模式,全球每天都有數(shù)以千萬計的網(wǎng)民用BT(Bit Torrent比特洪流)軟件下載整部電影、MP3和大型軟件等,其數(shù)據(jù)流量已占全球因特網(wǎng)總數(shù)據(jù)流量的70%以上。在共享下載的流程中,下載同一個文件的眾多用戶中的每一個用戶終端只需要下載文件的一個片段,然后互相交換,最終每個用戶都得到完整的文件。
目前的P2P共享下載方式中,BT的應(yīng)用較為廣泛。BT的網(wǎng)絡(luò)模型如圖1所示,包括放置后綴為.torrent文件的服務(wù)器Webserver(網(wǎng)絡(luò)服務(wù)器),負責用戶相互發(fā)現(xiàn)的服務(wù)器Tracker(追蹤者),普通用戶(User)。
BT共享下載的實現(xiàn)過程具體包括如下的步驟1、希望將內(nèi)容共享出去的用戶將后綴為.torrent文件發(fā)布在普通的Webserver上,該文件包含共享文件的長度、名字、哈希信息以及Tracker的URL(全球統(tǒng)一資源標識符)等;2、希望得到共享內(nèi)容的用戶從普通網(wǎng)站W(wǎng)ebserver下載.torrent文件得到Tracker的URL;3、用戶(包括希望將內(nèi)容共享出去的用戶和希望得到共享內(nèi)容的用戶)和Tracker進行通信,報告自己在線并從Tracker得到其它peers(指希望將內(nèi)容共享出去的用戶和希望得到共享內(nèi)容的用戶)的列表;4、擁有完整文件的Peer稱為種子,希望將文件共享出去的用戶將文件分成很多片,以適合分片共享;5、各個Peers相互聯(lián)系進行文件共享,每個Peer都從其它的Peer申請自己想要的分片,同時也向其它向自己發(fā)出申請的Peer分發(fā)自己已有的分片;6、當所有的文件內(nèi)容下載完成后,退出整個共享流程。
從上面的BT共享流程可以看出,用于BT共享的P2P網(wǎng)絡(luò)是一種典型的“人人為我,我為人人”的網(wǎng)絡(luò),充分共享了各個用戶的資源。但是在這個網(wǎng)絡(luò)里,正是由于真正的“人人平等”,沒有人愿意“義務(wù)”地多做一些額外的工作,使得這種網(wǎng)絡(luò)具有一定的局限性,主要有以下兩點1、當兩個用戶都在NAT(Network Address Transition網(wǎng)絡(luò)地址轉(zhuǎn)換)后面的時候,用戶的地址是私網(wǎng)地址,用戶的私網(wǎng)地址從外部是無法直接訪問的,想要直接訪問私網(wǎng)中的設(shè)備,需要采用STUN(Simple Traversal of UDP ThroughNetwork Address Translators UDP對NAT的簡單穿越方式)或者TURN(Traversal Using Relay NAT通過Relay方式穿越NAT)的機制,目前的BT網(wǎng)絡(luò)中沒有相應(yīng)的單元協(xié)調(diào)完成這項工作,無法實現(xiàn)P2P的直接訪問;2、當網(wǎng)絡(luò)本身是一種非對稱網(wǎng)絡(luò)的時候,整體的共享訪問速率受其中最小的速率的限制,如ADSL(非對稱數(shù)字用戶線)網(wǎng)絡(luò)中,典型的下行速率8M,上行速率512K,單純從某一個用戶來看,由于可能有其它的多個用戶同時為其提供上傳服務(wù),所以即使每個用戶的上傳速率不夠快,多個加起來以后也可以滿足一個用戶的高速下載,但是如果考慮整個網(wǎng)絡(luò)的情況,在完全P2P的情況下,上傳的總速率必然和下載的總速率相等,所以即使下行帶寬很寬,由于受上行速率的限制,用戶平均的下載速率也只能是網(wǎng)絡(luò)上傳的平均速率。

發(fā)明內(nèi)容
本發(fā)明實施例的目的在于提供一種點到點P2P內(nèi)容共享的方法及系統(tǒng),旨在解決現(xiàn)有技術(shù)中存在的私網(wǎng)用戶不能實現(xiàn)P2P共享以及P2P共享訪問速率受上行或者下行速率中較小速率限制的問題。
為實現(xiàn)上述目的,本發(fā)明實施例采用如下的技術(shù)方案一種點到點P2P內(nèi)容共享的方法,所述的方法包括如下步驟a、超級節(jié)點接收到普通用戶節(jié)點申請分片的請求后,檢查自身是否存儲有所述的普通用戶申請的分片,如果有,則將存儲的分片上傳,供所述的普通用戶節(jié)點共享,否則向其它超級節(jié)點或者普通用戶節(jié)點申請所述普通用戶請求的分片,然后將獲取的所述分片上傳,供所述的普通用戶節(jié)點共享。
本發(fā)明實施例還提供了一種P2P內(nèi)容共享的系統(tǒng),所述的系統(tǒng)包括Tracker和用戶節(jié)點,所述的系統(tǒng)還包括超級節(jié)點,所述的超級節(jié)點在自身沒有下載需求時根據(jù)普通用戶節(jié)點申請分片的請求將自身存儲的所述分片或者從其它超級節(jié)點或者普通用戶節(jié)點獲取的所述分片上傳,供所述的普通用戶節(jié)點共享。
本發(fā)明實施例還提供了另一種點到點P2P內(nèi)容共享的方法,所述的方法包括如下步驟a、私網(wǎng)用戶通過超級節(jié)點分配的公網(wǎng)IP地址和端口號或者以超級節(jié)點為代理,將自身擁有的分片上傳供其它用戶節(jié)點共享或者從其它用戶節(jié)點下載分片。
本發(fā)明實施例還提供了一種P2P內(nèi)容共享的系統(tǒng),所述的系統(tǒng)包括Tracker和用戶節(jié)點,所述的系統(tǒng)還包括超級節(jié)點,所述的超級節(jié)點用來協(xié)助私網(wǎng)用戶穿越NAT,實現(xiàn)P2P傳輸。
本發(fā)明實施例克服現(xiàn)有技術(shù)的不足,采用將具備一定條件的用戶作為超級節(jié)點,由這些超級節(jié)點為私網(wǎng)用戶穿越NAT起到協(xié)調(diào)中轉(zhuǎn)的作用,此外,超級節(jié)點在自身沒有下載需求時,義務(wù)的提供上傳服務(wù),通過超級節(jié)點提供的上傳服務(wù)彌補上傳速率過小的不足,使上傳速率達到下載的速率要求的技術(shù)方案,可以協(xié)助在NAT后面的私網(wǎng)用戶穿越NAT,實現(xiàn)P2P傳輸;同時,解決了在上下行速率不對稱網(wǎng)絡(luò)中整體的共享速率受最小速率限制的問題,使得帶寬要求較高的實時P2P商業(yè)應(yīng)用成為可能。


圖1是現(xiàn)有技術(shù)中BT網(wǎng)絡(luò)架構(gòu)圖;圖2是本發(fā)明實施例BT網(wǎng)絡(luò)架構(gòu)圖;圖3是本發(fā)明實施例所述的超級節(jié)點提供上傳服務(wù)的流程圖;圖4是本發(fā)明實施例所述的超級節(jié)點幫助私網(wǎng)用戶穿越NAT的流程圖。
具體實施例方式
本發(fā)明實施例提供的技術(shù)方案是在現(xiàn)有的BT網(wǎng)絡(luò)架構(gòu)中,將具備一定條件的用戶作為超級節(jié)點,由這些超級節(jié)點充當STUN Server(STUN服務(wù)器)或者TURN Server(TURN服務(wù)器)的角色,為私網(wǎng)用戶穿越NAT起到協(xié)調(diào)中轉(zhuǎn)的作用,此外,超級節(jié)點在自身沒有下載需求時,義務(wù)的提供上傳服務(wù),通過超級節(jié)點提供的上傳服務(wù)彌補上傳速率過小的不足,使上傳速率達到下載的速率要求。
為了使本發(fā)明實施例的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明實施例的網(wǎng)絡(luò)架構(gòu)圖如圖2所示,在現(xiàn)有的BT網(wǎng)絡(luò)架構(gòu)中引入了超級節(jié)點(Super Node),Super Node可以由滿足如下條件的普通用戶節(jié)點兼任具有公網(wǎng)IP地址,可以被其它用戶直接訪問;具有足夠的處理能力;具有足夠的存儲空間,用來存儲共享的內(nèi)容;具有足夠的帶寬。
超級節(jié)點除了遵循普通用戶節(jié)點的所有流程以外,當它向Tracker進行注冊的時候要注明自己是超級節(jié)點,這樣Tracker和其它的用戶節(jié)點進行信息交互的時候就可以通知哪些節(jié)點是超級節(jié)點。
因為超級節(jié)點沒有下載需求,不關(guān)心下載的文件具體是什么,不會主動到webserver上去下載.torrent文件,所以Tracker的發(fā)現(xiàn)機制需要做相應(yīng)的修改,不再是從.torrent文件得到,而是在每個用戶中事先預(yù)置Tracker的IP地址或域名。普通用戶節(jié)點向Tracker注冊成為超級節(jié)點的具體流程如下1、用戶通過預(yù)置的Tracker IP地址或域名找到Tracker;2、用戶從Tracker獲取超級節(jié)點列表;3、超級節(jié)點中集成了STUN Server的功能,普通用戶中集成STUN Client(STUN客戶端)的功能,STUN Client與STUN Server通信,確定用戶節(jié)點自己是公網(wǎng)IP地址還是私網(wǎng)IP地址,具體來說,STUN CLIENT會首先向STUNSERVER發(fā)送探測報文,報文凈荷(除IP報頭以外)中會包含有自己的IP地址,當報文經(jīng)過NAT時,報頭的IP地址被換成了NAT的公網(wǎng)地址,但凈荷中的IP沒有改變,所以當STUN SERVER收到探測報文時比較報文頭的源IP和凈荷中的IP是否相同就知道STUN CLIENT是否經(jīng)過了NAT,然后發(fā)回給STUN CLIENT響應(yīng)報文,報文凈荷中帶有其公網(wǎng)地址,STUN CLIENT通過比較響應(yīng)報文的報頭目的IP和凈荷IP也就知道自己是否經(jīng)過了NAT了。
如果STUN CLIENT在NAT后面,STUN SERVER就會通知其它用戶該STUN CLIENT經(jīng)過NAT變換以后的IP和端口號,其它用戶就可以訪問該STUN CLIENT了。
4、如果用戶發(fā)現(xiàn)自己是公網(wǎng)IP地址,檢查自己的處理能力、存儲空間、帶寬等,看是否滿足超級節(jié)點的條件,如果滿足則向Tracker注冊自己為超級節(jié)點。
當符合條件的普通用戶完成超級節(jié)點的注冊后,超級節(jié)點在BT網(wǎng)絡(luò)架構(gòu)中完成兩項功能一是在自身不下載文件時提供上傳服務(wù),二是幫助私網(wǎng)地址的用戶穿越NAT。
其中,超級節(jié)點在自身不下載文件時提供上傳服務(wù)的流程如圖3所示
1、超級節(jié)點接收到普通用戶的索要分片的請求;2、超級節(jié)點分析普通用戶來的索要分片的要求,檢查自己是否擁有這些分片,如果自己不擁有這些分片,轉(zhuǎn)步驟3,否則轉(zhuǎn)步驟5;3、超級節(jié)點隨機選取普通用戶索要的分片中的一些分片向其它節(jié)點(超級節(jié)點或者普通用戶節(jié)點)申請;4、超級節(jié)點從其它節(jié)點獲取分片,將獲取的分片暫存在自己的存儲空間;5、超級節(jié)點將存儲的分片上傳,共享給向自己申請這些分片的用戶節(jié)點。
在上述的流程中,最重要的一點是超級節(jié)點并不是下載所有的分片,而是隨機選擇下載部分分片,這樣做是為了避免超級節(jié)點和其它用戶節(jié)點爭搶帶寬。超級節(jié)點雖然擁有的只是部分分片,如果超級節(jié)點的數(shù)量足夠多,則所有超級節(jié)點加起來將擁有所有的分片,每個超級節(jié)點反復(fù)地上傳共享自己擁有的部分,這樣就有效彌補了網(wǎng)絡(luò)中上傳帶寬不足的問題。
超級節(jié)點幫助只具有私網(wǎng)地址的用戶穿越NAT的具體流程如圖4所示,具體包括如下步驟1、當普通用戶節(jié)點發(fā)現(xiàn)自己是私網(wǎng)地址時,通過和超級節(jié)點的STUNServer交互信息;2、普通用戶節(jié)點通過交互的信息確定自己的NAT類型是錐形NAT還是對稱NAT,如果是錐形NAT,則轉(zhuǎn)步驟3,如果是對稱NAT,轉(zhuǎn)步驟4;3、如果是錐形NAT,普通用戶節(jié)點從超級節(jié)點的STUN Server獲取自己的公網(wǎng)地址及端口號,并以公網(wǎng)的IP地址及端口號向Tracker進行注冊,這樣其它的用戶節(jié)點就可以通過該用戶公布的公網(wǎng)IP地址及端口號訪問到該節(jié)點,并直接進行P2P傳輸;3、如果是對稱NAT,用戶節(jié)點選擇一個或多個超級節(jié)點,并向其注冊,請求所選擇的超級節(jié)點作為代理向Tracker去注冊,超級節(jié)點注冊時用的是自己的公網(wǎng)地址,后續(xù)普通用戶節(jié)點無論是上傳和下載都通過超級節(jié)點代理轉(zhuǎn)發(fā),超級節(jié)點作為NAT穿越的TURN Server。
如上所述,本發(fā)明實施例采用將具備一定條件的用戶作為超級節(jié)點,由這些超級節(jié)點充當STUN Server(STUN服務(wù)器)或者TURN Server(TURN服務(wù)器)的角色,為私網(wǎng)用戶穿越NAT起到協(xié)調(diào)中轉(zhuǎn)的作用,此外,超級節(jié)點在自身沒有下載需求時,義務(wù)的提供上傳服務(wù),通過超級節(jié)點提供的上傳服務(wù)彌補上傳速率過小的不足,使上傳速率達到下載的速率要求的技術(shù)方案,可以協(xié)助在NAT后面的私網(wǎng)用戶穿越NAT,實現(xiàn)P2P傳輸;同時,解決了在上下行速率不對稱網(wǎng)絡(luò)中整體的共享速率受最小速率限制的問題,使得帶寬要求較高的實時P2P商業(yè)應(yīng)用成為可能。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種點到點P2P內(nèi)容共享的方法,其特征在于,所述的方法包括如下步驟a、超級節(jié)點接收到普通用戶節(jié)點申請分片的請求后,檢查自身是否存儲有所述的普通用戶申請的分片,如果有,則將存儲的分片上傳,供所述的普通用戶節(jié)點共享,否則向其它超級節(jié)點或者普通用戶節(jié)點申請所述普通用戶請求的分片,然后將獲取的所述分片上傳,供所述的普通用戶節(jié)點共享。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,其中步驟a之前還包括a0、具有公網(wǎng)IP地址的用戶節(jié)點向Tracker注冊為所述超級節(jié)點。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,其中步驟a具體包括a1、所述的普通用戶節(jié)點從Tracker獲取超級節(jié)點列表,向所述的超級節(jié)點發(fā)送申請所述分片的請求,超級節(jié)點接收到普通用戶節(jié)點申請所述分片的請求后,檢查自身是否存儲有所述的普通用戶申請的分片,如果有,則將存儲的分片上傳,供所述的普通用戶節(jié)點共享,否則隨機選取所述的普通用戶申請分片中的一部分向其它超級節(jié)點或者普通用戶節(jié)點申請,然后將獲取的所述的一部分分片暫存后上傳,供所述的普通用戶節(jié)點共享。
4.一種P2P內(nèi)容共享的系統(tǒng),所述的系統(tǒng)包括Tracker和用戶節(jié)點,其特征在于,所述的系統(tǒng)還包括超級節(jié)點,所述的超級節(jié)點在自身沒有下載需求時根據(jù)普通用戶節(jié)點申請分片的請求將自身存儲的所述分片或者從其它超級節(jié)點或者普通用戶節(jié)點獲取的所述分片上傳,供所述的普通用戶節(jié)點共享。
5.根據(jù)權(quán)利要求4所述的系統(tǒng),其特征在于,所述的超級節(jié)點具有公網(wǎng)IP地址的用戶節(jié)點。
6.一種點到點P2P內(nèi)容共享的方法,其特征在于,所述的方法包括如下步驟a、私網(wǎng)用戶通過超級節(jié)點分配的公網(wǎng)IP地址和端口號或者以超級節(jié)點為代理,將自身擁有的分片上傳供其它用戶節(jié)點共享或者從其它用戶節(jié)點下載分片。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,其中步驟a之前還包括a0、具有公網(wǎng)IP地址的用戶節(jié)點向Tracker注冊為所述超級節(jié)點,所述的私網(wǎng)用戶與所述的超級節(jié)點交互,確定其為錐形網(wǎng)絡(luò)地址轉(zhuǎn)換NAT,從所述的超級節(jié)點獲取所述公網(wǎng)IP地址和端口號,然后以所述的公網(wǎng)IP地址和端口號向所述的Tracker注冊。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,其中步驟a具體包括a1、所述的私網(wǎng)用戶通過所述從所述超級節(jié)點獲取的所述公網(wǎng)IP地址和端口號,將自身擁有的分片上傳供其它用戶節(jié)點共享或者從其它用戶節(jié)點下載分片。
9.根據(jù)權(quán)利要求6所述的方法,其特征在于,其中步驟a之前還包括a0、具有公網(wǎng)IP地址的用戶節(jié)點向Tracker注冊為所述超級節(jié)點,所述的私網(wǎng)用戶與所述的超級節(jié)點交互,確定其為對稱NAT,所述的私網(wǎng)用戶請求所述的超級節(jié)點作為代理向所述的Tracker注冊,所述的超級節(jié)點以自身的公網(wǎng)IP地址所述的Tracker注冊。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,其中步驟a具體包括a1、所述的私網(wǎng)用戶通過所述超級節(jié)點代理轉(zhuǎn)發(fā),將自身擁有的分片上傳供其它用戶節(jié)點共享或者從其它用戶節(jié)點下載分片。
11.一種P2P內(nèi)容共享的系統(tǒng),所述的系統(tǒng)包括Tracker和用戶節(jié)點,其特征在于,所述的系統(tǒng)還包括超級節(jié)點,所述的超級節(jié)點用來協(xié)助私網(wǎng)用戶穿越NAT,實現(xiàn)P2P傳輸。
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于,所述的超級節(jié)點還包括UDP對NAT的簡單穿越方式服務(wù)器STUN server功能模塊,用來向錐形NAT私網(wǎng)用戶分配公網(wǎng)IP地址和端口號,所述的私網(wǎng)用戶以所述的公網(wǎng)IP地址和端口號向Tracker注冊。
13.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于,所述的超級節(jié)點還包括通過Relay方式穿越NAT服務(wù)器TURN server功能模塊,用來作為所述私網(wǎng)用戶的代理向Tracker注冊。
全文摘要
本發(fā)明提供了一種點到點P2P內(nèi)容共享的方法,所述的方法包括如下步驟超級節(jié)點接收到普通用戶節(jié)點申請分片的請求后,檢查自身是否存儲有所述的普通用戶申請的分片,如果有,則將存儲的分片上傳,供所述的普通用戶節(jié)點共享,否則向其它超級節(jié)點或者普通用戶節(jié)點申請所述普通用戶請求的分片,然后將獲取的所述分片上傳,供所述的普通用戶節(jié)點共享。本發(fā)明提供的技術(shù)方案可以協(xié)助在NAT后面的私網(wǎng)用戶穿越NAT,實現(xiàn)P2P傳輸;同時,解決了在上下行速率不對稱網(wǎng)絡(luò)中整體的共享速率受最小速率限制的問題,使得帶寬要求較高的實時P2P商業(yè)應(yīng)用成為可能。
文檔編號H04L29/12GK101026543SQ20071007373
公開日2007年8月29日 申請日期2007年3月28日 優(yōu)先權(quán)日2007年3月28日
發(fā)明者胡峻嶺, 涂永峰 申請人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
凤凰县| 长白| 建瓯市| 马鞍山市| 同江市| 漠河县| 乌兰浩特市| 赤峰市| 库车县| 景东| 新巴尔虎右旗| 布拖县| 安乡县| 宜君县| 定结县| 长葛市| 东宁县| 云安县| 珲春市| 扎兰屯市| 自贡市| 任丘市| 太湖县| 百色市| 千阳县| 临澧县| 万州区| 嘉禾县| 广昌县| 喀喇沁旗| 花垣县| 全椒县| 泾源县| 宣威市| 怀远县| 大埔县| 台北市| 沁源县| 报价| 武宁县| 临湘市|