一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法及裝置的制造方法
【專利摘要】本發(fā)明實(shí)施例公開了一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法及裝置,應(yīng)用于數(shù)據(jù)中心網(wǎng)絡(luò)中的控制節(jié)點(diǎn),所述數(shù)據(jù)中心網(wǎng)絡(luò)還包括至少兩個(gè)任務(wù)節(jié)點(diǎn),所述方法包括:接收每個(gè)任務(wù)節(jié)點(diǎn)發(fā)送的、該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率;針對(duì)每一數(shù)據(jù)流,獲得上次確定的所述數(shù)據(jù)流的分配發(fā)送速率;針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值;根據(jù)所述擁塞值,確定所述鏈路是否存在擁塞。應(yīng)用本發(fā)明實(shí)例,可以確定數(shù)據(jù)中心網(wǎng)絡(luò)中的鏈路是否存在擁塞。
【專利說明】
一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及信息技術(shù)領(lǐng)域,特別涉及一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法及裝置。
【背景技術(shù)】
[0002]在過去的幾年中,隨著大數(shù)據(jù)業(yè)務(wù)的迅速普及,越來越多的企業(yè)計(jì)劃使用大數(shù)據(jù)。為了使用戶能夠在云端部署大數(shù)據(jù)應(yīng)用,大的服務(wù)提供商如谷歌、微軟、亞馬遜等開始在他們的數(shù)據(jù)中心中部署MapReduce、Dryad、Spark等大數(shù)據(jù)架構(gòu)。用戶運(yùn)行的大數(shù)據(jù)分析業(yè)務(wù)及應(yīng)用在數(shù)據(jù)中心網(wǎng)絡(luò)中傳輸并產(chǎn)生大量的流量,據(jù)分析大數(shù)據(jù)中數(shù)據(jù)傳輸?shù)臅r(shí)間占到了任務(wù)完成總時(shí)間的50%以上。
[0003]為了優(yōu)化大數(shù)據(jù)的數(shù)據(jù)傳輸,許多基于并行任務(wù)的調(diào)度機(jī)制被提出。其中一種機(jī)制是通過基于cof low來優(yōu)化大數(shù)據(jù)的傳輸時(shí)間。一個(gè)cof low是一個(gè)大數(shù)據(jù)任務(wù)所產(chǎn)生所有數(shù)據(jù)流的集合。通過基于coflow的流量均衡,可以有效減少大數(shù)據(jù)業(yè)務(wù)的傳輸時(shí)間。但是現(xiàn)有的coflow調(diào)度機(jī)制過于理想化,沒有確定網(wǎng)絡(luò)中鏈路是否存在擁塞的機(jī)制。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實(shí)施例的目的在于提供一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法及裝置,以確定數(shù)據(jù)中心網(wǎng)絡(luò)中的鏈路是否存在擁塞。
[0005]為達(dá)到上述目的,本發(fā)明實(shí)施例公開了一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法,應(yīng)用于數(shù)據(jù)中心網(wǎng)絡(luò)中的控制節(jié)點(diǎn),所述數(shù)據(jù)中心網(wǎng)絡(luò)還包括至少兩個(gè)任務(wù)節(jié)占.V ,
[0006]所述方法包括:
[0007]接收每個(gè)任務(wù)節(jié)點(diǎn)發(fā)送的、該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率;
[0008]針對(duì)每一數(shù)據(jù)流,獲得上次確定的所述數(shù)據(jù)流的分配發(fā)送速率;
[0009]針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值;
[0010]根據(jù)所述擁塞值,確定所述鏈路是否存在擁塞。
[0011]可選的,所述根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,所利用的公式為:
[0012]擁塞值=所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的上次確定的分配發(fā)送速率之和/所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的發(fā)送速率之和。
[0013]可選的,在確定所述鏈路存在擁塞的情況下,所述方法還包括:
[0014]根據(jù)所述擁塞值,確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;
[0015]將所確定的所述當(dāng)前分配發(fā)送速率發(fā)送給所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn),以使所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)根據(jù)所述當(dāng)前分配發(fā)送速率,調(diào)整向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率。
[0016]可選的,所述根據(jù)所述擁塞值,確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,包括:
[0017]根據(jù)所述擁塞值,計(jì)算每個(gè)任務(wù)的估計(jì)完成時(shí)間;
[0018]根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間,確定每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,其中,所述確定的每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率包括:所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。
[0019]可選的,所述根據(jù)所述擁塞值,計(jì)算每個(gè)任務(wù)的估計(jì)完成時(shí)間,包括:
[0020]針對(duì)每個(gè)任務(wù),獲得所述任務(wù)的信息,其中,所述信息包括每個(gè)任務(wù)所包含的數(shù)據(jù)流以及每一數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn);
[0021]針對(duì)每個(gè)任務(wù)的每一數(shù)據(jù)流,獲得所述數(shù)據(jù)流的未發(fā)送數(shù)據(jù)量、數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)和數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù);
[0022]根據(jù)所述未發(fā)送數(shù)據(jù)量、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,計(jì)算所述任務(wù)的估計(jì)完成時(shí)間。
[0023]可選的,所述根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間,確定每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,包括:
[0024]S21,將估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù);
[0025]S22,針對(duì)所述候選任務(wù),獲得所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù);
[0026]S23,根據(jù)所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),確定所述候選任務(wù)對(duì)應(yīng)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;
[0027]S24,判斷所述候選任務(wù)是否是估計(jì)完成時(shí)間值最大的任務(wù),如果否,除去已作為候選任務(wù)的任務(wù),將剩余任務(wù)中估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù),返回S22。
[0028]可選的,所述根據(jù)所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),確定所述候選任務(wù)對(duì)應(yīng)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,包括:
[0029]針對(duì)所述候選任務(wù)的每個(gè)數(shù)據(jù)流,根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),計(jì)算第一速率值;
[0030]根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值、所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),計(jì)算第二速率值;[0031 ]判斷所述第一速率值是否小于所述第二速率值;
[0032]如果是,將所述第一速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,否則將所述第二速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。
[0033]為達(dá)到上述目的,本發(fā)明實(shí)施例還公開了一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定裝置,應(yīng)用于數(shù)據(jù)中心網(wǎng)絡(luò)中的控制節(jié)點(diǎn),所述數(shù)據(jù)中心網(wǎng)絡(luò)還包括至少兩個(gè)任務(wù)節(jié)點(diǎn);
[0034]所述裝置包括:
[0035]接收模塊,用于接收每個(gè)任務(wù)節(jié)點(diǎn)發(fā)送的、該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率;
[0036]獲得模塊,用于針對(duì)每一數(shù)據(jù)流,獲得上次確定的所述數(shù)據(jù)流的分配發(fā)送速率;
[0037]計(jì)算模塊,用于針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值;
[0038]第一確定模塊,用于根據(jù)所述擁塞值,確定所述鏈路是否存在擁塞。
[0039]可選的,所述根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,所利用的公式為:
[0040]擁塞值=所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的上次確定的分配發(fā)送速率之和/所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的發(fā)送速率之和。
[0041 ]可選的,在確定所述鏈路存在擁塞的情況下,所述裝置還包括:
[0042]第二確定模塊,用于根據(jù)所述擁塞值,確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;
[0043]發(fā)送模塊,將所確定的所述當(dāng)前分配發(fā)送速率發(fā)送給所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn),以使所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)根據(jù)所述當(dāng)前分配發(fā)送速率,調(diào)整向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率。
[0044]可選的,所述第二確定模塊,包括:
[0045]計(jì)算子模塊,用于根據(jù)所述擁塞值,計(jì)算每個(gè)任務(wù)的估計(jì)完成時(shí)間;
[0046]確定子模塊,用于根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間,確定每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,其中,所述確定的每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率包括:所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。
[0047]可選的,所述計(jì)算子模塊,包括:
[0048]第一獲得單元,用于針對(duì)每個(gè)任務(wù),獲得所述任務(wù)的信息,其中,所述信息包括每個(gè)任務(wù)所包含的數(shù)據(jù)流以及每一數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn);
[0049]第二獲得單元,用于針對(duì)每個(gè)任務(wù)的每一數(shù)據(jù)流,獲得所述數(shù)據(jù)流的未發(fā)送數(shù)據(jù)量、數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)和數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù);
[0050]計(jì)算單元,用于根據(jù)所述未發(fā)送數(shù)據(jù)量、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,計(jì)算所述任務(wù)的估計(jì)完成時(shí)間。[0051 ]可選的,所述確定子模塊,包括:
[0052]第一處理單元,用于將估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù);
[0053]第三獲得單元,用于針對(duì)所述候選任務(wù),獲得所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的所有的數(shù)據(jù)流個(gè)數(shù);
[0054]確定單元,用于根據(jù)所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),確定所述候選任務(wù)對(duì)應(yīng)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;
[0055]判斷單元,用于判斷所述候選任務(wù)是否是估計(jì)完成時(shí)間值最大的任務(wù),如果否,除去已作為候選任務(wù)的任務(wù),將剩余任務(wù)中估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù),觸發(fā)所述第二獲得單兀。
[0056]可選的,所述確定單元,包括:
[0057]第一計(jì)算子單元,用于針對(duì)所述候選任務(wù)的每個(gè)數(shù)據(jù)流,根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),計(jì)算第一速率值;
[0058]第二計(jì)算子單元,用于根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值、所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),計(jì)算第二速率值;
[0059]判斷子單元,用于判斷所述第一速率值是否小于所述第二速率值;
[0060]確定子單元,用于當(dāng)判斷所述第一速率值小于所述第二速率值時(shí),將所述第一速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,否則將所述第二速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。
[0061]綜上可知,本發(fā)明實(shí)施例所提供的一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法及裝置,應(yīng)用于數(shù)據(jù)中心網(wǎng)絡(luò)中的控制節(jié)點(diǎn),針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,根據(jù)所述擁塞值可以確定所述鏈路是否發(fā)生擁塞。同時(shí),本發(fā)明實(shí)施例所述的方法及裝置只需要通過控制節(jié)點(diǎn)和各個(gè)任務(wù)節(jié)點(diǎn)實(shí)現(xiàn),不需要依賴于其他拓?fù)浠蛘呔W(wǎng)絡(luò)設(shè)備,也不需要對(duì)控制節(jié)點(diǎn)和各個(gè)任務(wù)節(jié)點(diǎn)進(jìn)行修改和配置,可以在云計(jì)算數(shù)據(jù)中心或虛擬化環(huán)境中進(jìn)行部署。
[0062]當(dāng)然,實(shí)施本發(fā)明的任一產(chǎn)品或方法必不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。
【附圖說明】
[0063]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0064]圖1為本發(fā)明實(shí)施例提供的一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法的流程示意圖;
[0065]圖2為本發(fā)明實(shí)施例提供的另一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法的流程示意圖;
[0066]圖3為本發(fā)明實(shí)施例提供的一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定裝置的結(jié)構(gòu)示意圖;
[0067]圖4為本發(fā)明實(shí)施例提供的另一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0068]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0069]為了解決現(xiàn)有技術(shù)問題,本發(fā)明實(shí)施例提供了一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法,下面通過具體實(shí)施例,對(duì)本發(fā)明進(jìn)行詳細(xì)說明。
[0070]需要說明的是,本發(fā)明實(shí)施例提供的一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法優(yōu)選適用于數(shù)據(jù)中心網(wǎng)絡(luò)中的控制節(jié)點(diǎn),所述數(shù)據(jù)中心網(wǎng)絡(luò)還包括至少兩個(gè)任務(wù)節(jié)點(diǎn)。
[0071]圖1為本發(fā)明實(shí)施例提供的一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法的流程示意圖,可以包括如下步驟:
[0072]SlOl,接收每個(gè)任務(wù)節(jié)點(diǎn)發(fā)送的、該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率;
[0073]S102,針對(duì)每一數(shù)據(jù)流,獲得上次確定的所述數(shù)據(jù)流的分配發(fā)送速率;
[0074]S103,針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值;
[0075]S104,根據(jù)所述擁塞值,確定所述鏈路是否存在擁塞。
[0076]在實(shí)際應(yīng)用中,數(shù)據(jù)中心網(wǎng)絡(luò)中同時(shí)執(zhí)行多個(gè)大數(shù)據(jù)任務(wù)(job),每個(gè)任務(wù)又包含了多個(gè)子任務(wù)(task),每個(gè)子任務(wù)在不同的任務(wù)節(jié)點(diǎn)上執(zhí)行。本領(lǐng)域技術(shù)人員可以理解的是,屬于同一任務(wù)的兩個(gè)子任務(wù)之間僅有一個(gè)數(shù)據(jù)流從該兩個(gè)子任務(wù)對(duì)應(yīng)的兩個(gè)任務(wù)節(jié)點(diǎn)中的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向數(shù)據(jù)流接收節(jié)點(diǎn)傳輸。然而,數(shù)據(jù)中心網(wǎng)絡(luò)中還存在其他的非大數(shù)據(jù)任務(wù),該非大數(shù)據(jù)任務(wù)產(chǎn)生的數(shù)據(jù)流稱為背景流,這些背景流在傳輸時(shí)會(huì)占用數(shù)據(jù)中心網(wǎng)絡(luò)中的帶寬,從而造成大數(shù)據(jù)任務(wù)中的數(shù)據(jù)流傳輸時(shí)的擁塞。
[0077]本發(fā)明實(shí)施例所述的方法中,每個(gè)任務(wù)節(jié)點(diǎn)對(duì)當(dāng)前該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率進(jìn)行采集和匯總,并將匯總后的該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率發(fā)送給控制節(jié)點(diǎn)。需要說明的是,每個(gè)任務(wù)節(jié)點(diǎn)采集數(shù)據(jù)流的發(fā)送速率,可以是每隔一個(gè)預(yù)設(shè)時(shí)間段進(jìn)行采集,也可以是在預(yù)設(shè)時(shí)間點(diǎn)進(jìn)行采集,本發(fā)明實(shí)施例不對(duì)采集數(shù)據(jù)流發(fā)送速率的時(shí)機(jī)進(jìn)行限定。
[0078]控制節(jié)點(diǎn)接收到每個(gè)任務(wù)節(jié)點(diǎn)發(fā)送的、該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率后,對(duì)于每一數(shù)據(jù)流,不難獲得上次確定的所述數(shù)據(jù)流的分配發(fā)送速率。根據(jù)數(shù)據(jù)流的發(fā)送速率和上次確定的分配發(fā)送速率,可以計(jì)算包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn)所構(gòu)成的鏈路的擁塞值。具體的,所述擁塞值=所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的上次確定的分配發(fā)送速率之和/所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的發(fā)送速率之和。
[0079]當(dāng)鏈路無擁塞時(shí),即所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的發(fā)送速率之和等于所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的上次確定的分配發(fā)送速率之和,因此所述擁塞值為I;當(dāng)鏈路存在擁塞時(shí),所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的發(fā)送速率之和小于所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的上次確定的分配發(fā)送速率之和,因此所述擁塞值大于I。因此,可以根據(jù)所述擁塞值,確定所述鏈路是否存在擁塞。
[0080]應(yīng)用本發(fā)明實(shí)施例,針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,根據(jù)所述擁塞值可以確定所述鏈路是否發(fā)生擁塞。同時(shí),本發(fā)明實(shí)施例所述的方法只需要通過控制節(jié)點(diǎn)和各個(gè)任務(wù)節(jié)點(diǎn)實(shí)現(xiàn),不需要依賴于其他拓?fù)浠蛘呔W(wǎng)絡(luò)設(shè)備,也不需要對(duì)控制節(jié)點(diǎn)和各個(gè)任務(wù)節(jié)點(diǎn)進(jìn)行修改和配置,可以在云計(jì)算數(shù)據(jù)中心或虛擬化環(huán)境中進(jìn)行部署。
[0081]更進(jìn)一步的,基于圖1所提供的實(shí)施例,本發(fā)明實(shí)施例所提供的一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法還可以包括如下步驟:如圖2所示,當(dāng)在圖1所示步驟S104中確定所述鏈路存在擁塞的情況下,還包括步驟S105和S106,具體為:
[0082]S105,根據(jù)所述擁塞值,確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;
[0083]S106,將所確定的所述當(dāng)前分配發(fā)送速率發(fā)送給所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn),以使所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)根據(jù)所述當(dāng)前分配發(fā)送速率,調(diào)整向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率。
[0084]在實(shí)際應(yīng)用中,在確定所述鏈路存在擁塞的情況下,控制節(jié)點(diǎn)需要根據(jù)所述擁塞值,計(jì)算出每個(gè)任務(wù)的估計(jì)完成時(shí)間;根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間值的大小對(duì)依次確定每個(gè)任務(wù)的所有數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,根據(jù)對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,優(yōu)先確定估計(jì)完成時(shí)間值小的任務(wù)的所有數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)每個(gè)任務(wù)的每個(gè)數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn),進(jìn)而可以確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;將所確定的所述當(dāng)前分配發(fā)送速率發(fā)送給所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn),以使所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)根據(jù)所述當(dāng)前分配發(fā)送速率,為所述數(shù)據(jù)流分配對(duì)應(yīng)的帶寬,從而調(diào)整向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率。
[0085]具體的,上述根據(jù)所述擁塞值,確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率的步驟,具體可以根據(jù)所述擁塞值,計(jì)算每個(gè)任務(wù)的估計(jì)完成時(shí)間;根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間,確定每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,其中,所述確定的每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率包括:所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。
[0086]具體的,上述根據(jù)所述擁塞值,計(jì)算每個(gè)任務(wù)的估計(jì)完成時(shí)間的步驟,具體可以為:
[0087]針對(duì)每個(gè)任務(wù),獲得所述任務(wù)的信息,其中,所述信息包括每個(gè)任務(wù)所包含的數(shù)據(jù)流以及每一數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn);
[0088]針對(duì)每個(gè)任務(wù)的每一數(shù)據(jù)流,獲得所述數(shù)據(jù)流的未發(fā)送數(shù)據(jù)量、數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)和數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù);
[0089]根據(jù)所述未發(fā)送數(shù)據(jù)量、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,計(jì)算所述任務(wù)的估計(jì)完成時(shí)間。
[0090]在實(shí)際應(yīng)用中,在獲得每個(gè)任務(wù)的每一數(shù)據(jù)流的未發(fā)送數(shù)據(jù)量data、數(shù)據(jù)流發(fā)送節(jié)點(diǎn)S上正在執(zhí)行的任務(wù)數(shù)Sshare和數(shù)據(jù)流接收節(jié)點(diǎn)D上正在執(zhí)行的任務(wù)數(shù)Dshare后,可以根據(jù)以下公式計(jì)算每個(gè)任務(wù)所對(duì)應(yīng)的估計(jì)完成時(shí)間EstimatedCCT:
[0091 ] EstimatedCCT+= (Sshare-1 )*(2m( sd)-1 )*data,
[0092]EstimatedCCT+=(Dshare-1)*(2m(sd)-1)*data,
[0093]其中,對(duì)每個(gè)任務(wù)而言,EstimatedCCT初始化為0,m(sd)為該任務(wù)的每個(gè)數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)所構(gòu)成的鏈路的擁塞值。
[0094]由上述公式可知,對(duì)每個(gè)任務(wù)的所有數(shù)據(jù)流分別按照上述公式計(jì)算之后,可以得到該任務(wù)的估計(jì)完成時(shí)間。
[0095]具體的,上述根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間,確定每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率的步驟,具體可以為:
[0096]S21,將估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù);
[0097]S22,針對(duì)所述候選任務(wù),獲得所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù);
[0098]S23,根據(jù)所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),確定所述候選任務(wù)對(duì)應(yīng)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;
[0099]S24,判斷所述候選任務(wù)是否是估計(jì)完成時(shí)間值最大的任務(wù),如果否,除去已作為候選任務(wù)的任務(wù),將剩余任務(wù)中估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù),返回S22。
[0100]具體的,上述根據(jù)所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),確定所述候選任務(wù)對(duì)應(yīng)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,具體可以為:
[0101]針對(duì)所述候選任務(wù)的每個(gè)數(shù)據(jù)流,根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),計(jì)算第一速率值;
[0102]根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值、所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),計(jì)算第二速率值;
[0103]判斷所述第一速率值是否小于所述第二速率值;
[0104]如果是,將所述第一速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,否則將所述第二速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。
[0105]在實(shí)際應(yīng)用中,第一速率值可以為所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值/所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù);第二速率值可以為所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值/所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)。
[0106]需要說明的是,所述剩余帶寬值為:在存在背景流的情況下任務(wù)節(jié)點(diǎn)能夠提供給大數(shù)據(jù)任務(wù)的最大帶寬值,減去已經(jīng)用于確定候選任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率的帶寬后的帶寬值。在確定了所述候選任務(wù)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率之后,需要根據(jù)確定的所述候選任務(wù)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率重新確定相應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值。例如,針對(duì)所述候選任務(wù),獲得所述候選任務(wù)的僅有的一個(gè)數(shù)據(jù)流a所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)s的剩余帶寬值為50Mbps和數(shù)據(jù)流接收節(jié)點(diǎn)d的剩余帶寬值為40Mbps,在確定該任務(wù)的數(shù)據(jù)流a的當(dāng)前發(fā)送速率之后,如果確定的數(shù)據(jù)流a的當(dāng)前分配發(fā)送速率為20Mbps,那么該數(shù)據(jù)流發(fā)送節(jié)點(diǎn)s的剩余帶寬值為50Mbps-20Mbps =30Mbps,該數(shù)據(jù)流接收節(jié)點(diǎn)d的剩余帶寬值為40Mbps-20Mbps = 20Mbps。
[0107]舉例而言,對(duì)于包含有4個(gè)數(shù)據(jù)流的任務(wù)I和包含有2個(gè)數(shù)據(jù)流的任務(wù)2,其中,任務(wù)I的數(shù)據(jù)流I對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)分別為sl、dl,數(shù)據(jù)流2對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)分別為sl、d2,數(shù)據(jù)流3對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)分別為s2、d2,數(shù)據(jù)流4對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)分別為s3、d2,而任務(wù)2的數(shù)據(jù)流I對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)分別為s1、dl,數(shù)據(jù)流2對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)分別為82、(12,并且任務(wù)節(jié)點(diǎn)81、82、83、84、(11、(12的剩余帶寬值均為100Mbps。假設(shè)任務(wù)I的估計(jì)完成時(shí)間小于任務(wù)2的估計(jì)完成時(shí)間,那么首先確定任務(wù)I的每個(gè)數(shù)據(jù)流的分配發(fā)送速率,具體如下:
[0108]對(duì)于數(shù)據(jù)流I,數(shù)據(jù)流發(fā)送節(jié)點(diǎn)SI和數(shù)據(jù)流接收節(jié)點(diǎn)d I的剩余帶寬值均為I OOMbps,數(shù)據(jù)流發(fā)送節(jié)點(diǎn)s I發(fā)出任務(wù)I的數(shù)據(jù)流的個(gè)數(shù)為2,數(shù)據(jù)流接收節(jié)點(diǎn)d I接收任務(wù)I的數(shù)據(jù)流個(gè)數(shù)為I,因此計(jì)算的第一速率值為50Mbps,第二速率值為100Mbps,從而將第一速率值50Mbps確定為數(shù)據(jù)流I的當(dāng)前分配發(fā)送速率;
[0109]對(duì)于數(shù)據(jù)流2,數(shù)據(jù)流發(fā)送節(jié)點(diǎn)sI和數(shù)據(jù)流接收節(jié)點(diǎn)d 2的剩余帶寬值均為I OOMbps,數(shù)據(jù)流發(fā)送節(jié)點(diǎn)s I發(fā)出任務(wù)I的數(shù)據(jù)流的個(gè)數(shù)為2,數(shù)據(jù)流接收節(jié)點(diǎn)d2接收任務(wù)I的數(shù)據(jù)流個(gè)數(shù)為3,因此計(jì)算的第一速率值為50Mbps,第二速率值為100/3Mbps,從而將第二速率值100/3Mbps確定為數(shù)據(jù)流2的當(dāng)前分配發(fā)送速率;
[0110]同樣的,對(duì)于數(shù)據(jù)流3和數(shù)據(jù)流4,按照上述方法可以確定出數(shù)據(jù)流2和數(shù)據(jù)流3的當(dāng)前分配發(fā)送速率均為100/3Mbps。
[0111]確定完畢任務(wù)I的所有數(shù)據(jù)流的當(dāng)前分配發(fā)送速率后,需要確定任務(wù)2的所有數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。此時(shí)獲得任務(wù)2的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)Si的剩余帶寬值為100Mbps-50Mbps-33Mbps = 50/3Mbps、數(shù)據(jù)流發(fā)送節(jié)點(diǎn)s2的剩余帶寬值為100Mbps-33Mbps = 200/3Mbps、數(shù)據(jù)流接收節(jié)點(diǎn)dl的剩余帶寬值為50Mbps、數(shù)據(jù)流接收節(jié)點(diǎn)d2的剩余帶寬值為O,從而確定任務(wù)2的所有數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,具體如下:
[0?12]對(duì)于數(shù)據(jù)流I,數(shù)據(jù)流發(fā)送節(jié)點(diǎn)s I的剩余帶寬值為50/3Mbps,數(shù)據(jù)流發(fā)送節(jié)點(diǎn)s I發(fā)出任務(wù)2的數(shù)據(jù)流的個(gè)數(shù)為I,數(shù)據(jù)流接收節(jié)點(diǎn)dl的剩余帶寬值為50Mbps,數(shù)據(jù)流接收節(jié)點(diǎn)dl接收任務(wù)2的數(shù)據(jù)流個(gè)數(shù)為I,因此計(jì)算的第一速率值為50/3Mbps,第二速率值為50Mbps,從而將第一速率值50/3Mbps確定為數(shù)據(jù)流I的當(dāng)前分配發(fā)送速率;
[0?13]對(duì)于數(shù)據(jù)流2,數(shù)據(jù)流發(fā)送節(jié)點(diǎn)s2的剩余帶寬值為200/3Mbps,數(shù)據(jù)流接收節(jié)點(diǎn)d2的剩余帶寬值為0,數(shù)據(jù)流發(fā)送節(jié)點(diǎn)s2發(fā)出任務(wù)2的數(shù)據(jù)流的個(gè)數(shù)為I,數(shù)據(jù)流接收節(jié)點(diǎn)d2接收任務(wù)2的數(shù)據(jù)流個(gè)數(shù)為I,由于計(jì)算的第二速率值為0,因此確定數(shù)據(jù)流2的當(dāng)前分配發(fā)送速率為O。
[0114]本領(lǐng)域技術(shù)人員可以理解的是,按照每個(gè)任務(wù)的估計(jì)完成時(shí)間確定每個(gè)任務(wù)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,優(yōu)先對(duì)估計(jì)完成時(shí)間小的任務(wù)分配帶寬,可以避免使用擁塞鏈路,進(jìn)而優(yōu)化所有任務(wù)的平均完成時(shí)間,降低擁塞對(duì)大數(shù)據(jù)業(yè)務(wù)造成的不良影響。
[0115]相應(yīng)于圖1所示的方法實(shí)施例,本發(fā)明實(shí)施例還提供了一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定裝置,應(yīng)用于數(shù)據(jù)中心網(wǎng)絡(luò)中的控制節(jié)點(diǎn),所述數(shù)據(jù)中心網(wǎng)絡(luò)還包括至少兩個(gè)任務(wù)節(jié)點(diǎn);
[0116]如圖3所示,所述裝置可以包括:
[0117]接收模塊201,用于接收每個(gè)任務(wù)節(jié)點(diǎn)發(fā)送的、該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率;
[0118]獲得模塊202,用于針對(duì)每一數(shù)據(jù)流,獲得上次確定的所述數(shù)據(jù)流的分配發(fā)送速率;
[0119]計(jì)算模塊203,用于針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值;
[0120]第一確定模塊204,用于根據(jù)所述擁塞值,確定所述鏈路是否存在擁塞。
[0121]具體的,所述根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,所利用的公式可以為:
[0122]擁塞值=所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的上次確定的分配發(fā)送速率之和/所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的發(fā)送速率之和。
[0123]應(yīng)用本發(fā)明實(shí)施例,針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,根據(jù)所述擁塞值可以確定所述鏈路是否發(fā)生擁塞。同時(shí),本發(fā)明實(shí)施例所述的確定裝置只需要通過控制節(jié)點(diǎn)和各個(gè)任務(wù)節(jié)點(diǎn)實(shí)現(xiàn),不需要依賴于其他拓?fù)浠蛘呔W(wǎng)絡(luò)設(shè)備,也不需要對(duì)控制節(jié)點(diǎn)和各個(gè)任務(wù)節(jié)點(diǎn)進(jìn)行修改和配置,可以在云計(jì)算數(shù)據(jù)中心或虛擬化環(huán)境中進(jìn)行部署。
[0124]相應(yīng)于圖2所示的方法實(shí)施例,本發(fā)明實(shí)施例還提供一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定裝置,在圖3所示實(shí)施例的基礎(chǔ)上,在確定所述鏈路存在擁塞的情況下,如圖4所示,所述裝置還可以包括:
[0125]第二確定模塊205,用于根據(jù)所述擁塞值,確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;
[0126]發(fā)送模塊206,將所確定的所述當(dāng)前分配發(fā)送速率發(fā)送給所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn),以使所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)根據(jù)所述當(dāng)前分配發(fā)送速率,調(diào)整向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率。
[0127]具體的,所述第二確定模塊205,可以包括:
[0128]計(jì)算子模塊,用于根據(jù)所述擁塞值,計(jì)算每個(gè)任務(wù)的估計(jì)完成時(shí)間;
[0129]確定子模塊,用于根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間,確定每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,其中,所述確定的每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率包括:所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。
[0130]具體的,所述計(jì)算子模塊,可以包括:
[0131]第一獲得單元,用于針對(duì)每個(gè)任務(wù),獲得所述任務(wù)的信息,其中,所述信息包括每個(gè)任務(wù)所包含的數(shù)據(jù)流以及每一數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn);
[0132]第二獲得單元,用于針對(duì)每個(gè)任務(wù)的每一數(shù)據(jù)流,獲得所述數(shù)據(jù)流的未發(fā)送數(shù)據(jù)量、數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)和數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù);
[0133]計(jì)算單元,用于根據(jù)所述未發(fā)送數(shù)據(jù)量、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,計(jì)算所述任務(wù)的估計(jì)完成時(shí)間。
[0134]具體的,所述確定子模塊,可以包括:
[0135]第一處理單元,用于將估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù);
[0136]第三獲得單元,用于針對(duì)所述候選任務(wù),獲得所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù);
[0137]確定單元,用于所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),確定所述候選任務(wù)對(duì)應(yīng)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率;
[0138]判斷單元,用于判斷所述候選任務(wù)是否是估計(jì)完成時(shí)間值最大的任務(wù),如果否,除去已作為候選任務(wù)的任務(wù),將剩余任務(wù)中估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù),觸發(fā)所述第二獲得單兀。
[0139]具體的,所述確定單元,可以包括:
[0140]第一計(jì)算子單元,用于針對(duì)所述候選任務(wù)的每個(gè)數(shù)據(jù)流,根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),計(jì)算第一速率值;
[0141 ]第二計(jì)算子單元,用于根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值、所述候選任務(wù)在所述數(shù)據(jù)流接收節(jié)點(diǎn)接收的數(shù)據(jù)流個(gè)數(shù),計(jì)算第二速率值;
[0142]判斷子單元,用于判斷所述第一速率值是否小于所述第二速率值;
[0143]確定子單元,用于當(dāng)判斷所述第一速率值小于所述第二速率值時(shí),將所述第一速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,否則將所述第二速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。
[0144]應(yīng)用本發(fā)明實(shí)施例,按照每個(gè)任務(wù)的估計(jì)完成時(shí)間確定每個(gè)任務(wù)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,優(yōu)先對(duì)估計(jì)完成時(shí)間小的任務(wù)分配帶寬,可以避免使用擁塞鏈路,進(jìn)而優(yōu)化所有任務(wù)的平均完成時(shí)間,降低擁塞對(duì)大數(shù)據(jù)業(yè)務(wù)造成的不良影響。
[0145]需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
[0146]本說明書中的各個(gè)實(shí)施例均采用相關(guān)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于裝置實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。
[0147]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施方式中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以存儲(chǔ)于計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,這里所稱得的存儲(chǔ)介質(zhì),如:R0M/RAM、磁碟、光盤等。
[0148]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。
【主權(quán)項(xiàng)】
1.一種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定方法,其特征在于,應(yīng)用于數(shù)據(jù)中心網(wǎng)絡(luò)中的控制節(jié)點(diǎn),所述數(shù)據(jù)中心網(wǎng)絡(luò)還包括至少兩個(gè)任務(wù)節(jié)點(diǎn); 所述方法包括: 接收每個(gè)任務(wù)節(jié)點(diǎn)發(fā)送的、該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率; 針對(duì)每一數(shù)據(jù)流,獲得上次確定的所述數(shù)據(jù)流的分配發(fā)送速率; 針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值; 根據(jù)所述擁塞值,確定所述鏈路是否存在擁塞。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,所利用的公式為: 擁塞值=所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的上次確定的分配發(fā)送速率之和/所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)乃械臄?shù)據(jù)流的發(fā)送速率之和。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,在確定所述鏈路存在擁塞的情況下,所述方法還包括: 根據(jù)所述擁塞值,確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率; 將所確定的所述當(dāng)前分配發(fā)送速率發(fā)送給所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn),以使所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)根據(jù)所述當(dāng)前分配發(fā)送速率,調(diào)整向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述擁塞值,確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,包括: 根據(jù)所述擁塞值,計(jì)算每個(gè)任務(wù)的估計(jì)完成時(shí)間; 根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間,確定每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,其中,所述確定的每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率包括:所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述擁塞值,計(jì)算每個(gè)任務(wù)的估計(jì)完成時(shí)間,包括: 針對(duì)每個(gè)任務(wù),獲得所述任務(wù)的信息,其中,所述信息包括每個(gè)任務(wù)所包含的數(shù)據(jù)流以及每一數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn); 針對(duì)每個(gè)任務(wù)的每一數(shù)據(jù)流,獲得所述數(shù)據(jù)流的未發(fā)送數(shù)據(jù)量、數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)和數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù); 根據(jù)所述未發(fā)送數(shù)據(jù)量、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流接收節(jié)點(diǎn)上正在執(zhí)行的任務(wù)數(shù)、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值,計(jì)算所述任務(wù)的估計(jì)完成時(shí)間。6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間,確定每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,包括: S21,將估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù); S22,針對(duì)所述候選任務(wù),獲得所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù); S23,根據(jù)所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),確定所述候選任務(wù)對(duì)應(yīng)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率; S24,判斷所述候選任務(wù)是否是估計(jì)完成時(shí)間值最大的任務(wù),如果否,除去已作為候選任務(wù)的任務(wù),將剩余任務(wù)中估計(jì)完成時(shí)間值最小的任務(wù)作為候選任務(wù),返回S22。7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述根據(jù)所述候選任務(wù)的所有數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值和數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值,以及所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù)和所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),確定所述候選任務(wù)對(duì)應(yīng)的每個(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,包括: 針對(duì)所述候選任務(wù)的每個(gè)數(shù)據(jù)流,根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流發(fā)送節(jié)點(diǎn)的剩余帶寬值、所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)發(fā)出所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),計(jì)算第一速率值; 根據(jù)所述數(shù)據(jù)流所對(duì)應(yīng)的數(shù)據(jù)流接收節(jié)點(diǎn)的剩余帶寬值、所述數(shù)據(jù)流接收節(jié)點(diǎn)接收所述候選任務(wù)的數(shù)據(jù)流個(gè)數(shù),計(jì)算第二速率值; 判斷所述第一速率值是否小于所述第二速率值; 如果是,將所述第一速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,否則將所述第二速率值確定為所述數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。8.—種大數(shù)據(jù)業(yè)務(wù)中基于流調(diào)度的鏈路擁塞確定裝置,其特征在于,應(yīng)用于數(shù)據(jù)中心網(wǎng)絡(luò)中的控制節(jié)點(diǎn),所述數(shù)據(jù)中心網(wǎng)絡(luò)還包括至少兩個(gè)任務(wù)節(jié)點(diǎn); 所述裝置包括: 接收模塊,用于接收每個(gè)任務(wù)節(jié)點(diǎn)發(fā)送的、該任務(wù)節(jié)點(diǎn)向其他任務(wù)節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率; 獲得模塊,用于針對(duì)每一數(shù)據(jù)流,獲得上次確定的所述數(shù)據(jù)流的分配發(fā)送速率; 計(jì)算模塊,用于針對(duì)包含數(shù)據(jù)流發(fā)送節(jié)點(diǎn)和數(shù)據(jù)流接收節(jié)點(diǎn)的任意兩個(gè)任務(wù)節(jié)點(diǎn),根據(jù)所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率和分配發(fā)送速率,計(jì)算所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)到所述數(shù)據(jù)流接收節(jié)點(diǎn)之間的鏈路的擁塞值; 第一確定模塊,用于根據(jù)所述擁塞值,確定所述鏈路是否存在擁塞。9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,在確定所述鏈路存在擁塞的情況下,所述裝置還包括: 第二確定模塊,用于根據(jù)所述擁塞值,確定所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率; 發(fā)送模塊,將所確定的所述當(dāng)前分配發(fā)送速率發(fā)送給所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn),以使所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)根據(jù)所述當(dāng)前分配發(fā)送速率,調(diào)整向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)流的發(fā)送速率。10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述第二確定模塊,包括: 計(jì)算子模塊,用于根據(jù)所述擁塞值,計(jì)算每個(gè)任務(wù)的估計(jì)完成時(shí)間; 確定子模塊,用于根據(jù)每個(gè)任務(wù)的估計(jì)完成時(shí)間,確定每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率,其中,所述確定的每個(gè)任務(wù)對(duì)應(yīng)的數(shù)據(jù)流的當(dāng)前分配發(fā)送速率包括:所述數(shù)據(jù)流發(fā)送節(jié)點(diǎn)向所述數(shù)據(jù)流接收節(jié)點(diǎn)傳輸?shù)拿總€(gè)數(shù)據(jù)流的當(dāng)前分配發(fā)送速率。
【文檔編號(hào)】H04L12/801GK105871738SQ201610289714
【公開日】2016年8月17日
【申請(qǐng)日】2016年5月4日
【發(fā)明人】黃韜, 張嬌, 汪碩, 劉江, 潘恬, 楊帆, 劉韻潔
【申請(qǐng)人】北京郵電大學(xué)