內(nèi)容分發(fā)方法及裝置的制造方法
【技術(shù)領域】
[0001]本發(fā)明涉及計算機網(wǎng)絡中的內(nèi)容分發(fā)技術(shù),特別涉及一種內(nèi)容分發(fā)方法、及裝置。
【背景技術(shù)】
[0002]隨著計算機技術(shù)的發(fā)展,越來越多的數(shù)據(jù)通過網(wǎng)絡到達不同的用戶終端。網(wǎng)絡數(shù)據(jù)的分發(fā)不僅限唯一的接收者。將數(shù)據(jù)推送至眾多接收者往往需要花費大量的流量?,F(xiàn)有技術(shù)中推送數(shù)據(jù)是全網(wǎng)下執(zhí)行推送操作。全網(wǎng)發(fā)送的方法推送的份數(shù)較多也會推送至已經(jīng)擁有所述數(shù)據(jù)的用戶端,造成流量浪費。所以如何在大量發(fā)送數(shù)據(jù)時節(jié)省數(shù)據(jù)流量是亟待解決的問題。
【發(fā)明內(nèi)容】
[0003]有鑒于此,本發(fā)明提供一種數(shù)據(jù)分發(fā)方法、裝置及系統(tǒng),可以有效節(jié)省流量。
[0004]一種內(nèi)容分發(fā)方法,用于在內(nèi)容分發(fā)網(wǎng)絡中對將待分發(fā)內(nèi)容進行分發(fā),所述內(nèi)容分發(fā)網(wǎng)絡包括多個用于根據(jù)用戶終端請求返回數(shù)據(jù)的接入節(jié)點,所述方法包括以下步驟:
[0005]接收第一用戶終端發(fā)送的數(shù)據(jù)發(fā)送請求,所述數(shù)據(jù)發(fā)送請求內(nèi)包括記上傳者以及第一接收者列表;
[0006]獲取所述上傳者以及第一接收者列表內(nèi)每個接收者所屬的接入節(jié)點;
[0007]根據(jù)所述第一接收者列表獲取第二接收者列表,所述第二接收者列表內(nèi)每個接收者所屬的接入節(jié)點均不同于所述第一用戶終端的接入節(jié)點;
[0008]將所述待分發(fā)內(nèi)容發(fā)送至第二接收者列表中每個接收者所屬的接入節(jié)點。
[0009]一種內(nèi)容分發(fā)裝置,用于在內(nèi)容分發(fā)網(wǎng)絡中對將待分發(fā)內(nèi)容進行分發(fā),所述內(nèi)容分發(fā)網(wǎng)絡包括多個用于根據(jù)用戶終端請求返回數(shù)據(jù)的接入節(jié)點,所述裝置包括:
[0010]接收模塊,用于接收第一用戶終端發(fā)送的數(shù)據(jù)發(fā)送請求,所述數(shù)據(jù)發(fā)送請求內(nèi)包括記上傳者以及第一接收者列表;
[0011]接入節(jié)點查詢模塊,用于獲取所述上傳者以及第一接收者列表內(nèi)每個接收者所屬的接入節(jié)點;
[0012]聚合模塊,用于根據(jù)所述第一接收者列表獲取第二接收者列表,所述第二接收者列表內(nèi)每個接收者所屬的接入節(jié)點均不同于所述第一用戶終端的接入節(jié)點;
[0013]分發(fā)模塊,用于將所述待分發(fā)內(nèi)容發(fā)送至第二接收者列表中每個接收者所屬的接入節(jié)點。
[0014]根據(jù)上述的方法及裝置,可以避免針對位于同一接入節(jié)點內(nèi)的接收者進行內(nèi)容推送操作,可以提升推送效率,降低網(wǎng)絡流量。
[0015]為讓本發(fā)明的上述和其他目的、特征和優(yōu)點能更明顯易懂,下文特舉較佳實施例,并配合所附圖式,作詳細說明如下。
【附圖說明】
[0016]圖1為一種內(nèi)容分發(fā)網(wǎng)絡的架構(gòu)示意圖。
[0017]圖2為圖1的內(nèi)容分發(fā)網(wǎng)絡應用于即時通訊應用程序的后臺服務器系統(tǒng)的示意圖。
[0018]圖3為圖2所示的用戶終端的結(jié)構(gòu)示意圖。
[0019]圖4為圖2所示的存儲服務器的結(jié)構(gòu)示意圖。
[0020]圖5為圖2所示的內(nèi)容分發(fā)服務器的結(jié)構(gòu)示意圖。
[0021 ]圖6為圖2的內(nèi)容分發(fā)網(wǎng)絡的流程示意圖。
[0022]圖7及圖8為圖6的流程的詳細示意圖。
[0023]圖9為圖6的流程的效果示意圖。
[0024]圖10為本發(fā)明第一實施例提供的內(nèi)容分發(fā)方法流程圖。
[0025]圖11為本發(fā)明第二實施例提供的內(nèi)容分發(fā)方法流程圖。
[0026]圖12為本發(fā)明第三實施例提供的內(nèi)容分發(fā)方法流程圖。
[0027]圖13為本發(fā)明第四實施例提供的內(nèi)容分發(fā)方法流程圖。
[0028]圖14為本發(fā)明第五實施例提供的內(nèi)容分發(fā)方法流程圖。
[0029]圖15為本發(fā)明第六實施例提供的數(shù)據(jù)分發(fā)裝置結(jié)構(gòu)框圖。
[0030]圖16為本發(fā)明第七實施例提供的數(shù)據(jù)分發(fā)裝置結(jié)構(gòu)框圖。
[0031]圖17為本發(fā)明第八實施例提供的數(shù)據(jù)分發(fā)裝置結(jié)構(gòu)框圖。
[0032]圖18為本發(fā)明第九實施例提供的數(shù)據(jù)分發(fā)裝置結(jié)構(gòu)框圖。
[0033]圖19為本發(fā)明第十實施例提供的數(shù)據(jù)分發(fā)裝置結(jié)構(gòu)框圖。
【具體實施方式】
[0034]為更進一步闡述本發(fā)明為實現(xiàn)預定發(fā)明目的所采取的技術(shù)手段及功效,以下結(jié)合附圖及較佳實施例,對依據(jù)本發(fā)明的【具體實施方式】、結(jié)構(gòu)、特征及其功效,詳細說明如后。
[0035]本發(fā)明實施例提供一種內(nèi)容分發(fā)方法、內(nèi)容分發(fā)裝置及內(nèi)容分發(fā)系統(tǒng),其用于在內(nèi)容分發(fā)網(wǎng)絡(Content Delivery Network, Q)N)或數(shù)據(jù)中心內(nèi)進行內(nèi)容分發(fā)。
[0036]上述的內(nèi)容分發(fā)網(wǎng)絡是指一種透過互聯(lián)網(wǎng)互相連接的網(wǎng)絡系統(tǒng),在該網(wǎng)絡系統(tǒng)中包括多臺服務器,可分別獨立提供相同的網(wǎng)絡內(nèi)容。
[0037]上述的數(shù)據(jù)中心是指包括多臺服務器的網(wǎng)絡系統(tǒng),其可分為一般互聯(lián)網(wǎng)數(shù)據(jù)中心與虛擬互聯(lián)網(wǎng)數(shù)據(jù)中心。一般互聯(lián)網(wǎng)數(shù)據(jù)中心是指其內(nèi)部服務器之間均通過局域網(wǎng)(LocalArea Network,LAN)相互連接的數(shù)據(jù)中心,其內(nèi)可能包括多種設備,例如服務器、路由器、數(shù)據(jù)庫等。虛擬互聯(lián)網(wǎng)數(shù)據(jù)中心是指服務器之間需要依賴互聯(lián)網(wǎng)進行連接的數(shù)據(jù)中心。例如,多個一般互聯(lián)網(wǎng)數(shù)據(jù)中心之間通過互聯(lián)網(wǎng)互連,共同構(gòu)成一個虛擬互聯(lián)網(wǎng)數(shù)據(jù)中心,或者多臺服務器均通過互聯(lián)網(wǎng)互連,共同構(gòu)成一個虛擬互聯(lián)網(wǎng)數(shù)據(jù)中心。
[0038]圖1為一種內(nèi)容分發(fā)網(wǎng)絡(或者虛擬數(shù)據(jù)中心)的架構(gòu)示意圖。如圖1所示,內(nèi)容分發(fā)網(wǎng)絡100包括第一數(shù)據(jù)中心110與第二數(shù)據(jù)中心120。第一數(shù)據(jù)中心110與第二數(shù)據(jù)中心120為上述的一般互聯(lián)網(wǎng)數(shù)據(jù)中心。第一數(shù)據(jù)中心110與第二數(shù)據(jù)中心120之間可以通過公共互聯(lián)網(wǎng)相連接。圖1中僅示出兩個數(shù)據(jù)中心,然而,可以理解,虛擬互聯(lián)網(wǎng)數(shù)據(jù)中心100可包括更多的數(shù)據(jù)中心。一般來說,每個數(shù)據(jù)中心,負責一個地理區(qū)域內(nèi)所有用戶終端的接入,提供用戶請求的數(shù)據(jù)。因此,圖1所示的每個數(shù)據(jù)中心,就為一個接入節(jié)點。
[0039]圖1中還示出了一種分發(fā)控制服務器101,該分發(fā)控制服務器101用于輔助在不同的數(shù)據(jù)中心(接入節(jié)點)之間分發(fā)數(shù)據(jù)。例如,分發(fā)控制服務器101可以負責傳輸通道的分配。上述的傳輸通道是指互聯(lián)網(wǎng)傳輸通道,一般來說,互聯(lián)網(wǎng)傳輸通道的數(shù)量及帶寬是受限的,要提升在兩個不同的接入節(jié)點之間傳輸數(shù)據(jù)的效率,需要對互聯(lián)網(wǎng)傳輸通道進行合理的調(diào)度。
[0040]當然,分發(fā)控制服務器101并不是必須的。接入節(jié)點之間可以分別記錄其他所有接入節(jié)點的IP地址,當要進行內(nèi)容分發(fā)的時候,可以在接入節(jié)點之間采用點對點(Peerto Peer, P2P)的方式進行。進一步地,還可以采用更加復雜的控制機制以提升接入節(jié)點之間的數(shù)據(jù)分發(fā)效率,降低網(wǎng)絡流量。例如,本申請人于2013年3月5日提出的,申請?zhí)枮?01310069065.7號,題為“內(nèi)容分發(fā)方法、裝置及系統(tǒng)”的專利申請就公開了一種更加高效的在CDN中進行內(nèi)容分發(fā)的技術(shù)方案,在此一并引入作為參考。此外,其他任意CDN不同接入節(jié)點之間進行內(nèi)容分的技術(shù)方案都適用于本發(fā)明實施例的技術(shù)方案。
[0041]參閱圖2,其為圖1的內(nèi)容分發(fā)網(wǎng)絡應用于一款即時通訊應用程序的后臺服務器系統(tǒng)的示意圖。第一數(shù)據(jù)中心110負責第一用戶終端201、第二用戶終端202的接入,而第二數(shù)據(jù)中心120負責第三用戶終端203以及第四用戶終端204的接入。上述的用戶終端的具體實例包括但并不限于手持式計算機、臺式計算機、移動電話、媒體播放器、個人數(shù)字助理及前述裝置的各種組合。圖3所示為第一用戶終端201的結(jié)構(gòu)框圖。第一用戶終端201包括:存儲器102、處理器104、存儲控制器106、外設接口 108、以及網(wǎng)絡模塊110。可以理解,圖3所示的結(jié)構(gòu)僅為示意,其并不對第一用戶終端201的結(jié)構(gòu)造成限定。例如,第一用戶終端201還可包括比圖3中所示更多或者更少的組件,或者具有與圖3所示不同的配置。
[0042]存儲器102可用于存儲軟件程序以及模塊,如本發(fā)明實施例中的即使通訊會話的方法及裝置對應的程序指令/模塊,處理器104通過運行存儲在存儲器102內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應用以及數(shù)據(jù)處理,即實現(xiàn)上述的方法。
[0043]存儲器102可包括高速隨機存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。在一些實例中,存儲器102可進一步包括相對于處理器106遠程設置的存儲器,這些遠程存儲器可以通過網(wǎng)絡連接至第一用戶終端201。上述網(wǎng)絡的實例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。處理器106以及其他可能的組件對存儲器102的訪問可在存儲控制器104的控制下進行。
[0044]外設接口 108將各種輸入/輸入裝置耦合至處理器106。處理器106運行存儲器102內(nèi)的各種軟件、指令電子終端100執(zhí)行各種功能以及進行數(shù)據(jù)處理。在一些實施例中,外設接口 108、處理器106以及存儲控制器104可以在單個芯片中實現(xiàn)。在其他一些實例中,他們可以分別由獨立的芯片實現(xiàn)。
[0045]網(wǎng)絡模塊110用于接收以及發(fā)送網(wǎng)絡信號。上述網(wǎng)絡信號可包括無線信號或者有線信號。在一個實例中,上述網(wǎng)絡信號為有線網(wǎng)絡信號。此時,網(wǎng)絡模塊110可包括處理器、隨機存儲器、轉(zhuǎn)換器、晶體振蕩器等元件。
[0046]上述的軟件程序以及模塊包括:操作系統(tǒng)122以及即時通訊模塊124。操作系統(tǒng)122其可包括各種用于管理系統(tǒng)任務(