一種命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法及系統(tǒng),方法包括:確定速率步驟,請(qǐng)求者向命名數(shù)據(jù)網(wǎng)絡(luò)發(fā)送請(qǐng)求包,當(dāng)該網(wǎng)絡(luò)將該請(qǐng)求包所對(duì)應(yīng)的數(shù)據(jù)包返回給請(qǐng)求者時(shí),路由器估計(jì)該網(wǎng)絡(luò)中準(zhǔn)確擁塞信息并將該準(zhǔn)確擁塞信息寫入該數(shù)據(jù)包,并根據(jù)該準(zhǔn)確擁塞信息以及該數(shù)據(jù)包大小的估計(jì)值計(jì)算該流的請(qǐng)求包的最大發(fā)送速率,并以該速率發(fā)送后續(xù)請(qǐng)求包;確定轉(zhuǎn)發(fā)策略步驟,當(dāng)該網(wǎng)絡(luò)將該請(qǐng)求包所對(duì)應(yīng)的數(shù)據(jù)包返回給請(qǐng)求者時(shí),該路由器還根據(jù)該網(wǎng)絡(luò)中準(zhǔn)確擁塞信息計(jì)算各個(gè)轉(zhuǎn)發(fā)接口對(duì)應(yīng)于流路的可用值,該可用值用于在轉(zhuǎn)發(fā)該請(qǐng)求包時(shí),自適應(yīng)選擇該可用值最大的接口。由此,可以有效提高網(wǎng)絡(luò)資源利用率,減少丟包率并最終提高數(shù)據(jù)流完成時(shí)間。
【專利說明】一種命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域,特別涉及一種基于準(zhǔn)確擁塞信息的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法及系統(tǒng)。
【背景技術(shù)】
[0002]命名數(shù)據(jù)網(wǎng)絡(luò)(NDN, Named Data Networking)是一種新的未來互聯(lián)網(wǎng)體系架構(gòu)。不同于TCP/IP中用戶到用戶(host-to-host)的傳輸方式,命名數(shù)據(jù)網(wǎng)絡(luò)將網(wǎng)絡(luò)視為一個(gè)內(nèi)容資源池,請(qǐng)求者(Consumer)需要請(qǐng)求某個(gè)內(nèi)容時(shí),則向網(wǎng)絡(luò)發(fā)送請(qǐng)求包,網(wǎng)絡(luò)找到請(qǐng)求包對(duì)應(yīng)的信息時(shí),提供者(Producer)將請(qǐng)求包對(duì)應(yīng)的數(shù)據(jù)包原路返回給請(qǐng)求者。用戶請(qǐng)求包發(fā)送速率將直接影響網(wǎng)絡(luò)返回?cái)?shù)據(jù)包的速率,進(jìn)而影響網(wǎng)絡(luò)資源利用情況。TCP/IP中轉(zhuǎn)發(fā)表由路由表決定,但在命名數(shù)據(jù)網(wǎng)絡(luò)中引入了自適應(yīng)轉(zhuǎn)發(fā)機(jī)制(adaptive forwarding),可自適應(yīng)地選擇不同的轉(zhuǎn)發(fā)接口( interface)。自適應(yīng)轉(zhuǎn)發(fā)機(jī)制可以根據(jù)網(wǎng)絡(luò)狀態(tài),將請(qǐng)求包發(fā)向不同的轉(zhuǎn)發(fā)口,最優(yōu)化網(wǎng)絡(luò)流量分布,最大限度地利用網(wǎng)絡(luò)帶寬資源。網(wǎng)絡(luò)帶寬資源利用率將直接影響用戶的流完成時(shí)間(FCT,F(xiàn)low Complete Time)。
[0003]當(dāng)前在命名數(shù)據(jù)網(wǎng)絡(luò)中控制請(qǐng)求包發(fā)送速率的主要方法是滑動(dòng)窗口方法(AMD,Additive Increase Multiplicative Decrease)。若數(shù)據(jù)包返回時(shí)間沒有超過本地估計(jì)往返時(shí)延(RTT)則認(rèn)為網(wǎng)絡(luò)中沒有發(fā)生擁塞,請(qǐng)求包的滑動(dòng)窗口 W增加1,若數(shù)據(jù)包返回時(shí)間超過往返時(shí)延則認(rèn)為網(wǎng)絡(luò)中發(fā)生擁塞,滑動(dòng)窗口減為原來的1/2。這種滑動(dòng)窗口方法有兩個(gè)問題:第一,通過超時(shí)機(jī)制被動(dòng)感知網(wǎng)絡(luò)中擁塞情況,滑動(dòng)窗口 W增加較慢,在高帶寬高延遲(high Bandwidth-Latency)網(wǎng)絡(luò)中將浪費(fèi)大量網(wǎng)絡(luò)資源;第二,命名數(shù)據(jù)網(wǎng)絡(luò)實(shí)現(xiàn)了網(wǎng)絡(luò)內(nèi)緩存,數(shù)據(jù)包提供者有可能動(dòng)態(tài)變化,較難準(zhǔn)確估計(jì)往返時(shí)延,導(dǎo)致超時(shí)機(jī)制不能準(zhǔn)確反映網(wǎng)絡(luò)擁塞情況。在基本滑動(dòng)窗口方法基礎(chǔ)上,研究人員還針對(duì)命名數(shù)據(jù)網(wǎng)絡(luò)中請(qǐng)求包包較小,對(duì)網(wǎng)絡(luò)資源占用少的特點(diǎn),設(shè)計(jì)出主動(dòng)丟棄請(qǐng)求包控制協(xié)議(ICP-Shape)的擁塞控制方法。其基本思路是當(dāng)路由器檢測(cè)到網(wǎng)絡(luò)中將要發(fā)生擁塞時(shí),主動(dòng)丟棄收到的請(qǐng)求包,并將丟棄信息發(fā)送給請(qǐng)求包發(fā)送者。請(qǐng)求包發(fā)送者收到請(qǐng)求包丟棄信息則認(rèn)為網(wǎng)絡(luò)中發(fā)生了擁塞,將滑動(dòng)窗口值減為原來的1/2。丟棄請(qǐng)求包的方法比在擁塞時(shí)丟棄數(shù)據(jù)包的方法降低了網(wǎng)絡(luò)資源浪費(fèi)率,但其窗口增加方法還是傳統(tǒng)的慢啟動(dòng)方法,在慢啟動(dòng)過程中將浪費(fèi)大量網(wǎng)絡(luò)資源。而且丟棄請(qǐng)求包會(huì)導(dǎo)致消息重傳,網(wǎng)絡(luò)資源浪費(fèi)和消息重傳最后將影響用戶的流完成時(shí)間。
[0004]命名數(shù)據(jù)網(wǎng)絡(luò)將轉(zhuǎn)發(fā)口分為三類:可用轉(zhuǎn)發(fā)口(green)、新轉(zhuǎn)發(fā)口(yellow)和不可用轉(zhuǎn)發(fā)口(red),在自適應(yīng)轉(zhuǎn)發(fā)機(jī)制中可自動(dòng)選擇不同的轉(zhuǎn)發(fā)口。當(dāng)有多個(gè)可用轉(zhuǎn)發(fā)口時(shí),可根據(jù)不同需求選擇某個(gè)或者多個(gè)接口轉(zhuǎn)發(fā)請(qǐng)求包。但當(dāng)前還沒有發(fā)現(xiàn)針對(duì)最大化網(wǎng)絡(luò)帶寬資源和最小化用戶流完成時(shí)間的自適應(yīng)轉(zhuǎn)發(fā)機(jī)制。
[0005]為了提高命名數(shù)據(jù)網(wǎng)絡(luò)網(wǎng)絡(luò)對(duì)網(wǎng)絡(luò)帶寬資源的利用率,并最終提高用戶流完成時(shí)間,本發(fā)明針對(duì)命名數(shù)據(jù)網(wǎng)絡(luò)提出一種準(zhǔn)確擁塞信息(ECN, Explicit CongestionNotification)傳輸控制方法。擁塞信息包括鏈路中實(shí)際帶寬、可用隊(duì)列長(zhǎng)度、活躍流數(shù)目和流的傳輸往返時(shí)間(RTT)。該發(fā)明的基本思想是:當(dāng)數(shù)據(jù)包返回給請(qǐng)求者時(shí),中間路由器將網(wǎng)絡(luò)中可用帶寬、可用隊(duì)列長(zhǎng)度和活躍流數(shù)目信息寫入數(shù)據(jù)包,數(shù)據(jù)包接收者根據(jù)鏈路上可用的最小可用資源和活躍流數(shù)目計(jì)算出此流的請(qǐng)求包的最大發(fā)送速率,并以此速率發(fā)送請(qǐng)求包。路由器保留各個(gè)轉(zhuǎn)發(fā)接口所對(duì)應(yīng)的鏈路可用資源和活躍流數(shù)目,并由此計(jì)算出各個(gè)轉(zhuǎn)發(fā)接口的可用值。當(dāng)轉(zhuǎn)發(fā)請(qǐng)求包時(shí)則根據(jù)接口的可用值,設(shè)計(jì)滿足網(wǎng)絡(luò)帶寬資源使用率最大化的方案,并以此方案將請(qǐng)求包從不同接口轉(zhuǎn)發(fā)出去。
【發(fā)明內(nèi)容】
[0006]為了解決上述問題,本發(fā)明的目的在于,提供一種命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法及系統(tǒng),能夠解決在命名數(shù)據(jù)網(wǎng)絡(luò)中利用傳統(tǒng)的滑動(dòng)窗口方法會(huì)浪費(fèi)較多網(wǎng)絡(luò)資源的問題,利用準(zhǔn)確擁塞信息解決網(wǎng)絡(luò)擁塞,提高網(wǎng)絡(luò)資源利用率的傳輸控制方法。
[0007]本發(fā)明的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法,其特征在于,包括以下步驟:
[0008]確定速率步驟,請(qǐng)求者向命名數(shù)據(jù)網(wǎng)絡(luò)發(fā)送請(qǐng)求包,當(dāng)該命名數(shù)據(jù)網(wǎng)絡(luò)將該請(qǐng)求包所對(duì)應(yīng)的數(shù)據(jù)包返回給請(qǐng)求者時(shí),路由器估計(jì)該命名數(shù)據(jù)網(wǎng)絡(luò)中準(zhǔn)確擁塞信息并將該準(zhǔn)確擁塞信息寫入該數(shù)據(jù)包,并根據(jù)該準(zhǔn)確擁塞信息以及該數(shù)據(jù)包大小的估計(jì)值計(jì)算該流的請(qǐng)求包的最大發(fā)送速率,并以該速率發(fā)送后續(xù)請(qǐng)求包,該發(fā)送速率S計(jì)算方法為,
【權(quán)利要求】
1.一種命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法,其特征在于,包括以下步驟: 確定速率步驟,請(qǐng)求者向命名數(shù)據(jù)網(wǎng)絡(luò)發(fā)送請(qǐng)求包,當(dāng)該命名數(shù)據(jù)網(wǎng)絡(luò)將該請(qǐng)求包所對(duì)應(yīng)的數(shù)據(jù)包返回給請(qǐng)求者時(shí),路由器估計(jì)該命名數(shù)據(jù)網(wǎng)絡(luò)中準(zhǔn)確擁塞信息并將該準(zhǔn)確擁塞信息寫入該數(shù)據(jù)包,并根據(jù)該準(zhǔn)確擁塞信息以及該數(shù)據(jù)包大小的估計(jì)值計(jì)算該流的請(qǐng)求包的最大發(fā)送速率,并以該速率發(fā)送后續(xù)請(qǐng)求包,該發(fā)送速率S計(jì)算方法為,
2.如權(quán)利要求1所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法,其特征在于,該確定請(qǐng)求包發(fā)送速率步驟具體為: 步驟11,請(qǐng)求者向命名數(shù)據(jù)網(wǎng)絡(luò)發(fā)送一個(gè)請(qǐng)求包,并等待數(shù)據(jù)包返回; 步驟12,路由器估計(jì)各轉(zhuǎn)發(fā)接口的鏈路上的可用帶寬B、可用隊(duì)列長(zhǎng)度Q和活躍流數(shù)目|af| ; 步驟13,該路由器將該可用帶寬B、該可用隊(duì)列長(zhǎng)度q和該活躍流數(shù)目|af|寫入返回的該數(shù)據(jù)包中;若經(jīng)過該路由器時(shí),(B+Q)/|AF|比數(shù)據(jù)包中保存信息的計(jì)算值小,則取代之,反之該數(shù)據(jù)包中保存的信息不變; 步驟14,該請(qǐng)求者根據(jù)收到的該數(shù)據(jù)包的平均大小,估計(jì)未來數(shù)據(jù)包的大?。? 步驟15,該請(qǐng)求者收到該數(shù)據(jù)包后,計(jì)算該請(qǐng)求包發(fā)送速率S:
3.如權(quán)利要求1所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法,其特征在于,該確定路由器自適應(yīng)轉(zhuǎn)發(fā)策略步驟具體為: 步驟21,當(dāng)路由器收到某一流路Flowi的第一個(gè)請(qǐng)求包時(shí),向其所有轉(zhuǎn)發(fā)接口廣播該請(qǐng)求包; 步驟22,該路由器收到返回的該數(shù)據(jù)包時(shí),各個(gè)接口記錄該數(shù)據(jù)包中關(guān)于之前鏈路的可用帶寬B、可用隊(duì)列長(zhǎng)度Q和活躍流數(shù)目IafI信息;步驟23,根據(jù)該可用帶寬B、該可用隊(duì)列長(zhǎng)度Q和該活躍流數(shù)目|af|信息,計(jì)算出各個(gè)接口對(duì)應(yīng)于該某一流路Flowi的可用值,計(jì)算方法如下:
4.如權(quán)利要求1所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法,其特征在于, 將一定時(shí)間內(nèi)收到的該數(shù)據(jù)包大小的平均值作為該數(shù)據(jù)包大小的估計(jì)值。
5.如權(quán)利要求1所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法,其特征在于, 將該路由器對(duì)網(wǎng)絡(luò)中可用帶寬、可用隊(duì)列長(zhǎng)度、活躍流數(shù)目的估計(jì)間隔的值為該路由器到下一跳的傳輸時(shí)延的整數(shù)倍。
6.如權(quán)利要求1所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制方法,其特征在于, 該路由器每隔一定周期向該各個(gè)轉(zhuǎn)發(fā)接口廣播該請(qǐng)求包,該周期為所有流中接收該請(qǐng)求包的最小間隔的整數(shù)倍。
7.—種命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制系統(tǒng),其特征在于,該系統(tǒng)包括: 確定速率模塊,用于請(qǐng)求者向命名數(shù)據(jù)網(wǎng)絡(luò)發(fā)送請(qǐng)求包,當(dāng)該命名數(shù)據(jù)網(wǎng)絡(luò)將該請(qǐng)求包所對(duì)應(yīng)的數(shù)據(jù)包返回給請(qǐng)求者時(shí),路由器估計(jì)該命名數(shù)據(jù)網(wǎng)絡(luò)中準(zhǔn)確擁塞信息并將該準(zhǔn)確擁塞信息寫入該數(shù)據(jù)包,并根據(jù)該準(zhǔn)確擁塞信息以及該數(shù)據(jù)包大小的估計(jì)值計(jì)算該流的請(qǐng)求包的最大發(fā)送速率,并以該速率發(fā)送后續(xù)請(qǐng)求包,該發(fā)送速率S計(jì)算方法為,
8.如權(quán)利要求7所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制系統(tǒng),其特征在于,該確定請(qǐng)求包發(fā)送速率模塊,具體包括:請(qǐng)求包發(fā)送模塊,用于請(qǐng)求者向命名數(shù)據(jù)網(wǎng)絡(luò)發(fā)送一個(gè)請(qǐng)求包,并等待數(shù)據(jù)包返回; 準(zhǔn)確擁塞信息估計(jì)模塊,用于路由器估計(jì)各個(gè)轉(zhuǎn)發(fā)接口的鏈路上的可用帶寬B、可用隊(duì)列長(zhǎng)度Q和活躍流數(shù)目|af| ; 數(shù)據(jù)包記錄模塊,用于該路由器將該可用帶寬B、該可用隊(duì)列長(zhǎng)度Q和該活躍流數(shù)目|af|寫入返回的該數(shù)據(jù)包中;若經(jīng)過該路由器時(shí),(b+q)/|af|比數(shù)據(jù)包中保存信息的計(jì)算值小,則取代之,反之該數(shù)據(jù)包中保存的信息不變; 數(shù)據(jù)包大小估計(jì)模塊,用于該請(qǐng)求者根據(jù)收到的該數(shù)據(jù)包的平均大小,估計(jì)未來數(shù)據(jù)包的大??; 請(qǐng)求包發(fā)送速率計(jì)算模塊,用于該請(qǐng)求者收到該數(shù)據(jù)包后,計(jì)算該請(qǐng)求包發(fā)送速率s:
9.如權(quán)利要求7所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制系統(tǒng),其特征在于,該確定路由器自適應(yīng)轉(zhuǎn)發(fā)策略模塊,具體包括: 請(qǐng)求包廣播模塊,用于當(dāng)路由器收到某一流路Flowi的第一個(gè)請(qǐng)求包時(shí),向其各個(gè)轉(zhuǎn)發(fā)接口廣播該請(qǐng)求包; 準(zhǔn)確擁塞信息記錄模塊,用于該路由器收到返回的該數(shù)據(jù)包時(shí),該各個(gè)轉(zhuǎn)發(fā)接口記錄該數(shù)據(jù)包中關(guān)于之前鏈路的可用帶寬B、可用隊(duì)列長(zhǎng)度Q和活躍流數(shù)目|af|信息; 轉(zhuǎn)發(fā)接口可用值計(jì)算模塊,用于根據(jù)該可用帶寬B、該可用隊(duì)列長(zhǎng)度Q和該活躍流數(shù)目Iaf信息,計(jì)算出各個(gè)接口對(duì)應(yīng)于該某一流路Fiowi的可用值,計(jì)算方法如下:
10.如權(quán)利要求7所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制系統(tǒng),其特征在于, 將一定時(shí)間內(nèi)收到的該數(shù)據(jù)包大小的平均值作為該數(shù)據(jù)包大小的估計(jì)值。
11.如權(quán)利要求7所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制系統(tǒng),其特征在于, 將該路由器對(duì)網(wǎng)絡(luò)中可用帶寬、可用隊(duì)列長(zhǎng)度、活躍流數(shù)目的估計(jì)間隔的值為該路由器到下一跳的傳輸時(shí)延的整數(shù)倍。
12.如權(quán)利要求7所述的命名數(shù)據(jù)網(wǎng)絡(luò)傳輸控制系統(tǒng),其特征在于, 該路由器每隔一定周期向該各個(gè)轉(zhuǎn)發(fā)接口廣播該請(qǐng)求包,該周期為所有流中接收該請(qǐng)求包的最小間隔的整數(shù)倍。
【文檔編號(hào)】H04L12/813GK103916329SQ201410108483
【公開日】2014年7月9日 申請(qǐng)日期:2014年3月21日 優(yōu)先權(quán)日:2014年3月21日
【發(fā)明者】周建二, 李振宇, 武慶華, 謝高崗 申請(qǐng)人:中國(guó)科學(xué)院計(jì)算技術(shù)研究所