數(shù)據(jù)傳輸方法及系統(tǒng)、控制裝置與節(jié)點裝置制造方法
【專利摘要】本發(fā)明公開了一種數(shù)據(jù)傳輸方法及系統(tǒng)、控制裝置與節(jié)點裝置。所述方法包括:控制裝置確定本次數(shù)據(jù)傳輸?shù)脑垂?jié)點;從用于接收數(shù)據(jù)的節(jié)點列表中選擇未被選擇過用于接收數(shù)據(jù)的節(jié)點作為本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點,本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為傳輸鏈中本次數(shù)據(jù)傳輸?shù)脑垂?jié)點的下一個最近鄰節(jié)點;節(jié)點列表中包括至少一個用于接收數(shù)據(jù)的節(jié)點的標(biāo)識和各節(jié)點的地址;向本次數(shù)據(jù)傳輸?shù)脑垂?jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),數(shù)據(jù)傳輸任務(wù)包括本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址,以供本次數(shù)據(jù)傳輸?shù)脑垂?jié)點根據(jù)本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸數(shù)據(jù)。本發(fā)明的技術(shù)方案,能夠保證數(shù)據(jù)的傳輸速度和傳輸效率。
【專利說明】數(shù)據(jù)傳輸方法及系統(tǒng)、控制裝置與節(jié)點裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計算機【技術(shù)領(lǐng)域】,特別涉及一種數(shù)據(jù)傳輸方法及系統(tǒng)、控制裝置與節(jié) 點裝置。
【背景技術(shù)】
[0002] 隨著通信技術(shù)的發(fā)展,人們之間的交流越來越依賴于數(shù)據(jù)通信,而這樣就使得存 放數(shù)據(jù)的主機之間需要進行大量的數(shù)據(jù)傳輸與數(shù)據(jù)交換。為此,數(shù)據(jù)的傳輸技術(shù)受到了廣 泛的關(guān)注,也成為通信技術(shù)發(fā)展的重要標(biāo)志。
[0003] 若要完成主機之間的數(shù)據(jù)傳輸,通常有兩種實現(xiàn)方式。第一種方式為Rsync (Remote sync,遠程同步)方式,Rsync可以實現(xiàn)在主機之間點對點的數(shù)據(jù)傳輸。第二種方 式為端口映射(VIDC)方式,VIDC的實現(xiàn)方式為:源節(jié)點首先將數(shù)據(jù)傳輸給一個節(jié)點,當(dāng)該 節(jié)點接收到所有的數(shù)據(jù)后,將該已接收完畢的節(jié)點再作為源節(jié)點,并與源節(jié)點以及在此之 前接收完畢的節(jié)點一起對其他節(jié)點進行數(shù)據(jù)傳輸。
[0004] 在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
[0005] 第一種方式下,盡管實現(xiàn)了在主機之間可以直接進行點對點的數(shù)據(jù)傳輸,但對于 多點傳輸來說,則只能借助于手工操作向各個節(jié)點逐次進行數(shù)據(jù)傳輸,而無法對其中的節(jié) 點進行有效控制,從而使得數(shù)據(jù)的傳輸速度較慢,數(shù)據(jù)傳輸?shù)男屎艿?。第二種方式與第一 種方式相比,雖然明顯提高了數(shù)據(jù)傳輸?shù)男?,但是每個節(jié)點的傳輸數(shù)據(jù)所需要消耗的網(wǎng) 卡流量、CPU使用不均勻,而且當(dāng)傳輸文件非常大的時候,例如虛擬主機的生成就是依賴于 鏡像文件的快速復(fù)制,且鏡像文件非常大,進行一次傳輸所需要的時間也會很長,數(shù)據(jù)傳輸 的效率仍然很低。
【發(fā)明內(nèi)容】
[0006] 為了解決現(xiàn)有技術(shù)的問題,本發(fā)明實施例提供了一種數(shù)據(jù)傳輸方法及系統(tǒng)、控制 裝置與節(jié)點裝置。所述技術(shù)方案如下:
[0007] -方面,提供了一種數(shù)據(jù)傳輸方法,所述方法包括:
[0008] 控制裝置確定本次數(shù)據(jù)傳輸?shù)脑垂?jié)點;
[0009] 所述控制裝置從用于接收所述數(shù)據(jù)的節(jié)點列表中選擇未被選擇過用于接收所述 數(shù)據(jù)的節(jié)點作為本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點,所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為傳輸鏈中所 述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點的下一個最近鄰節(jié)點;所述節(jié)點列表中包括至少一個用于接收數(shù) 據(jù)的節(jié)點的標(biāo)識和各所述節(jié)點的地址;
[0010] 所述控制裝置向所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),所述數(shù)據(jù)傳輸任 務(wù)包括所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址,以供所述本 次數(shù)據(jù)傳輸?shù)脑垂?jié)點根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪?的節(jié)點傳輸所述數(shù)據(jù)。
[0011] 另一方面,再提供了一種數(shù)據(jù)傳輸方法,所述方法包括:
[0012] 節(jié)點作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點接收控制裝置下發(fā)的數(shù)據(jù)傳輸任務(wù),所述數(shù)據(jù)傳 輸任務(wù)包括所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址;
[0013] 所述節(jié)點根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪康?節(jié)點傳輸所述數(shù)據(jù)。
[0014] 再一方面,再提供一種控制裝置,所述裝置包括:
[0015] 確定模塊,用于確定本次數(shù)據(jù)傳輸?shù)脑垂?jié)點;
[0016] 選擇模塊,用于從用于接收所述數(shù)據(jù)的節(jié)點列表中選擇未被選擇過用于接收所述 數(shù)據(jù)的節(jié)點作為本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點,所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為傳輸鏈中所 述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點的下一個最近鄰節(jié)點;所述節(jié)點列表中包括至少一個用于接收數(shù) 據(jù)的節(jié)點的標(biāo)識和各所述節(jié)點的地址;
[0017] 發(fā)送模塊,用于向所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),所述數(shù)據(jù)傳輸 任務(wù)包括所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址,以供所述 本次數(shù)據(jù)傳輸?shù)脑垂?jié)點根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)?目的節(jié)點傳輸所述數(shù)據(jù)。
[0018] 又另一方面,提供一種節(jié)點裝置,所述裝置包括:
[0019] 接收模塊,用于在所述節(jié)點裝置作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點接收控制裝置下發(fā)的 數(shù)據(jù)傳輸任務(wù),所述數(shù)據(jù)傳輸任務(wù)包括所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和所述本次數(shù)據(jù)傳輸 的目的節(jié)點的地址;
[0020] 發(fā)送模塊,用于根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)?目的節(jié)點傳輸所述數(shù)據(jù)。
[0021] 再另一方面,還提供一種數(shù)據(jù)傳輸系統(tǒng),所述系統(tǒng)包括控制裝置和至少一個節(jié)點 裝置;所述控制裝置采用如上所述的控制裝置,所述節(jié)點裝置采用如上所述的節(jié)點裝置。
[0022] 本發(fā)明實施例提供的技術(shù)方案帶來的有益效果是:
[0023] 本發(fā)明實施例通過采用上述技術(shù)方案,實現(xiàn)一種鏈式分發(fā)數(shù)據(jù)的方案,可以把數(shù) 據(jù)快速的分發(fā)到節(jié)點列表中的所有節(jié)點上,正常情況下每個節(jié)點的熱度相同,即數(shù)據(jù)只接 收一次、分發(fā)一次,節(jié)點的熱度相同,即每個節(jié)點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使 用均勻,能夠有效地保證數(shù)據(jù)的傳輸速度和傳輸效率。而且本發(fā)明實施例的技術(shù)方案,與現(xiàn) 有技術(shù)的第一種方式相比,不需要借助于手工操作來傳輸數(shù)據(jù),控制裝置可以對節(jié)點進行 有效控制,保證了數(shù)據(jù)的傳輸速度和傳輸效率。與現(xiàn)有技術(shù)的第二種方式相比,能夠保證每 個節(jié)點的熱度盡可能的均勻,即使得每個節(jié)點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使用 均勻,這樣當(dāng)傳輸文件非常大的時候,也能夠保證數(shù)據(jù)的傳輸速度和傳輸效率。例如而虛擬 主機的生成就是依賴于鏡像文件的快速復(fù)制的,因此本發(fā)明實施例的技術(shù)方案可以適用在 云平臺的設(shè)計和實現(xiàn)中,解決了虛擬主機的上線、擴容、遷移等問題,節(jié)省了大量的時間,為 用戶提供了更好的體驗。
【專利附圖】
【附圖說明】
[0024] 為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于 本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。
[0025] 圖1為本發(fā)明一實施例提供的數(shù)據(jù)傳輸方法的流程圖。
[0026] 圖2為本發(fā)明另一實施例提供的數(shù)據(jù)傳輸方法的流程圖。
[0027] 圖3為本發(fā)明再一實施例提供的數(shù)據(jù)傳輸方法的流程圖。
[0028] 圖4為本發(fā)明實施例提供的數(shù)據(jù)處理的一種示例圖。
[0029] 圖5為圖4的數(shù)據(jù)處理中各節(jié)點的狀態(tài)變遷圖。
[0030] 圖6為本發(fā)明實施例提供的數(shù)據(jù)處理的另一種示例圖。
[0031] 圖7為本發(fā)明實施例提供的數(shù)據(jù)處理的又一種示例圖。
[0032] 圖8為本發(fā)明一實施例提供的控制裝置的結(jié)構(gòu)示意圖。
[0033] 圖9為本發(fā)明另一實施例提供的控制裝置的結(jié)構(gòu)示意圖。
[0034] 圖10為本發(fā)明一實施例提供的節(jié)點裝置的結(jié)構(gòu)示意圖。
[0035] 圖11為本發(fā)明另一實施例提供的節(jié)點裝置的結(jié)構(gòu)示意圖。
[0036] 圖12為本發(fā)明實施例提供的數(shù)據(jù)傳輸系統(tǒng)的結(jié)構(gòu)示意圖。
[0037] 圖13是本發(fā)明實施例提供的一種終端設(shè)備結(jié)構(gòu)示意圖。
【具體實施方式】
[0038] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方 式作進一步地詳細描述。
[0039] 圖1為本發(fā)明一實施例提供的數(shù)據(jù)傳輸方法的流程圖。如圖1所示,本實施例的 數(shù)據(jù)傳輸方法,具體可以包括如下步驟:
[0040] 100、控制裝置確定本次數(shù)據(jù)傳輸?shù)脑垂?jié)點;
[0041] 101、控制裝置從用于接收數(shù)據(jù)的節(jié)點列表中選擇未被選擇過用于接收數(shù)據(jù)的節(jié) 點作為本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點;
[0042] 本實施例中本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為傳輸鏈中本次數(shù)據(jù)傳輸?shù)脑垂?jié)點的下 一個最近鄰節(jié)點;節(jié)點列表中包括至少一個用于接收數(shù)據(jù)的節(jié)點的標(biāo)識(如節(jié)點的編號) 和各節(jié)點的地址(如各節(jié)點的IP地址)。
[0043] 在本實施例的傳輸鏈中,數(shù)據(jù)從前向后傳輸,在每兩個相鄰的節(jié)點中,在數(shù)據(jù)傳輸 時,前一個節(jié)點為一次數(shù)據(jù)傳輸?shù)脑垂?jié)點,后一個節(jié)點為該次數(shù)據(jù)傳輸?shù)哪康墓?jié)點。
[0044] 102、控制裝置向本次數(shù)據(jù)傳輸?shù)脑垂?jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),數(shù)據(jù)傳輸任務(wù)包括本 次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址,以供本次數(shù)據(jù)傳輸?shù)脑垂?jié)點根 據(jù)本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸數(shù)據(jù)。
[0045] 例如本次數(shù)據(jù)傳輸?shù)脑垂?jié)點可以根據(jù)本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的IP地址向本次 數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸數(shù)據(jù)。
[0046] 可選地,其中數(shù)據(jù)傳輸任務(wù)還可以包括其他參數(shù),如數(shù)據(jù)在本次數(shù)據(jù)傳輸?shù)脑垂?jié) 點中的路徑,數(shù)據(jù)在本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點中要存儲的路徑,以便于本次數(shù)據(jù)傳輸?shù)脑?節(jié)點從本次數(shù)據(jù)傳輸?shù)脑垂?jié)點中的路徑下讀取該數(shù)據(jù),并向本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸 該數(shù)據(jù),以供本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點將該數(shù)據(jù)存儲在本次數(shù)據(jù)傳輸?shù)脑垂?jié)點中的路徑 下。
[0047] 本實施例通過采用上述技術(shù)方案,實現(xiàn)一種鏈式分發(fā)數(shù)據(jù)的方案,可以把數(shù)據(jù)快 速的分發(fā)到節(jié)點列表中的所有節(jié)點上,正常情況下每個節(jié)點的熱度相同,即數(shù)據(jù)只接收一 次、分發(fā)一次,節(jié)點的熱度相同,即每個節(jié)點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使用均 勻,能夠有效地保證數(shù)據(jù)的傳輸速度和傳輸效率。而且本實施例的技術(shù)方案,與現(xiàn)有技術(shù)的 第一種方式相比,不需要借助于手工操作來傳輸數(shù)據(jù),控制裝置可以對節(jié)點進行有效控制, 保證了數(shù)據(jù)的傳輸速度和傳輸效率。與現(xiàn)有技術(shù)的第二種方式相比,能夠保證每個節(jié)點的 熱度盡可能的均勻,即使得每個節(jié)點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使用均勻,這 樣當(dāng)傳輸文件非常大的時候,也能夠保證數(shù)據(jù)的傳輸速度和傳輸效率。例如而虛擬主機的 生成就是依賴于鏡像文件的快速復(fù)制的,因此本實施例的技術(shù)方案可以適用在云平臺的設(shè) 計和實現(xiàn)中,解決了虛擬主機的上線、擴容、遷移等問題,節(jié)省了大量的時間,為用戶提供了 更好的體驗。
[0048] 可選地,在上述實施例的技術(shù)方案的基礎(chǔ)上,其中步驟100 "控制裝置確定本次數(shù) 據(jù)傳輸?shù)脑垂?jié)點"具體可以包括兩種情況:
[0049] 第一種情況、當(dāng)控制裝置首次控制發(fā)送數(shù)據(jù)時,確定本次數(shù)據(jù)傳輸?shù)脑垂?jié)點為數(shù) 據(jù)未被發(fā)送前存儲數(shù)據(jù)的原始節(jié)點。
[0050] 第二種情況、當(dāng)控制裝置非首次控制發(fā)送數(shù)據(jù)時,將最近鄰的上次數(shù)據(jù)傳輸?shù)哪?的節(jié)點作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點。
[0051] 數(shù)據(jù)首次傳輸時,數(shù)據(jù)存儲在原始節(jié)點中。當(dāng)首次控制發(fā)送數(shù)據(jù)時,控制節(jié)點根據(jù) 原始節(jié)點的IP地址,向原始節(jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),原始節(jié)點接收數(shù)據(jù)傳輸任務(wù),并根據(jù) 數(shù)據(jù)傳輸任務(wù)中首次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的IP地址,向首次數(shù)據(jù)傳輸?shù)哪康墓?jié)點發(fā)送該 數(shù)據(jù)。首次傳輸數(shù)據(jù)完畢,從第二次傳輸數(shù)據(jù)開始,將上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為本次數(shù) 據(jù)傳輸?shù)脑垂?jié)點,然后控制裝置從節(jié)點列表中選擇未被選擇過的節(jié)點作為本次數(shù)據(jù)傳輸?shù)?目的節(jié)點;由本次數(shù)據(jù)傳輸?shù)脑垂?jié)點根據(jù)本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的IP地址,向本次數(shù)據(jù) 傳輸?shù)哪康墓?jié)點傳輸數(shù)據(jù),依次類推,直到節(jié)點列表中所有節(jié)點都被選擇過,此時正常情況 下,節(jié)點列表中的所有節(jié)點都接收到數(shù)據(jù)。
[0052] 進一步可選地,在上述實施例的技術(shù)方案的基礎(chǔ)上,其中步驟"當(dāng)控制裝置非首次 控制發(fā)送數(shù)據(jù)時,將最近鄰的上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點"之前, 還可以包括如下步驟:
[0053] ( 1)控制裝置周期性地接收上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報的數(shù)據(jù)接收進度;
[0054] (2)當(dāng)控制裝置接收到數(shù)據(jù)接收進度為100%時,控制裝置確定上次數(shù)據(jù)傳輸完 成。
[0055] 例如,可以設(shè)置每隔一定時間段,各節(jié)點向控制裝置上報依次數(shù)據(jù)傳輸進度,例如 當(dāng)節(jié)點接收數(shù)據(jù)時,可以為數(shù)據(jù)接收進度(具體可以為數(shù)據(jù)接收的百分比)。當(dāng)節(jié)點發(fā)送數(shù) 據(jù)時,可以為數(shù)據(jù)發(fā)送進度(具體可以為數(shù)據(jù)發(fā)送的百分比)。具體地,各節(jié)點還可以每隔一 定時間段向控制裝置上報發(fā)送數(shù)據(jù)的速率或者接收數(shù)據(jù)的速率。例如在上次數(shù)據(jù)傳輸過程 中,上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點周期性地向控制裝置上報數(shù)據(jù)接收進度,如在數(shù)據(jù)傳輸過程 中,隨著數(shù)據(jù)的傳輸,上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點周期性地上報的數(shù)據(jù)傳輸進度可以分別為 5%、30%、66%、90%和100%。當(dāng)控制裝置接收到上次數(shù)據(jù)傳輸目的節(jié)點上報的數(shù)據(jù)傳輸進度 為100%時,確定上次數(shù)據(jù)傳輸完成。
[0056] 進一步可選地,在上實施例的技術(shù)方案的基礎(chǔ)上,"控制裝置向本次數(shù)據(jù)傳輸?shù)脑?節(jié)點發(fā)送下發(fā)數(shù)據(jù)傳輸任務(wù)"之后,還可以包括如下步驟:
[0057] (a)控制裝置確定在預(yù)設(shè)閾值的周期內(nèi)未接收到本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報的 數(shù)據(jù)接收進度;
[0058] 例如預(yù)設(shè)閾值的周期可以為6個周期。實際應(yīng)用中,具體可以根據(jù)每個周期的時 間長短,確定預(yù)設(shè)閾值的周期的數(shù)目。
[0059] (b)控制裝置確定本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點故障;
[0060] (c)控制裝置從原始節(jié)點和節(jié)點列表中已經(jīng)接收到數(shù)據(jù)的節(jié)點中選擇子節(jié)點最少 的節(jié)點作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點;
[0061] (d)控制裝置重新從用于接收數(shù)據(jù)的節(jié)點列表中選擇未被選擇過用于接收數(shù)據(jù)的 節(jié)點作為本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點;
[0062] (e)控制裝置向本次數(shù)據(jù)傳輸?shù)脑垂?jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),以供本次數(shù)據(jù)傳輸?shù)?源節(jié)點根據(jù)本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸數(shù)據(jù)。
[0063] 需要說明的是,上述技術(shù)方案中也可以沒有步驟(c)。此時,當(dāng)本次數(shù)據(jù)傳輸?shù)哪?的節(jié)點故障時,可以由本次數(shù)據(jù)傳輸?shù)脑垂?jié)點向重新選擇的本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸 數(shù)據(jù)。但是這樣的話,本次數(shù)據(jù)傳輸?shù)脑垂?jié)點可能要多次作為源節(jié)點來傳輸數(shù)據(jù),這樣本次 數(shù)據(jù)傳輸?shù)脑垂?jié)點可能需要消耗的網(wǎng)卡流量更多、(PU使用也更多,造成各節(jié)點需要消耗的 網(wǎng)卡流量更多、CPU使用不均勻。因此,本實施例中增加步驟(c),控制裝置從原始節(jié)點和節(jié) 點列表中已經(jīng)接收到數(shù)據(jù)的節(jié)點中選擇子節(jié)點最少的節(jié)點作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點,然 后由重新選擇的本次數(shù)據(jù)傳輸?shù)脑垂?jié)點向重新選擇的本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸數(shù)據(jù)。 從原始節(jié)點和節(jié)點列表中已經(jīng)接收到數(shù)據(jù)的節(jié)點中選擇子節(jié)點最少的節(jié)點作為本次數(shù)據(jù) 傳輸?shù)脑垂?jié)點,可以盡量保證各節(jié)點需要消耗的網(wǎng)卡流量更多、CPU使用均勻,保證數(shù)據(jù)傳 輸速度和數(shù)據(jù)傳輸效率。
[0064] 進一步可選地,在上實施例的技術(shù)方案的基礎(chǔ)上,"控制裝置向本次數(shù)據(jù)傳輸?shù)脑?節(jié)點發(fā)送下發(fā)數(shù)據(jù)傳輸任務(wù)"之后,還可以包括:控制裝置確定節(jié)點列表中除故障節(jié)點之 夕卜,無未接收過數(shù)據(jù)的節(jié)點,確定數(shù)據(jù)傳輸完成。
[0065] 上述實施例的所有可選技術(shù)方案,可以采用可以結(jié)合的方式任意組合,形成本發(fā) 明的可選實施例,在此不再一一舉例。
[0066] 上述實施例的技術(shù)方案,可以把數(shù)據(jù)快速的分發(fā)到節(jié)點列表中的所有節(jié)點上,正 常情況下每個節(jié)點的熱度相同,即數(shù)據(jù)只接收一次、分發(fā)一次,節(jié)點的熱度相同,即每個節(jié) 點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、(PU使用均勻,能夠有效地保證數(shù)據(jù)的傳輸速度和傳 輸效率。而且上述實施例的技術(shù)方案,與現(xiàn)有技術(shù)的第一種方式相比,不需要借助于手工操 作來傳輸數(shù)據(jù),控制裝置可以對節(jié)點進行有效控制,保證了數(shù)據(jù)的傳輸速度和傳輸效率。與 現(xiàn)有技術(shù)的第二種方式相比,能夠保證每個節(jié)點的熱度盡可能的均勻,即使得每個節(jié)點的 傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使用均勻,這樣當(dāng)傳輸文件非常大的時候,也能夠保 證數(shù)據(jù)的傳輸速度和傳輸效率。例如而虛擬主機的生成就是依賴于鏡像文件的快速復(fù)制 的,因此上述實施例的技術(shù)方案可以適用在云平臺的設(shè)計和實現(xiàn)中,解決了虛擬主機的上 線、擴容、遷移等問題,節(jié)省了大量的時間,為用戶提供了更好的體驗。
[0067] 圖2為本發(fā)明另一實施例提供的數(shù)據(jù)傳輸方法的流程圖。如圖2所示,本實施例的 數(shù)據(jù)傳輸方法,在上述圖1及可選實施例的技術(shù)方案的基礎(chǔ)上,本實施例的數(shù)據(jù)傳輸方法, 具體可以包括如下步驟:
[0068] 200、控制裝置獲取待發(fā)送的數(shù)據(jù)所在的原始節(jié)點的路徑、原始節(jié)點的IP地址;執(zhí) 行步驟201 ;
[0069] 201、控制裝置從節(jié)點列表中獲取一個節(jié)點,作為首次數(shù)據(jù)傳輸?shù)哪康墓?jié)點,并獲 取首次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的IP地址;執(zhí)行步驟202 ;
[0070] 本實施例的節(jié)點列表時用于接收該數(shù)據(jù)的所有節(jié)點的集合,該節(jié)點列表中包括至 少一個節(jié)點的標(biāo)識,以及每一個節(jié)點的IP地址。
[0071] 202、控制裝置根據(jù)原始節(jié)點的IP地址,向該原始節(jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),以供原 始節(jié)點向首次數(shù)據(jù)傳輸?shù)哪康墓?jié)點發(fā)送該數(shù)據(jù);執(zhí)行步驟203 ;
[0072] 該數(shù)據(jù)傳輸任務(wù)中包括首次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的IP地址和首次數(shù)據(jù)傳輸?shù)哪?的節(jié)點中存儲該數(shù)據(jù)的路徑。可選地,該數(shù)據(jù)傳輸任務(wù)中可以不包括首次數(shù)據(jù)傳輸?shù)哪康?節(jié)點中存儲該數(shù)據(jù)的路徑,此時由首次數(shù)據(jù)傳輸?shù)哪康墓?jié)點去確定存儲該數(shù)據(jù)的路徑。
[0073] 203、控制裝置周期性地接收首次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報的數(shù)據(jù)接收進度;執(zhí)行 步驟204 ;
[0074] 例如還可以接收首次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報的數(shù)據(jù)傳輸速度等等。
[0075] 204、當(dāng)控制裝置接收到數(shù)據(jù)接收進度為100%時,控制裝置確定首次數(shù)據(jù)傳輸完 成;執(zhí)行步驟205 ;
[0076] 205、開始新一輪的數(shù)據(jù)傳輸,控制裝置將上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為本次數(shù)據(jù) 傳輸?shù)脑垂?jié)點;執(zhí)行步驟206 ;
[0077] 206、控制裝置判斷節(jié)點列表中是否還有未選擇過的節(jié)點,當(dāng)有的時候,執(zhí)行步驟 207 ;否則當(dāng)沒有的時候,數(shù)據(jù)傳輸完畢。
[0078] 當(dāng)數(shù)據(jù)傳輸完畢,所有節(jié)點退出數(shù)據(jù)傳輸。本實施例中節(jié)點列表中的將誒點被選 擇即表示向該節(jié)點發(fā)送過數(shù)據(jù)。
[0079] 207、控制裝置從節(jié)點列表中選擇未被選擇過用于接收數(shù)據(jù)的節(jié)點作為本次數(shù)據(jù) 傳輸?shù)哪康墓?jié)點;執(zhí)行步驟208 ;
[0080] 208、控制裝置根據(jù)本次數(shù)據(jù)傳輸?shù)脑垂?jié)點的IP地址,向本次數(shù)據(jù)傳輸?shù)脑垂?jié)點 下發(fā)數(shù)據(jù)傳輸任務(wù);執(zhí)行步驟209 ;
[0081] 該數(shù)據(jù)傳輸任務(wù)包括本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的IP地址、該數(shù)據(jù)在本次數(shù)據(jù)傳 輸?shù)脑垂?jié)點的存儲路徑和該數(shù)據(jù)在本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的存儲路徑,以供本次數(shù)據(jù)傳 輸?shù)脑垂?jié)點從本次數(shù)據(jù)傳輸?shù)脑垂?jié)點的存儲路徑下獲取該數(shù)據(jù),并向本次數(shù)據(jù)傳輸?shù)哪康?節(jié)點發(fā)送該數(shù)據(jù),以供本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點將該數(shù)據(jù)存儲在本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點 的存儲路徑下??蛇x地,該數(shù)據(jù)傳輸任務(wù)中可以不包括該數(shù)據(jù)在本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點 的存儲路徑,而由本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點來確定存儲該數(shù)據(jù)的路徑。
[0082] 209、控制裝置判斷是否接收到本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報的數(shù)據(jù)接收進度;若 是的時候,執(zhí)行步驟210 ;否則執(zhí)行步驟211 ;
[0083] 本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點向控制裝置上報數(shù)據(jù)處理進度是周期性地上報的。
[0084] 210、控制裝置判斷并確定接收到數(shù)據(jù)接收進度為100%時,控制裝置確定本次數(shù) 據(jù)傳輸完成;執(zhí)行步驟205 ;
[0085] 確定在預(yù)設(shè)閾值的周期內(nèi)未接收到本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報的數(shù)據(jù)接收進 度;
[0086] 211、當(dāng)控制裝置在預(yù)設(shè)閾值的周期內(nèi)均未接收到本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報 的數(shù)據(jù)接收進度,控制裝置確定本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點故障;執(zhí)行步驟212 ;
[0087] 此時控制裝置需要及時調(diào)整數(shù)據(jù)傳輸鏈路。
[0088] 212、控制裝置從原始節(jié)點和節(jié)點列表中已經(jīng)接收到數(shù)據(jù)的節(jié)點中選擇子節(jié)點最 少的節(jié)點作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點;執(zhí)行步驟213 ;
[0089] 213、控制裝置重新從節(jié)點列表中選擇未被選擇過用于接收數(shù)據(jù)的節(jié)點作為本次 數(shù)據(jù)傳輸?shù)哪康墓?jié)點;執(zhí)行步驟207 ;
[0090] 本實施例通過采用上述技術(shù)方案,實現(xiàn)一種鏈式分發(fā)數(shù)據(jù)的方案,可以把數(shù)據(jù)快 速的分發(fā)到節(jié)點列表中的所有節(jié)點上,正常情況下每個節(jié)點的熱度相同,即數(shù)據(jù)只接收一 次、分發(fā)一次,節(jié)點的熱度相同,即每個節(jié)點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使用均 勻,能夠有效地保證數(shù)據(jù)的傳輸速度和傳輸效率。而且本實施例的技術(shù)方案,與現(xiàn)有技術(shù)的 第一種方式相比,不需要借助于手工操作來傳輸數(shù)據(jù),控制裝置可以對節(jié)點進行有效控制, 保證了數(shù)據(jù)的傳輸速度和傳輸效率。與現(xiàn)有技術(shù)的第二種方式相比,能夠保證每個節(jié)點的 熱度盡可能的均勻,即使得每個節(jié)點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使用均勻,這 樣當(dāng)傳輸文件非常大的時候,也能夠保證數(shù)據(jù)的傳輸速度和傳輸效率。例如而虛擬主機的 生成就是依賴于鏡像文件的快速復(fù)制的,因此本實施例的技術(shù)方案可以適用在云平臺的設(shè) 計和實現(xiàn)中,解決了虛擬主機的上線、擴容、遷移等問題,節(jié)省了大量的時間,為用戶提供了 更好的體驗。
[0091] 圖3為本發(fā)明再一實施例提供的數(shù)據(jù)傳輸方法的流程圖。如圖3所示,本實施例 的數(shù)據(jù)處理方法,具體可以包括如下步驟:
[0092] 300、節(jié)點作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點接收控制裝置下發(fā)的數(shù)據(jù)傳輸任務(wù);
[0093] 其中該數(shù)據(jù)傳輸任務(wù)包括本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點 的地址,如該地址可以為IP地址。
[0094] 301、節(jié)點根據(jù)本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址,向本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸 數(shù)據(jù)。
[0095] 本實施例的技術(shù)方案與上述圖1所示實施例的技術(shù)方案的區(qū)別僅在于上述實施 例是在控制裝置側(cè)描述本發(fā)明的技術(shù)方案,本實施例在節(jié)點側(cè)描述本發(fā)明的技術(shù)方案,詳 細可以參考上述相關(guān)實施例的記載,在此不再贅述。
[0096] 本實施例通過采用上述技術(shù)方案,實現(xiàn)一種鏈式分發(fā)數(shù)據(jù)的方案,可以把數(shù)據(jù)快 速的分發(fā)到節(jié)點列表中的所有節(jié)點上,正常情況下每個節(jié)點的熱度相同,即數(shù)據(jù)只接收一 次、分發(fā)一次,節(jié)點的熱度相同,即每個節(jié)點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使用均 勻,能夠有效地保證數(shù)據(jù)的傳輸速度和傳輸效率。而且本實施例的技術(shù)方案,與現(xiàn)有技術(shù)的 第一種方式相比,不需要借助于手工操作來傳輸數(shù)據(jù),控制裝置可以對節(jié)點進行有效控制, 保證了數(shù)據(jù)的傳輸速度和傳輸效率。與現(xiàn)有技術(shù)的第二種方式相比,能夠保證每個節(jié)點的 熱度盡可能的均勻,即使得每個節(jié)點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使用均勻,這 樣當(dāng)傳輸文件非常大的時候,也能夠保證數(shù)據(jù)的傳輸速度和傳輸效率。例如而虛擬主機的 生成就是依賴于鏡像文件的快速復(fù)制的,因此本實施例的技術(shù)方案可以適用在云平臺的設(shè) 計和實現(xiàn)中,解決了虛擬主機的上線、擴容、遷移等問題,節(jié)省了大量的時間,為用戶提供了 更好的體驗。
[0097] 可選地,在上述圖3所示實施例的技術(shù)方案的基礎(chǔ)上,步驟301 "節(jié)點根據(jù)本次數(shù) 據(jù)傳輸?shù)哪康墓?jié)點的地址向本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸數(shù)據(jù)"之后,還可以包括:節(jié)點周 期性地向控制裝置上報數(shù)據(jù)發(fā)送進度,以供控制裝置根據(jù)數(shù)據(jù)發(fā)送進度確定本次數(shù)據(jù)傳輸 完成。
[0098] 可選地,在上述圖3所示實施例的技術(shù)方案的基礎(chǔ)上,步驟300 "節(jié)點作為本次數(shù) 據(jù)傳輸?shù)脑垂?jié)點接收控制裝置下發(fā)的數(shù)據(jù)傳輸任務(wù)"之前,還可以包括:節(jié)點作為上次數(shù)據(jù) 傳輸?shù)哪康墓?jié)點接收上次數(shù)據(jù)傳輸?shù)脑垂?jié)點發(fā)送的數(shù)據(jù)。
[0099] 進一步可選地,在上述實施例的步驟"節(jié)點作為上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點接收上 次數(shù)據(jù)傳輸?shù)脑垂?jié)點發(fā)送的數(shù)據(jù)"之后,還可以包括:節(jié)點作為上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點向 控制裝置上報數(shù)據(jù)接收進度,以供控制裝置根據(jù)數(shù)據(jù)接收進度確定上次數(shù)據(jù)傳輸完成。
[0100] 進一步可選地,在上述實施例的技術(shù)方案的基礎(chǔ)上,上述實施例的數(shù)據(jù)傳輸方法, 還可以包括:當(dāng)上次數(shù)據(jù)傳輸完成時,節(jié)點對數(shù)據(jù)的正確性進行校驗,并確定數(shù)據(jù)正確。
[0101] 上述實施例的所有可選技術(shù)方案,可以采用可以結(jié)合的方式任意組合,形成本發(fā) 明的可選實施例,在此不再一一舉例。
[0102] 上述實施例的技術(shù)方案與上述圖1及其可選實施例和圖2所示實施例的技術(shù)方案 的區(qū)別僅在于上述圖1及其可選實施例和圖2所示實施例是在控制裝置側(cè)描述本發(fā)明的技 術(shù)方案,本實施例在節(jié)點側(cè)描述本發(fā)明的技術(shù)方案,詳細可以參考上述相關(guān)實施例的記載, 在此不再贅述。
[0103] 上述實施例的技術(shù)方案,可以把數(shù)據(jù)快速的分發(fā)到節(jié)點列表中的所有節(jié)點上,正 常情況下每個節(jié)點的熱度相同,即數(shù)據(jù)只接收一次、分發(fā)一次,節(jié)點的熱度相同,即每個節(jié) 點的傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、(PU使用均勻,能夠有效地保證數(shù)據(jù)的傳輸速度和傳 輸效率。而且上述實施例的技術(shù)方案,與現(xiàn)有技術(shù)的第一種方式相比,不需要借助于手工操 作來傳輸數(shù)據(jù),控制裝置可以對節(jié)點進行有效控制,保證了數(shù)據(jù)的傳輸速度和傳輸效率。與 現(xiàn)有技術(shù)的第二種方式相比,能夠保證每個節(jié)點的熱度盡可能的均勻,即使得每個節(jié)點的 傳輸數(shù)據(jù)所需要消耗的網(wǎng)卡流量、CPU使用均勻,這樣當(dāng)傳輸文件非常大的時候,也能夠保 證數(shù)據(jù)的傳輸速度和傳輸效率。例如而虛擬主機的生成就是依賴于鏡像文件的快速復(fù)制 的,因此上述實施例的技術(shù)方案可以適用在云平臺的設(shè)計和實現(xiàn)中,解決了虛擬主機的上 線、擴容、遷移等問題,節(jié)省了大量的時間,為用戶提供了更好的體驗。
[0104] 圖4為本發(fā)明實施例提供的數(shù)據(jù)處理的一種示例圖。圖5為圖4的數(shù)據(jù)處理中各 節(jié)點的狀態(tài)變遷圖。圖6為本發(fā)明實施例提供的數(shù)據(jù)處理的另一種示例圖。圖7為本發(fā)明 實施例提供的數(shù)據(jù)處理的又一種示例圖。如圖4-圖7所示,以五個節(jié)點包括一個源點和四 個待分發(fā)節(jié)點、控制裝置為Controller為例描述本發(fā)明的技術(shù)方案。如圖4、圖6和圖7所 示,每一行中,第1個節(jié)點為源點、第2個節(jié)點、第3個節(jié)點、第4個節(jié)點和第5個節(jié)點分別 為待分發(fā)節(jié)點,每個節(jié)點上的用于傳輸數(shù)據(jù)的模塊可以稱之為傳輸單元(Peer)。
[0105] 每個節(jié)點上的傳輸單元Peer實現(xiàn)如下功能:
[0106] 1)接收Controller下發(fā)的數(shù)據(jù)傳輸任務(wù),向目的節(jié)點發(fā)送數(shù)據(jù);
[0107] 2)接收其他節(jié)點Peer發(fā)送過來的數(shù)據(jù),寫入本地文件;并對數(shù)據(jù)做正確性校驗;
[0108] 3)定時與目的節(jié)點Peer同步任務(wù)進度,并對數(shù)據(jù)做重發(fā),保證目的節(jié)點接收完 整、正確;
[0109] 4)定時上報給Controller本節(jié)點的任務(wù)發(fā)送、接收速率、百分比。
[0110] 控制裝置Controller實現(xiàn)如下功能:
[0111] 1)接收用戶通過工具請求的數(shù)據(jù)傳輸任務(wù),獲取任務(wù)的文件路徑、源節(jié)點、所有目 的節(jié)點;
[0112] 2)選定一個目的節(jié)點,并下發(fā)任務(wù)給源節(jié)點Peer,讓其發(fā)送數(shù)據(jù)給選定的目的節(jié) 點;形成傳輸鏈;
[0113] 3)處理傳輸鏈上各節(jié)點Peer的上報;
[0114] 4)當(dāng)傳輸鏈中的最后一個節(jié)點,接收到的數(shù)據(jù)量達到某個值后,以此為源節(jié)點,從 剩余的目的節(jié)點中選定一個節(jié)點,下發(fā)任務(wù),把后選定的這個節(jié)點加入到當(dāng)前傳輸鏈中;
[0115] 5)不斷重復(fù)以上過程,直到所有節(jié)點都加入到傳輸鏈為止;
[0116] 6)節(jié)點傳輸異常時,及時進行切換,保證傳輸正常,且熱度均衡;
[0117] 7)節(jié)點傳輸完畢后,依次退出;
[0118] 8)任務(wù)的源節(jié)點總是最后一個退出;
[0119] 9)所有節(jié)點的均退出后,Controller標(biāo)記任務(wù)完成;清理任務(wù)。
[0120] 根據(jù)上述控制裝置Controller和各節(jié)點的Peer的功能,在圖4中第一行,源點和 第一行中第2個節(jié)點構(gòu)成傳輸鏈,源點向第一行中第2個節(jié)點傳輸數(shù)據(jù);當(dāng)數(shù)據(jù)傳輸成功 時,如圖4的第2行所示,第2行中的第3個節(jié)點加入傳輸鏈,第2行中第2個節(jié)點向第2 行中的第3個節(jié)點傳輸數(shù)據(jù).。當(dāng)數(shù)據(jù)傳輸成功時,如圖4的第3行所示,第3行中的第4 個節(jié)點加入傳輸鏈,第3行中第3個節(jié)點向第3行中的第4個節(jié)點傳輸數(shù)據(jù).。依次類推, 如圖4中第6行所示,直到第5個節(jié)點加入傳輸鏈,第4個節(jié)點向第5個節(jié)點傳輸數(shù)據(jù).。
[0121] 圖4中是以所有節(jié)點傳輸均正常的情況。實際上,可能某個節(jié)點會異常,導(dǎo)致傳輸 鏈進行不下去,后面的節(jié)點因接收不到數(shù)據(jù)而處于"饑餓"狀態(tài),任務(wù)也無法結(jié)束??紤]到 各種情況,節(jié)點的狀態(tài)及說明如表1所示,各狀態(tài)的變遷如表1所示:
【權(quán)利要求】
1. 一種數(shù)據(jù)傳輸方法,其特征在于,所述方法包括: 控制裝置確定本次數(shù)據(jù)傳輸?shù)脑垂?jié)點; 所述控制裝置從用于接收所述數(shù)據(jù)的節(jié)點列表中選擇未被選擇過用于接收所述數(shù)據(jù) 的節(jié)點作為本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點,所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為傳輸鏈中所述本 次數(shù)據(jù)傳輸?shù)脑垂?jié)點的下一個最近鄰節(jié)點;所述節(jié)點列表中包括至少一個用于接收數(shù)據(jù)的 節(jié)點的標(biāo)識和各所述節(jié)點的地址; 所述控制裝置向所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),所述數(shù)據(jù)傳輸任務(wù)包 括所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址,W供所述本次數(shù) 據(jù)傳輸?shù)脑垂?jié)點根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié) 點傳輸所述數(shù)據(jù)。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,控制裝置確定本次數(shù)據(jù)傳輸?shù)脑垂?jié)點包 括: 當(dāng)所述控制裝置首次控制發(fā)送所述數(shù)據(jù)時,確定所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點為所述數(shù) 據(jù)未被發(fā)送前存儲所述數(shù)據(jù)的原始節(jié)點。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,控制裝置確定本次數(shù)據(jù)傳輸?shù)脑垂?jié)點包 括: 當(dāng)所述控制裝置非首次控制發(fā)送所述數(shù)據(jù)時,將最近鄰的上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作 為所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點。
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)所述控制裝置非首次控制發(fā)送所述數(shù) 據(jù)時,將最近鄰的上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點之前,所述方 法還包括: 所述控制裝置周期性地接收所述上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報的數(shù)據(jù)接收進度; 當(dāng)控制裝置接收到所述數(shù)據(jù)接收進度為100%時,所述控制裝置確定上次數(shù)據(jù)傳輸完 成。
5. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述控制裝置向所述本次數(shù)據(jù)傳輸?shù)脑?節(jié)點發(fā)送下發(fā)數(shù)據(jù)傳輸任務(wù)之后,所述方法還包括: 所述控制裝置確定在預(yù)設(shè)闊值的周期內(nèi)未接收到所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報 的數(shù)據(jù)接收進度; 所述控制裝置確定所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點故障; 所述控制裝置從所述原始節(jié)點和所述節(jié)點列表中已經(jīng)接收到所述數(shù)據(jù)的節(jié)點中選擇 子節(jié)點最少的節(jié)點作為所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點; 所述控制裝置重新從用于接收所述數(shù)據(jù)的節(jié)點列表中選擇未被選擇過用于接收所述 數(shù)據(jù)的節(jié)點作為本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點; 所述控制裝置向所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),W供所述本次數(shù)據(jù)傳 輸?shù)脑垂?jié)點根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳 輸所述數(shù)據(jù)。
6. 根據(jù)權(quán)利要求1-5任一所述的方法,其特征在于,所述控制裝置向所述本次數(shù)據(jù)傳 輸?shù)脑垂?jié)點發(fā)送下發(fā)數(shù)據(jù)傳輸任務(wù)之后,所述方法還包括: 所述控制裝置確定所述節(jié)點列表中除故障節(jié)點之外,無未接收過所述數(shù)據(jù)的節(jié)點,確 定數(shù)據(jù)傳輸完成。
7. -種數(shù)據(jù)傳輸方法,其特征在于,所述方法包括如下步驟: 節(jié)點作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點接收控制裝置下發(fā)的數(shù)據(jù)傳輸任務(wù),所述數(shù)據(jù)傳輸任 務(wù)包括所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址; 所述節(jié)點根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點 傳輸所述數(shù)據(jù)。
8. 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述節(jié)點根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康?節(jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸所述數(shù)據(jù)之后,所述方法還包括: 所述節(jié)點周期性地向所述控制裝置上報數(shù)據(jù)發(fā)送進度,W供所述控制裝置根據(jù)所述數(shù) 據(jù)發(fā)送進度確定本次數(shù)據(jù)傳輸完成。
9. 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述節(jié)點作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點接 收控制裝置下發(fā)的數(shù)據(jù)傳輸任務(wù)之前,所述方法還包括: 所述節(jié)點作為上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點接收上次數(shù)據(jù)傳輸?shù)脑垂?jié)點發(fā)送的所述數(shù)據(jù)。
10. 根據(jù)權(quán)利要求9所述的方法,其特征在于,所述節(jié)點作為上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點 接收上次數(shù)據(jù)傳輸?shù)脑垂?jié)點發(fā)送的所述數(shù)據(jù)之后,所述方法還包括: 所述節(jié)點作為上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點向所述控制裝置上報數(shù)據(jù)接收進度,W供所述 控制裝置根據(jù)所述數(shù)據(jù)接收進度確定上次數(shù)據(jù)傳輸完成。
11. 根據(jù)權(quán)利要求10所述的方法,其特征在于,所述方法還包括: 當(dāng)所述上次數(shù)據(jù)傳輸完成時,所述節(jié)點對所述數(shù)據(jù)的正確性進行校驗,并確定所述數(shù) 據(jù)正確。
12. -種控制裝置,其特征在于,所述裝置包括: 確定模塊,用于確定本次數(shù)據(jù)傳輸?shù)脑垂?jié)點; 選擇模塊,用于從用于接收所述數(shù)據(jù)的節(jié)點列表中選擇未被選擇過用于接收所述數(shù)據(jù) 的節(jié)點作為本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點,所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為傳輸鏈中所述本 次數(shù)據(jù)傳輸?shù)脑垂?jié)點的下一個最近鄰節(jié)點;所述節(jié)點列表中包括至少一個用于接收數(shù)據(jù)的 節(jié)點的標(biāo)識和各所述節(jié)點的地址; 發(fā)送模塊,用于向所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),所述數(shù)據(jù)傳輸任務(wù) 包括所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址,W供所述本次 數(shù)據(jù)傳輸?shù)脑垂?jié)點根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪康?節(jié)點傳輸所述數(shù)據(jù)。
13. 根據(jù)權(quán)利要求12所述的裝置,其特征在于,所述確定模塊,具體用于當(dāng)所述控制裝 置首次控制發(fā)送所述數(shù)據(jù)時,確定所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點為所述數(shù)據(jù)未被發(fā)送前存儲 所述數(shù)據(jù)的原始節(jié)點。
14. 根據(jù)權(quán)利要求12所述的裝置,其特征在于,所述確定模塊,具體用于當(dāng)所述控制裝 置非首次控制發(fā)送所述數(shù)據(jù)時,將最近鄰的上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為所述本次數(shù)據(jù)傳 輸?shù)脑垂?jié)點。
15. 根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述裝置還包括接收模塊: 所述接收模塊,用于當(dāng)所述控制裝置非首次控制發(fā)送所述數(shù)據(jù)時,所述確定模塊將最 近鄰的上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點作為所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點之前,周期性地接收所述 上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報的數(shù)據(jù)接收進度; 所述確定模塊,還用于當(dāng)接收到所述數(shù)據(jù)接收進度為100%時,確定上次數(shù)據(jù)傳輸完 成。
16. 根據(jù)權(quán)利要求13所述的裝置,其特征在于: 所述確定模塊,還用于在所述發(fā)送模塊向所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點發(fā)送下發(fā)數(shù)據(jù)傳 輸任務(wù)之后,確定在預(yù)設(shè)闊值的周期內(nèi)未接收到所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點上報的數(shù)據(jù) 接收進度; 所述確定模塊,還用于確定所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點故障; 所述選擇模塊,還用于從所述原始節(jié)點和所述節(jié)點列表中已經(jīng)接收到所述數(shù)據(jù)的節(jié)點 中選擇子節(jié)點最少的節(jié)點作為所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點; 所述選擇模塊,還用于重新從用于接收所述數(shù)據(jù)的節(jié)點列表中選擇未被選擇過用于接 收所述數(shù)據(jù)的節(jié)點作為本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點; 所述發(fā)送模塊,還用于向所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點下發(fā)數(shù)據(jù)傳輸任務(wù),W供所述本 次數(shù)據(jù)傳輸?shù)脑垂?jié)點根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪?的節(jié)點傳輸所述數(shù)據(jù)。
17. 根據(jù)權(quán)利要求12-16任一所述的裝置,其特征在于,所述確定模塊,還用于在所述 發(fā)送模塊向所述本次數(shù)據(jù)傳輸?shù)脑垂?jié)點發(fā)送下發(fā)數(shù)據(jù)傳輸任務(wù)之后,確定所述節(jié)點列表中 除故障節(jié)點之外,無未接收過所述數(shù)據(jù)的節(jié)點,確定數(shù)據(jù)傳輸完成。
18. -種節(jié)點裝置,其特征在于,所述裝置包括: 接收模塊,用于在所述節(jié)點裝置作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點接收控制裝置下發(fā)的數(shù)據(jù) 傳輸任務(wù),所述數(shù)據(jù)傳輸任務(wù)包括所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點和所述本次數(shù)據(jù)傳輸?shù)哪?的節(jié)點的地址; 發(fā)送模塊,用于根據(jù)所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪康?節(jié)點傳輸所述數(shù)據(jù)。
19. 根據(jù)權(quán)利要求18所述的裝置,其特征在于,所述發(fā)送模塊,還用于在根據(jù)所述本次 數(shù)據(jù)傳輸?shù)哪康墓?jié)點的地址向所述本次數(shù)據(jù)傳輸?shù)哪康墓?jié)點傳輸所述數(shù)據(jù)之后,周期性地 向所述控制裝置上報數(shù)據(jù)發(fā)送進度,W供所述控制裝置根據(jù)所述數(shù)據(jù)發(fā)送進度確定本次數(shù) 據(jù)傳輸完成。
20. 根據(jù)權(quán)利要求18所述的裝置,其特征在于,所述接收模塊,還用于在所述節(jié)點裝置 作為本次數(shù)據(jù)傳輸?shù)脑垂?jié)點時,接收控制裝置下發(fā)的數(shù)據(jù)傳輸任務(wù)之前,所述節(jié)點裝置作 為上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點時,接收上次數(shù)據(jù)傳輸?shù)脑垂?jié)點發(fā)送的所述數(shù)據(jù)。
21. 根據(jù)權(quán)利要求20所述的裝置,其特征在于,所述發(fā)送模塊,還用于在所述節(jié)點裝置 作為上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點時,接收上次數(shù)據(jù)傳輸?shù)脑垂?jié)點發(fā)送的所述數(shù)據(jù)之后,所述 節(jié)點裝置作為上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點時,向所述控制裝置上報數(shù)據(jù)接收進度,W供所述 控制裝置根據(jù)所述數(shù)據(jù)接收進度確定上次數(shù)據(jù)傳輸完成。
22. 根據(jù)權(quán)利要求21所述的裝置,其特征在于,所述裝置還包括: 校驗?zāi)K,用于在所述節(jié)點裝置作為上次數(shù)據(jù)傳輸?shù)哪康墓?jié)點時,當(dāng)所述上次數(shù)據(jù)傳 輸完成時,對所述數(shù)據(jù)的正確性進行校驗,并確定所述數(shù)據(jù)正確。
23. -種數(shù)據(jù)傳輸系統(tǒng),其特征在于,所述系統(tǒng)包括控制裝置和至少一個節(jié)點裝置;所 述控制裝置采用如上權(quán)利要求12-17任一所述的控制裝置,所述節(jié)點裝置采用如上權(quán)利要 求18-22任一所述的節(jié)點裝置。
【文檔編號】H04L29/08GK104468483SQ201310432667
【公開日】2015年3月25日 申請日期:2013年9月22日 優(yōu)先權(quán)日:2013年9月22日
【發(fā)明者】周紅昌, 陳杰, 尹晟宇, 蔡璞, 董曉杰 申請人:騰訊科技(深圳)有限公司