本發(fā)明涉及交換機(jī),特別是涉及一種交換機(jī)擁塞控制方法、設(shè)備、介質(zhì)及計(jì)算機(jī)程序產(chǎn)品。
背景技術(shù):
1、隨著數(shù)據(jù)中心網(wǎng)絡(luò)的規(guī)模不斷擴(kuò)大,交換機(jī)之間的鏈路擁塞問題日益嚴(yán)重。為解決交換機(jī)鏈路擁塞問題,相關(guān)技術(shù)領(lǐng)域提出許多基于交換機(jī)的主動隊(duì)列管理方案,如隨機(jī)早期丟棄算法(random?early?drop,red)和加權(quán)隨機(jī)早期丟棄技術(shù)(weighted?randomearly?detection,wred),其都是通過為隊(duì)列設(shè)置丟包下限、丟包上限和丟包概率閾值(如最大丟包概率,并默認(rèn)最小丟包概率為0)形成丟包概率的線性函數(shù),從而根據(jù)當(dāng)前時刻的隊(duì)列長度來確定對新到達(dá)數(shù)據(jù)包的丟包概率。
2、然而,目前的交換機(jī)主動隊(duì)列管理方案,還是依賴于專家手動配置丟包下限、丟包上限和丟包概率閾值,而在交換機(jī)的運(yùn)行過程中,固定的參數(shù)配置無法適應(yīng)復(fù)雜多變的網(wǎng)絡(luò)環(huán)境和流量模式,而且對于采用wred的情況需要為每個隊(duì)列設(shè)置不同的參數(shù),增加了工作的復(fù)雜性和負(fù)擔(dān)。
3、因此,如何適應(yīng)網(wǎng)絡(luò)環(huán)境變化更新交換機(jī)隊(duì)列的丟包參數(shù),是本領(lǐng)域技術(shù)人員需要解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的是提供一種交換機(jī)擁塞控制方法、設(shè)備、介質(zhì)及計(jì)算機(jī)程序產(chǎn)品,能夠適應(yīng)網(wǎng)絡(luò)環(huán)境變化更新交換機(jī)隊(duì)列的丟包參數(shù)。
2、為解決上述技術(shù)問題,本發(fā)明提供一種交換機(jī)擁塞控制方法,包括:
3、獲取交換機(jī)端口的目標(biāo)隊(duì)列在當(dāng)前時刻的瞬時隊(duì)列長度和所述目標(biāo)隊(duì)列的歷史平均隊(duì)列長度,根據(jù)所述歷史平均隊(duì)列長度和所述瞬時隊(duì)列長度計(jì)算當(dāng)前平均隊(duì)列長度;
4、根據(jù)所述歷史平均隊(duì)列長度和所述當(dāng)前平均隊(duì)列長度計(jì)算隊(duì)列長度變化參數(shù),根據(jù)所述隊(duì)列長度變化參數(shù)確定所述目標(biāo)隊(duì)列的丟包概率閾值;
5、根據(jù)所述目標(biāo)隊(duì)列的丟包下限、丟包上限和所述丟包概率閾值,得到所述目標(biāo)隊(duì)列對應(yīng)的丟包概率分布函數(shù);
6、將所述當(dāng)前平均隊(duì)列長度、所述歷史平均隊(duì)列長度和所述瞬時隊(duì)列長度中的至少一項(xiàng)代入所述丟包概率分布函數(shù),輸出丟包概率;
7、根據(jù)所述丟包概率對所述目標(biāo)隊(duì)列新到達(dá)的數(shù)據(jù)包進(jìn)行丟包處理;
8、其中,所述丟包概率分布函數(shù)為非線性函數(shù)。
9、一方面,根據(jù)所述歷史平均隊(duì)列長度和所述瞬時隊(duì)列長度計(jì)算當(dāng)前平均隊(duì)列長度,包括:
10、將所述歷史平均隊(duì)列長度和所述瞬時隊(duì)列長度進(jìn)行加權(quán)求和計(jì)算,得到所述當(dāng)前平均隊(duì)列長度;
11、其中,所述歷史平均隊(duì)列長度對應(yīng)的第一權(quán)重和所述瞬時隊(duì)列長度對應(yīng)的第二權(quán)重根據(jù)所在交換機(jī)為所述目標(biāo)隊(duì)列提供的緩存大小確定。
12、另一方面,根據(jù)所述交換機(jī)為所述目標(biāo)隊(duì)列提供的緩存大小確定所述歷史平均隊(duì)列長度對應(yīng)的第一權(quán)重和所述瞬時隊(duì)列長度對應(yīng)的第二權(quán)重,包括:
13、記所述第一權(quán)重為1減去所述第二權(quán)重;
14、根據(jù)所述目標(biāo)隊(duì)列對應(yīng)的緩存大小確定對應(yīng)的數(shù)據(jù)包數(shù)量,記為數(shù)據(jù)包數(shù)量閾值;
15、記所述當(dāng)前平均隊(duì)列長度達(dá)到所述數(shù)據(jù)包數(shù)量閾值的隊(duì)列長度為當(dāng)前平均隊(duì)列長度閾值,生成當(dāng)前平均隊(duì)列長度閾值與所述第二權(quán)重和所述數(shù)據(jù)包數(shù)量閾值的第一等式;
16、根據(jù)所述丟包下限確定所述當(dāng)前平均隊(duì)列長度閾值的范圍;
17、根據(jù)所述當(dāng)前平均隊(duì)列長度閾值的范圍和所述第一等式確定所述第二權(quán)重的范圍;
18、在所述第二權(quán)重的范圍中確定所述第二權(quán)重。
19、另一方面,根據(jù)所述丟包下限確定所述當(dāng)前平均隊(duì)列長度閾值的范圍,包括:
20、以所述丟包下限為所述當(dāng)前平均隊(duì)列長度閾值的范圍上限。
21、另一方面,在所述第二權(quán)重的范圍中確定所述第二權(quán)重,包括:
22、以所述第二權(quán)重的范圍的上限為所述第二權(quán)重。
23、另一方面,根據(jù)所述歷史平均隊(duì)列長度和所述當(dāng)前平均隊(duì)列長度計(jì)算隊(duì)列長度變化參數(shù),根據(jù)所述隊(duì)列長度變化參數(shù)確定所述目標(biāo)隊(duì)列的丟包概率閾值,包括:
24、若連續(xù)第一數(shù)量時刻所述當(dāng)前平均隊(duì)列長度均小于所述丟包下限,則降低所述丟包概率閾值;
25、若連續(xù)第二數(shù)量時刻所述當(dāng)前平均隊(duì)列長度均大于所述丟包上限,則增加所述丟包概率閾值;
26、否則采用上一時刻的所述丟包概率閾值作為當(dāng)前時刻的所述丟包概率閾值。
27、另一方面,所述第一數(shù)量和所述第二數(shù)量均為2。
28、另一方面,根據(jù)所述歷史平均隊(duì)列長度和所述當(dāng)前平均隊(duì)列長度計(jì)算隊(duì)列長度變化參數(shù),根據(jù)所述隊(duì)列長度變化參數(shù)確定所述目標(biāo)隊(duì)列的丟包概率閾值,包括:
29、若所述當(dāng)前平均隊(duì)列長度小于或等于所述丟包下限,則將所述目標(biāo)隊(duì)列在當(dāng)前時刻的隊(duì)列狀態(tài)值置為第一狀態(tài)值;
30、若所述當(dāng)前平均隊(duì)列長度大于所述丟包下限且所述當(dāng)前平均隊(duì)列長度小于或等于所述丟包上限,則將所述目標(biāo)隊(duì)列在當(dāng)前時刻的隊(duì)列狀態(tài)值置為第二狀態(tài)值;
31、若所述當(dāng)前平均隊(duì)列長度大于所述丟包上限,則將所述目標(biāo)隊(duì)列在當(dāng)前時刻的隊(duì)列狀態(tài)值置為第三狀態(tài)值;
32、獲取歷史時刻的隊(duì)列狀態(tài)值;
33、若連續(xù)第一數(shù)量時刻的隊(duì)列狀態(tài)值均為所述第一狀態(tài)值,則降低所述丟包概率閾值;
34、若連續(xù)第二數(shù)量時刻的隊(duì)列狀態(tài)值均為所述第三狀態(tài)值,則增加所述丟包概率閾值;
35、否則采用上一時刻的所述丟包概率閾值作為當(dāng)前時刻的所述丟包概率閾值。
36、另一方面,降低所述丟包概率閾值,包括:
37、計(jì)算所述當(dāng)前平均隊(duì)列長度與所述丟包下限的第一比值;
38、以上一時刻的所述丟包概率閾值與所述第一比值的乘積為當(dāng)前時刻的所述丟包概率閾值。
39、另一方面,增加所述丟包概率閾值,包括:
40、計(jì)算所述當(dāng)前平均隊(duì)列長度減去所述丟包上限的第一差值;
41、計(jì)算所述丟包下限和所述丟包上限的第一乘積;
42、計(jì)算所在交換機(jī)為所述目標(biāo)隊(duì)列提供的緩存大小對應(yīng)的數(shù)據(jù)包數(shù)量減去所述第一乘積的第二差值;
43、計(jì)算所述第一差值與所述第二差值的第二比值;
44、計(jì)算1加所述第二比值后與上一時刻的所述丟包概率閾值的乘積為當(dāng)前時刻的所述丟包概率閾值。
45、另一方面,根據(jù)所述目標(biāo)隊(duì)列的丟包下限、丟包上限和所述丟包概率閾值,得到所述目標(biāo)隊(duì)列對應(yīng)的丟包概率分布函數(shù),包括:
46、將所述丟包下限、所述丟包上限和所述丟包概率閾值代入柯西分布函數(shù),得到所述丟包概率分布函數(shù)。
47、另一方面,將所述丟包下限、所述丟包上限和所述丟包概率閾值代入柯西分布函數(shù),得到所述丟包概率分布函數(shù),包括:
48、將所述柯西分布函數(shù)中的第二參數(shù)設(shè)置為所述丟包下限;
49、計(jì)算所述丟包上限減去所述丟包下限的第三差值;
50、計(jì)算1減去最大丟包概率的第四差值;
51、計(jì)算所述第三差值與所述第四差值的乘積除以所述最大丟包概率,得到所述柯西分布函數(shù)中的第一參數(shù);
52、其中,所述第一參數(shù)為用于確定所述柯西分布函數(shù)的形狀的參數(shù),所述第二參數(shù)為用于確定所述柯西分布函數(shù)中的自變量范圍的參數(shù)。
53、為解決上述技術(shù)問題,本發(fā)明還提供一種交換機(jī)擁塞控制設(shè)備,包括:
54、存儲器,用于存儲計(jì)算機(jī)程序;
55、處理器,用于執(zhí)行所述計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被所述處理器執(zhí)行時實(shí)現(xiàn)如上述任意一項(xiàng)所述交換機(jī)擁塞控制方法的步驟。
56、為解決上述技術(shù)問題,本發(fā)明還提供一種非易失性存儲介質(zhì),其上存儲有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時實(shí)現(xiàn)如上述任意一項(xiàng)所述交換機(jī)擁塞控制方法的步驟。
57、為解決上述技術(shù)問題,本發(fā)明還提供一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時實(shí)現(xiàn)如上述任意一項(xiàng)所述交換機(jī)擁塞控制方法的步驟。
58、本發(fā)明提供的交換機(jī)擁塞控制方法,有益效果在于通過根據(jù)交換機(jī)端口的目標(biāo)隊(duì)列的歷史平均隊(duì)列長度和當(dāng)前時刻的瞬時隊(duì)列長度計(jì)算當(dāng)前平均隊(duì)列長度,進(jìn)而計(jì)算隊(duì)列長度變化參數(shù)來確定目標(biāo)隊(duì)列的丟包概率閾值,而不是采用預(yù)先配置的固定參數(shù)。同時,采用非線性函數(shù)來表達(dá)目標(biāo)隊(duì)列對應(yīng)的丟包概率分布函數(shù),將當(dāng)前平均隊(duì)列長度、歷史平均隊(duì)列長度和瞬時隊(duì)列長度中的至少一項(xiàng)代入丟包概率分布函數(shù),輸出丟包概率,根據(jù)該丟包概率對目標(biāo)隊(duì)列新到達(dá)的數(shù)據(jù)包進(jìn)行丟包處理,相較于傳統(tǒng)的線性丟包概率函數(shù)更加適應(yīng)目前數(shù)據(jù)中心網(wǎng)絡(luò)數(shù)據(jù)流的突發(fā)性和隨機(jī)性。
59、本發(fā)明提供的交換機(jī)擁塞控制設(shè)備、非易失性存儲介質(zhì)及計(jì)算機(jī)程序產(chǎn)品,具有上述有益效果,在此不再贅述。