本公開涉及網(wǎng)絡(luò)通信,尤其涉及一種數(shù)據(jù)流表淘汰的方法及裝置、電子設(shè)備和存儲介質(zhì)。
背景技術(shù):
1、隨著云計(jì)算、大數(shù)據(jù)和物聯(lián)網(wǎng)技術(shù)的快速發(fā)展,網(wǎng)絡(luò)規(guī)模不斷擴(kuò)張,網(wǎng)絡(luò)流量呈指數(shù)級增長,這給網(wǎng)絡(luò)管理和維護(hù)帶來了前所未有的挑戰(zhàn)。軟件定義網(wǎng)絡(luò)(software-definednetworking,sdn)作為一種新興的網(wǎng)絡(luò)架構(gòu),通過解耦網(wǎng)絡(luò)控制平面與數(shù)據(jù)轉(zhuǎn)發(fā)平面,實(shí)現(xiàn)了網(wǎng)絡(luò)流量的靈活控制和高效管理。流表是sdn交換機(jī)進(jìn)行數(shù)據(jù)包轉(zhuǎn)發(fā)決策的重要依據(jù),它存儲了數(shù)據(jù)包匹配規(guī)則及相應(yīng)的轉(zhuǎn)發(fā)動作。由于網(wǎng)絡(luò)流量的動態(tài)性和不確定性,流表空間很容易因?yàn)榇罅苛鞅眄?xiàng)的加入而迅速耗盡,導(dǎo)致流表溢出。流表溢出不僅會影響網(wǎng)絡(luò)性能,還可能引發(fā)網(wǎng)絡(luò)故障和安全問題
2、為了解決流表溢出問題,業(yè)界提出了多種流表淘汰策略。如基于客戶端的流表項(xiàng)閾值限制、基于最近最久未使用(lru)算法的流表淘汰策略,以及基于匹配時(shí)間和匹配次數(shù)的匹配熱度淘汰策略等?;诳蛻舳说牧鞅眄?xiàng)閾值限制方案雖然可以限制每個(gè)客戶端的流表項(xiàng)數(shù)量,但在處理多主機(jī)/客戶端攻擊時(shí)顯得力不從心。此外,隨機(jī)淘汰另一個(gè)客戶端的流表項(xiàng)也可能導(dǎo)致不公平的情況發(fā)生?;趌ru算法的流表淘汰策略在受到多主機(jī)發(fā)出的流表溢出攻擊時(shí),合法用戶的流表項(xiàng)會變的極不穩(wěn)定,存在將一段時(shí)間未使用的重要流表項(xiàng)淘汰的可能。而基于匹配熱度的淘汰策略在遇到低速重復(fù)攻擊時(shí),也存在將合法流表項(xiàng)淘汰的可能。
3、現(xiàn)有的流表淘汰策略在應(yīng)對流表溢出問題時(shí),仍然存在著不公平的問題。因此,如何設(shè)計(jì)一種既能夠高效管理流表空間,又能夠保證流表淘汰公平性的策略,成為了sdn領(lǐng)域亟待解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)思路
1、本公開提供了一種數(shù)據(jù)流表淘汰的方法及裝置、電子設(shè)備和存儲介質(zhì)。其主要目的在于解決現(xiàn)有的流表淘汰策略在應(yīng)對流表溢出問題時(shí),仍然存在著不公平的的問題。
2、根據(jù)本公開的第一方面,提供了一種數(shù)據(jù)流表淘汰的方法,包括:
3、向交換機(jī)集群中的每個(gè)交換機(jī)發(fā)送流表數(shù)據(jù)讀取指令,以獲取每個(gè)所述交換機(jī)的流表數(shù)據(jù)統(tǒng)計(jì)信息;
4、基于所述流表數(shù)據(jù)統(tǒng)計(jì)信息,對所述交換機(jī)中的每個(gè)流表項(xiàng)分別進(jìn)行評估處理;
5、在所述交換機(jī)中的流表空間耗盡時(shí),根據(jù)評估處理結(jié)果,刪除所述交換機(jī)中評估權(quán)重低于淘汰閾值的流表項(xiàng)。
6、在一些實(shí)施例中,在向交換機(jī)集群中的每個(gè)交換機(jī)發(fā)送流表數(shù)據(jù)讀取指令,以獲取每個(gè)所述交換機(jī)的流表數(shù)據(jù)統(tǒng)計(jì)信息之前,所述方法還包括:
7、將所述交換機(jī)中的流表項(xiàng)按照數(shù)據(jù)包數(shù)量大小劃分為預(yù)設(shè)數(shù)量的流表隊(duì)列;
8、按照服務(wù)質(zhì)量要求將所述交換機(jī)集群中的交換機(jī)進(jìn)行分組處理,并為不同的交換機(jī)組設(shè)置預(yù)設(shè)運(yùn)行參數(shù)。
9、在一些實(shí)施例中,所述基于所述流表數(shù)據(jù)統(tǒng)計(jì)信息,對所述交換機(jī)中的每個(gè)流表項(xiàng)分別進(jìn)行評估處理,包括:
10、從所述流表數(shù)據(jù)統(tǒng)計(jì)信息中,獲取每個(gè)所述流表項(xiàng)各自對應(yīng)的評估統(tǒng)計(jì)信息;
11、基于所述評估統(tǒng)計(jì)信息,計(jì)算每個(gè)所述流表項(xiàng)在所屬的流表隊(duì)列中的評估權(quán)重。
12、在一些實(shí)施例中,所述基于所述評估統(tǒng)計(jì)信息,計(jì)算每個(gè)所述流表項(xiàng)在所屬的流表隊(duì)列中的評估權(quán)重,包括:
13、基于所述評估統(tǒng)計(jì)信息,計(jì)算所述流表項(xiàng)的時(shí)延及丟包率;
14、利用所述時(shí)延及所述丟包率,計(jì)算所述流表項(xiàng)的時(shí)延權(quán)重及丟包率權(quán)重;
15、獲取所述流表項(xiàng)在所屬隊(duì)列中的帶寬順序排位值、命中次數(shù)順序排位值及最近訪問時(shí)間順序排位值,基于所述帶寬順序排位值計(jì)算所述流表項(xiàng)的帶寬權(quán)重,基于所述命中次數(shù)順序排位值計(jì)算所述流表項(xiàng)的命中次數(shù)權(quán)重,基于所述最近訪問時(shí)間順序排位值計(jì)算所述流表項(xiàng)的最近訪問時(shí)間權(quán)重;
16、將所述時(shí)延權(quán)重、所述丟包率權(quán)重、所述帶寬權(quán)重、所述命中次數(shù)權(quán)重以及所述使用時(shí)間權(quán)重相加,得到所述流表項(xiàng)在所屬的流表隊(duì)列中的評估權(quán)重。
17、在一些實(shí)施例中,所述在所述交換機(jī)中的流表空間耗盡時(shí),根據(jù)評估處理結(jié)果,刪除所述交換機(jī)中評估權(quán)重低于淘汰閾值的流表項(xiàng),包括:
18、監(jiān)控所述交換機(jī)中的流表隊(duì)列是否發(fā)生隊(duì)列飽和;以及監(jiān)控所述交換機(jī)中的剩余流表空間大?。?/p>
19、在所述流表隊(duì)列飽和時(shí),根據(jù)評估處理結(jié)果獲得的各流表項(xiàng)的評估權(quán)重,刪除所述交換機(jī)中評估權(quán)重低于淘汰閾值的流表項(xiàng);
20、若所述交換機(jī)中流表的剩余流表空間小于空間閾值,或所述流表中的流表隊(duì)列發(fā)生隊(duì)列飽和的占比大于隊(duì)列閾值,則將所述流表進(jìn)行凍結(jié)。
21、在一些實(shí)施例中,所述方法還包括:
22、監(jiān)控所述交換機(jī)中被凍結(jié)流表的數(shù)量,并控制被凍結(jié)流表與交換機(jī)組中的流表的比值小于流表閾值。
23、根據(jù)本公開的第二方面,提供了一種數(shù)據(jù)流表淘汰的裝置,包括:
24、獲取單元,用于向交換機(jī)集群中的每個(gè)交換機(jī)發(fā)送流表數(shù)據(jù)讀取指令,以獲取每個(gè)所述交換機(jī)的流表數(shù)據(jù)統(tǒng)計(jì)信息。
25、評估單元,用于基于所述流表數(shù)據(jù)統(tǒng)計(jì)信息,對所述交換機(jī)中的每個(gè)流表項(xiàng)分別進(jìn)行評估處理;
26、刪除單元,用于在所述交換機(jī)中的流表空間耗盡時(shí),根據(jù)評估處理結(jié)果,刪除所述交換機(jī)中評估權(quán)重低于淘汰閾值的流表項(xiàng)。
27、在一些實(shí)施例中,所述裝置還包括:
28、劃分單元,用于在獲取單元向交換機(jī)集群中的每個(gè)交換機(jī)發(fā)送流表數(shù)據(jù)讀取指令,以獲取每個(gè)所述交換機(jī)的流表數(shù)據(jù)統(tǒng)計(jì)信息之前,將所述交換機(jī)中的流表項(xiàng)按照數(shù)據(jù)包數(shù)量大小劃分為預(yù)設(shè)數(shù)量的流表隊(duì)列;
29、分組單元,用于按照服務(wù)質(zhì)量要求將所述交換機(jī)集群中的交換機(jī)進(jìn)行分組處理,并為不同的交換機(jī)組設(shè)置預(yù)設(shè)運(yùn)行參數(shù)。
30、在一些實(shí)施例中,所述評估單元包括:
31、獲取模塊,用于從所述流表數(shù)據(jù)統(tǒng)計(jì)信息中,獲取每個(gè)所述流表項(xiàng)各自對應(yīng)的評估統(tǒng)計(jì)信息;
32、計(jì)算模塊,用于基于所述評估統(tǒng)計(jì)信息,計(jì)算每個(gè)所述流表項(xiàng)在所屬的流表隊(duì)列中的評估權(quán)重。
33、在一些實(shí)施例中,所述計(jì)算模塊還用于:
34、基于所述評估統(tǒng)計(jì)信息,計(jì)算所述流表項(xiàng)的時(shí)延及丟包率;
35、利用所述時(shí)延及所述丟包率,計(jì)算所述流表項(xiàng)的時(shí)延權(quán)重及丟包率權(quán)重;
36、獲取所述流表項(xiàng)在所屬隊(duì)列中的帶寬順序排位值、命中次數(shù)順序排位值及最近訪問時(shí)間順序排位值,基于所述帶寬順序排位值計(jì)算所述流表項(xiàng)的帶寬權(quán)重,基于所述命中次數(shù)順序排位值計(jì)算所述流表項(xiàng)的命中次數(shù)權(quán)重,基于所述最近訪問時(shí)間順序排位值計(jì)算所述流表項(xiàng)的最近訪問時(shí)間權(quán)重;
37、將所述時(shí)延權(quán)重、所述丟包率權(quán)重、所述帶寬權(quán)重、所述命中次數(shù)權(quán)重以及所述使用時(shí)間權(quán)重相加,得到所述流表項(xiàng)在所屬的流表隊(duì)列中的評估權(quán)重。
38、在一些實(shí)施例中,所述刪除單元包括:
39、監(jiān)控模塊,用于監(jiān)控所述交換機(jī)中的流表隊(duì)列是否發(fā)生隊(duì)列飽和;以及監(jiān)控所述交換機(jī)中的剩余流表空間大??;
40、刪除模塊,用于在所述流表隊(duì)列飽和時(shí),根據(jù)評估處理結(jié)果獲得的各流表項(xiàng)的評估權(quán)重,刪除所述交換機(jī)中評估權(quán)重低于淘汰閾值的流表項(xiàng);
41、凍結(jié)模塊,用于在所述交換機(jī)中流表的剩余流表空間小于空間閾值,或所述流表中的流表隊(duì)列發(fā)生隊(duì)列飽和的占比大于隊(duì)列閾值時(shí),將所述流表進(jìn)行凍結(jié)。
42、在一些實(shí)施例中,所述裝置還包括:
43、監(jiān)控單元,用于監(jiān)控所述交換機(jī)中被凍結(jié)流表的數(shù)量,并控制被凍結(jié)流表與交換機(jī)組中的流表的比值小于流表閾值。
44、根據(jù)本公開的第三方面,提供了一種電子設(shè)備,包括:
45、至少一個(gè)處理器;以及
46、與所述至少一個(gè)處理器通信連接的存儲器;其中,
47、所述存儲器存儲有可被所述至少一個(gè)處理器執(zhí)行的指令,所述指令被所述至少一個(gè)處理器執(zhí)行,以使所述至少一個(gè)處理器能夠執(zhí)行前述第一方面所述的方法。
48、根據(jù)本公開的第四方面,提供了一種存儲有計(jì)算機(jī)指令的非瞬時(shí)計(jì)算機(jī)可讀存儲介質(zhì),其中,所述計(jì)算機(jī)指令用于使所述計(jì)算機(jī)執(zhí)行前述第一方面所述的方法。
49、根據(jù)本公開的第五方面,提供了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序在被處理器執(zhí)行時(shí)實(shí)現(xiàn)如前述第一方面所述的方法。
50、本公開提供了一種數(shù)據(jù)流表淘汰的方法及裝置、電子設(shè)備和存儲介質(zhì),向交換機(jī)集群中的每個(gè)交換機(jī)發(fā)送流表數(shù)據(jù)讀取指令,以獲取每個(gè)所述交換機(jī)的流表數(shù)據(jù)統(tǒng)計(jì)信息?;谒隽鞅頂?shù)據(jù)統(tǒng)計(jì)信息,對所述交換機(jī)中的每個(gè)流表項(xiàng)分別進(jìn)行評估處理;在所述交換機(jī)中的流表空間耗盡時(shí),根據(jù)評估處理結(jié)果,刪除所述交換機(jī)中評估權(quán)重低于淘汰閾值的流表項(xiàng)。與相關(guān)技術(shù)相比,本公開實(shí)施例通過定期或?qū)崟r(shí)地讀取每個(gè)交換機(jī)的流表數(shù)據(jù)統(tǒng)計(jì)信息,可以實(shí)時(shí)評估交換機(jī)中的每個(gè)流表項(xiàng),通過刪除評估權(quán)重低于淘汰閾值的流表項(xiàng),可以避免盲目地刪除或添加流表項(xiàng),使得在進(jìn)行流表淘汰時(shí)更加公平;同時(shí),節(jié)省交換機(jī)資源,提高資源利用率。
51、應(yīng)當(dāng)理解,本部分所描述的內(nèi)容并非旨在標(biāo)識本技術(shù)的實(shí)施例的關(guān)鍵或重要特征,也不用于限制本技術(shù)的范圍。本技術(shù)的其它特征將通過以下的說明書而變得容易理解。