本發(fā)明涉及流量調(diào)度技術領域,特別涉及一種流量控制方法和裝置。
背景技術:
所謂流量,廣義上是指單位時間內(nèi)通過某一通道的對象的量,例如人流量、車流量以及我們常用的網(wǎng)絡流量等都可以被稱為流量。為了維持生活或交通秩序或者保證網(wǎng)絡設備的正常運行,需要對這些流量進行合理的控制。
目前,在多個成員口都輸出流量至同一通道的情況下,為了保證通道的暢通,需要保證其實際通過的流量不能超過其最大流量閾值。為此,通常會對這些成員口分別進行流量限制,使得這些成員口輸出到該通道的流量不超過各個成員口各自的流量閾值。例如,假設有三個成員出口都輸出流量至同一通道,通道的總流量閾值為M,可以將三個成員出口的流量閾值分別設置為M/3,保證每個成員口輸出到該通道的流量均不超過M/3,從而保證通道實際通過的流量不超過M。
在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術至少存在以下問題:
由于各個成員出口的流量限制獨立進行,當流量分布不均(例如多個成員口中部分成員口的流量超過流量閾值,而部分成員口的流量未達到設定閾值)時,可能出現(xiàn)通道的最大流量沒有達到其最大承受能力(即總流量閾值),而部分出口已經(jīng)出現(xiàn)流量超負荷的情況,造成流量控制不合理,資源得不到合理的利用。
技術實現(xiàn)要素:
為了解決現(xiàn)有技術中各個成員口的流量單獨控制導致流量控制不合理的問題,本發(fā)明實施例提供了一種流量控制的方法和裝置。
第一方面,本發(fā)明實施例提供了一種流量控制方法,該方法包括:獲取多個成員口的流量的信息,所述多個成員口用于將各自的流量輸出至同一通道,所述流量的信息包括流量的大??;獲取所述多個成員口中各個成員口的設定流量閾值和所述通道的總流量閾值;根據(jù)各個所述成員口的流量的大小、各個所述成員口的所述設定流量閾值和所述總流量閾值,確定第一成員口的實際流量閾值,所述第一成員口為所述多個成員口中的任意一個;和采用所述第一成員口的實際流量閾值,對所述第一成員口進行流量控制。
由于第一成員口的實際流量閾值是根據(jù)各個成員口的流量和設定流量閾值以及總閾值流量確定的,因此第一成員口的實際流量閾值可以隨著各個成員口的流量的變化而變化,從而更加貼近第一成員口的實際流量需求,可以更合理地控制流量。
當某個或某些成員口的流量較大(超過其設定流量閾值),而其他成員口的流量較小(未達到其設定流量閾值)時,可以將流量較大的成員口的流量閾值調(diào)大,而將流量較小的成員口的設定流量閾值調(diào)小,從而在總流量不超過總流量閾值的情況下,更加合理的控制流量,使得通道的資源得到更有效的利用。
進一步地,若第一成員口的流量超過其設定流量閾值,而第二成員口中有成員口的流量小于其對應的設定流量閾值,則第一成員口的實際流量閾值大于第一成員口的設定流量閾值,增大的部分是從流量小于設定流量閾值的成員口調(diào)用的。若第一成員口的流量未超過其設定流量閾值,而第二成員口中有成員口的流量大于其對應的設定流量閾值,則第一成員口的實際流量閾值小于第一成員口的設定流量閾值,即將第一成員口的多余流量調(diào)用給其他的成員口。
進一步地,在第一方面的一種可能的實施方式中,所述根據(jù)各個所述成員口的流量的大小、各個所述成員口的所述設定流量閾值和所述總流量閾值,確定第一成員口的實際流量閾值,包括:
按照以下公式確定所述第一成員口的實際流量閾值:
其中,Sout為第一成員口的實際流量閾值,Sin為第一成員口的流量的大小,B0為所述通道的總流量閾值;n為成員口的數(shù)量,x為第一成員口,i為第二成員口,Rx為第一成員口的設定流量閾值占總流量閾值的比例,Ri為第i個成員口的流量閾值占總流量閾值的比例,1≤i≤n且i≠x,F(xiàn)Pi為第i個成員口的流量的大小。
由于第一成員口為多個成員口中的任意一個成員口,因此,可以采用相同的公式計算每個成員口的實際流量閾值,實現(xiàn)較為方便。
可選地,所述獲取多個成員口的流量的信息,包括:統(tǒng)計所述第一成員口的流量,得到所述第一成員口的流量的信息;接收第二成員口所屬的設備發(fā)送的特征信息,所述特征信息與所述第二成員口的流量中的單位流量一一對應設置,所述第二成員口為所述多個成員口中除所述第一成員口之外的成員口;根據(jù)所述特征信息確定各個所述第二成員口的流量的信息。
可選地,所述特征信息包括對應的單位流量的大小和出接口信息,所述出接口信息用于指示將所述特征信息對應的單位流量輸出至所述通道的成員口。在一些實施方式中,所述特征信息還可以包括對應的單位流量的優(yōu)先級等其他信息。
其中,所述流量可以為數(shù)據(jù)流量、人流量、車流量或其他業(yè)務流量等。當流量為數(shù)據(jù)流量時,單位流量為數(shù)據(jù)報文,通道為聚合鏈路;當流量為人流量時,單位流量為人,通道可以為過道、房間等;當流量為車流量時,單位流量為車輛,通道可以為高速公路。
第二方面,本發(fā)明實施例提供了一種流量控制裝置,所述裝置包括用于實現(xiàn)上述第一方面所述的方法的單元,例如流量信息獲取單元、閾值獲取單元、處理單元和控制單元。
第三方面,本發(fā)明實施例提供了一種流量控制裝置,所述裝置包括處理器、存儲器以及通信接口;所述處理器、存儲器以及通信接口通過總線耦合;所述存儲器用于存儲程序指令,所述處理器通過執(zhí)行存儲在所述存儲器內(nèi)的程序指令使得所述流量控制裝置能夠執(zhí)行第一方面所述的方法。
第四方面,本發(fā)明實施例還提供了一種計算機可讀介質(zhì),用于存儲供流量控制裝置執(zhí)行的程序代碼,所述程序代碼包括執(zhí)行第一方面所述的方法的指令。
附圖說明
圖1是本發(fā)明根據(jù)一示例性實施例示出的數(shù)據(jù)流量轉(zhuǎn)發(fā)的應用場景應用圖;
圖2是本發(fā)明根據(jù)一示例性實施例示出的流量控制裝置的結(jié)構(gòu)示意圖;
圖3是本發(fā)明根據(jù)一示例性實施例示出的流量控制方法的流程圖;
圖4是本發(fā)明根據(jù)一示例性實施例示出的車流量控制的應用場景圖;
圖5是本發(fā)明根據(jù)一示例性實施例示出的另一種流量控制方法的流程圖;
圖6是本發(fā)明根據(jù)一示例性實施例示出的一種流量控制裝置的結(jié)構(gòu)框圖。
具體實施方式
為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進一步地詳細描述。
為了便于實施例的描述,先介紹本實施例提供的一種應用場景。圖1是本發(fā)明根據(jù)一示例性實施例示出的數(shù)據(jù)流量轉(zhuǎn)發(fā)的場景應用場景圖。圖1中顯示了采用數(shù)據(jù)轉(zhuǎn)發(fā)設備將轉(zhuǎn)發(fā)數(shù)據(jù)流量轉(zhuǎn)發(fā)至聚合鏈路的場景。聚合鏈路是通過多條物理鏈路聚合成的一條邏輯鏈路,通常作為整體參與各種業(yè)務。聚合鏈路可為vlanif、trunk、Serial等常見類型,本發(fā)明對此不作限制。
該數(shù)據(jù)轉(zhuǎn)發(fā)設備可以包括多塊單板,多塊單板相互通信連接,聚合鏈路可以為多塊單板聚合成的一條邏輯鏈路,即這多塊單板的出口為該聚合鏈路的成員口。
具體地,如圖1所示,該數(shù)據(jù)轉(zhuǎn)發(fā)設備的單板包括入口單板101和出口單板102、103,入口單板101上可以設置有流量分配裝置,出口單板102和103上可以設有流量控制裝置。其中,入口單板101分別與出口單板102和103通信連接。出口單板102的出口和出口單板103的出口分別為聚合鏈路104的成員口102a和103a。數(shù)據(jù)流量輸入至入口單板101,入口單板101將接收到的數(shù)據(jù)流量分配到聚合鏈路104的不同成員口102a、103a所在的出口單板102和103。出口單板102的流量控制裝置對分配到的流量進行限速處理后,通過成員口102a輸出至聚合鏈路104;出口單板103的流量控制裝置對分配到的流量進行限速處理后,通過成員口103a輸出至聚合鏈路104。
需要說明的是,以上入口單板101和出口單板102、103的區(qū)分在本實施例中僅以數(shù)據(jù)流量輸入數(shù)據(jù)轉(zhuǎn)發(fā)設備和輸出數(shù)據(jù)轉(zhuǎn)發(fā)設備為標準,并不表示其實際硬件結(jié)構(gòu)有所不同。此外,實現(xiàn)時,入口單板101和出口單板102、103可以是同一塊單板,即數(shù)據(jù)流量從同一單板輸入數(shù)據(jù)轉(zhuǎn)發(fā)設備并從數(shù)據(jù)轉(zhuǎn)發(fā)設備輸出至聚合鏈路104?;蛘?,入口單板101和出口單板102、103也可以是不同的單板,即數(shù)據(jù)流量從一個單板輸入數(shù)據(jù)轉(zhuǎn)發(fā)設備并從另一個單板從數(shù)據(jù)轉(zhuǎn)發(fā)設備輸出至聚合鏈路104。
容易知道,圖1中所示的單板數(shù)量僅為舉例,實際應用中,數(shù)據(jù)轉(zhuǎn)發(fā)設備可以包括更多數(shù)量的入口單板和出口單板。
需要說明的是,本實施例以同一數(shù)據(jù)轉(zhuǎn)發(fā)設備的入口單板和出口單板為例進行了描述,但是,在其他實施例中,入口單板和出口單板在物理上也可以為獨立的設備,即不屬于同一數(shù)據(jù)轉(zhuǎn)發(fā)設備。并且,入口單板和出口單板還可以以其他的設備形態(tài)出現(xiàn),例如服務器、計算機等設備,本發(fā)明實施例同樣適用于由這些設備構(gòu)成的數(shù)據(jù)轉(zhuǎn)發(fā)系統(tǒng)。
圖2為圖1中的出口單板上的流量控制裝置的結(jié)構(gòu)示意圖。該流量控制裝置可以實現(xiàn)為單板的全部或一部分。如圖2所示,如圖2所示,流量控制裝置可以包括:處理器21、通信接口22、存儲器23。
處理器21包括一個或者一個以上處理核心,處理器21通過運行軟件程序以及模塊,從而執(zhí)行各種功能應用以及信息處理。
通信接口22、存儲器23以及處理器21通過總線耦合。存儲器23可用于存儲軟件程序以及模塊。存儲器可存儲操作系統(tǒng)24、至少一個功能所述的應用程序模塊25。
應用程序模塊25至少包括:流量信息獲取模塊250、閾值獲取模塊251、處理模塊252和控制模塊253。流量信息獲取模塊250用于獲取多個成員口的流量的信息;閾值獲取模塊251用于獲取各個成員口的設定流量閾值和通道的總流量閾值;處理模塊252用于各個成員口的流量的大小、以及各個成員口的設定流量閾值和總流量閾值,確定第一成員口的實際流量閾值;控制模塊253用于采用第一成員口的實際流量閾值,對第一成員口進行流量控制。
可選地,處理器21用于執(zhí)行應用程序模塊25中的各個模塊,實現(xiàn)如圖3和圖5中由流量控制裝置所需要執(zhí)行的步驟。
此外,存儲器23是一種計算機可讀存儲介質(zhì),可以由任何類型的易失性或非易失性存儲設備或者它們的組合實現(xiàn),如靜態(tài)隨時存取存儲器(SRAM),電可擦除可編程只讀存儲器(EEPROM),可擦除可編程只讀存儲器(EPROM),可編程只讀存儲器(PROM),只讀存儲器(ROM),磁存儲器,快閃存儲器,磁盤或光盤。
本領域技術人員可以理解,圖2中所示出的流量控制裝置的結(jié)構(gòu)并不構(gòu)成對流量控制裝置的限定,可以包括比圖示更多或更少的部件或組合某些部件,或者不同的部件布置。
在實際應用中,流量控制裝置可以是物理上的一個裝置或裝置的一部分,也可以是物理上若干臺裝置一起組成的一個系統(tǒng)。
本發(fā)明實施例提供了一種流量控制方法。該方法基于圖1所示架構(gòu)實現(xiàn),適用于將數(shù)據(jù)流量Sn轉(zhuǎn)發(fā)至聚合鏈路104。如圖3所示,本實施例的方法包括:
步驟301、入口單板接收數(shù)據(jù)流量。
其中,數(shù)據(jù)流量中的單位流量為數(shù)據(jù)報文,即數(shù)據(jù)流量可以包括多個數(shù)據(jù)報文。
結(jié)合圖1,入口單板101從外部接收到發(fā)往聚合鏈路104的數(shù)據(jù)流量。
步驟302、入口單板確定接收到的數(shù)據(jù)流量中的各個數(shù)據(jù)報文輸出至聚合鏈路的所經(jīng)過的成員口。
入口單板可以根據(jù)預先配置的規(guī)則,確定數(shù)據(jù)報文輸出至聚合鏈路的成員口。預先配置的規(guī)則可以根據(jù)實際需要設置,本實施例對此不作限制,例如,可以根據(jù)數(shù)據(jù)報文的IP五元組信息計算得到成員口,或者,將接收到的數(shù)據(jù)包按順序依次分配給各個成員口等。
步驟303、入口單板生成數(shù)據(jù)報文對應的特征信息。
其中,特征信息可以與數(shù)據(jù)報文一一對應設置,可以包括對應的數(shù)據(jù)報文的大小和出接口信息,該出接口信息用于指示將特征信息對應的數(shù)據(jù)報文輸出至通道的成員口,即將特征信息對應的數(shù)據(jù)報文輸出到聚合鏈路所經(jīng)過的成員口。
可選地,特征信息還可以包括對應的數(shù)據(jù)報文的優(yōu)先級,優(yōu)先級用于指示特征信息對應的數(shù)據(jù)報文通過成員口的優(yōu)先級別,優(yōu)先級高的數(shù)據(jù)報文可以優(yōu)先通過成員口。
在本實施例中,特征信息可以為特征包,一個特征包與一個數(shù)據(jù)報文相對應。由于特征包在數(shù)據(jù)轉(zhuǎn)發(fā)設備內(nèi)部流通,因此,其格式可以根據(jù)數(shù)據(jù)轉(zhuǎn)發(fā)設備的具體實現(xiàn)進行設置。
步驟304、入口單板根據(jù)確定的成員口將接收到的數(shù)據(jù)流量發(fā)送到成員口所在的出口單板。
例如,在圖1所示實施例中,入口單板101將數(shù)據(jù)流量Sn分為兩份,流量S1為出接口是成員口102a的流量,故流量S1被發(fā)送到出口單板102,流量S2是出接口是成員口103a的流量,故流量S2被發(fā)送到出口單板103。
步驟305、入口單板將發(fā)送到出口單板的數(shù)據(jù)流量對應的特征信息發(fā)送到數(shù)據(jù)流量對應的成員口以外的成員口所在的出口單板。
例如,在圖1所示實施例中,流量S1對應的特征包FP1被發(fā)送到成員口103a(即成員口102a以外的成員口)所在的出口單板103,而流量S2對應的特征包FP2被發(fā)送到成員口102a(即成員口103a以外的成員口)所在的出口單板102。
步驟306、出口單板獲取各個成員口的流量的信息、各個成員口的設定流量閾值和聚合鏈路的總流量閾值。
其中,各個成員口的流量的信息至少包括流量的大小。
可以采用如下方式獲取各個成員口的流量的大?。?/p>
統(tǒng)計第一成員口的流量,得到第一成員口的流量的信息;
接收第二成員口所屬的設備發(fā)送的特征信息,特征信息與第二成員口的流量中的單位流量一一對應設置,第二成員口為多個成員口中除第一成員口之外的成員口;
根據(jù)特征信息確定各個第二成員口的流量的信息。
其中,第一成員口為出口單板所具有的成員口,例如,在圖1中,出口單板102對應的第一成員口為102a,而第二成員口為出口單板具有的成員口以外的成員口。也就是說,出口單板對于自身所具有的成員口的數(shù)據(jù)流量進行統(tǒng)計,得到第一成員口的流量的大小,而對于其他成員口,根據(jù)接收到的發(fā)送至其他成員口的特征信息來計算其他成員口的流量的大小。
多個成員口中的設定閾值和聚合鏈路的總流量閾值一般為事先設定好的。
步驟307、出口單板確定第一成員口的實際流量閾值。
其中,第一成員口的實際流量閾值可根據(jù)獲取到的各個成員口的流量的大小、各個成員口的設定流量閾值和聚合鏈路的總流量閾值來確定。
例如,在本實施例中,出口單板102根據(jù)實際接收到的流量S1和特征包FP2,知道通道整體的流量情況,確定成員口102a的實際流量閾值,出口單板103根據(jù)實際接收到的流量S2和特征包FP1,知道通道整體的流量情況,確定成員口103a的實際流量閾值。
若第一成員口的流量超過其設定流量閾值,而第二成員口中有成員口的流量小于其對應的設定流量閾值,則第一成員口的實際流量閾值大于第一成員口的設定流量閾值,增大的部分是從流量小于設定流量閾值的成員口調(diào)用的。若第一成員口的流量未超過其設定流量閾值,而第二成員口中有成員口的流量大于其對應的設定流量閾值,則第一成員口的實際流量閾值小于第一成員口的設定流量閾值,即將第一成員口的多余流量調(diào)用給其他的成員口。
具體地,可以按照以下公式確定各個成員口的實際流量閾值:
其中,Sout為第一成員口的實際流量閾值(注意這里實際流量閾值是允許輸出的流量,而不是實際輸出的流量,實際輸出的流量小于或等于Sout),Sin為第一成員口的流量的大小,B0為通道的總流量閾值;n為成員口的數(shù)量,x為第一成員口,i為第二成員口,Rx為第一成員口的設定流量閾值占總流量閾值的比例,Ri為第i個成員口的流量閾值占總流量閾值的比例,1≤i≤n且i≠x,F(xiàn)Pi為第i個成員口的流量的信息。
步驟308、出口單板確定第一成員口的實際流量閾值對第一成員口進行流量控制。
確定各個成員口的實際流量閾值時可分為以下幾種情況:
一、當聚合鏈路成員口各流量Sn均超限(即成員口所在單板輸入的流量大于預先配置的限速流量)時,即按照預先配置的策略進行限速。
例如,假定聚合鏈路配置帶寬值為100M,即B0=100M,聚合鏈路兩個成員口1、2分布在兩個不同單板上時,入口入流量150M,70M被散列到成員口1(Sin1=70M),80M被散列到成員口2(Sin2=80M),配置的策略為兩個成員口權(quán)重比3:2,即R1=60%,R2=40%。
如前文所述,在對入口流量進行散列時,到達成員口1所在單板的,除了有70M數(shù)據(jù)流量外,還有與散列到成員口2的數(shù)據(jù)流量相關的特征包FP2,在出口單板,通過對FP2特征包的統(tǒng)計,可以知道成員口2被散列了80M流量,即FP2=80M。
Sout1=MIN(Sin1,B0*R1)+MAX(0,(B0*R2-FP2)*R1/(1-R2))
=MIN(70,100*60%)+MAX(0,(100*40%-80)*60%/(1-40%))
=MIN(70,60)+MAX(0,-40)=60+0=60M
同樣方法可以算出
Sout2=MIN(Sin2,B0*R2)+MAX(0,(B0*R1-FP1)*R2/(1-R1))
=MIN(80,100*40%)+MAX(0,(100*60%-70)*40%/(1-60%))
=MIN(80,40)+MAX(0,-10)=40+0=40M
本用例中,Sout1+Sout2=100M,由此整體實現(xiàn)限速100M。
二、當聚合鏈路成員口各流量Sn均未超限(即成員口所在單板輸入的流量小于預先配置的限速流量)時,即按照預先配置的策略進行限速。
三、當聚合鏈路成員口各流量Sn,部分未超限部分超限時,流量未超限的成員口,即將它低于預先配置的那部分(即預先配置的限速流量減去成員口所在單板輸入的流量部分)帶寬資源按一定策略分給除該成員口外的其它的成員口使用。
例如,假定聚合鏈路配置帶寬值為100M,即B0=100M,聚合鏈路兩個成員口1、2分布在兩個不同單板上時,入口入流量110M,40M被散列到成員口1(Sin1=40M),70M被散列到成員口2(Sin2=70M),配置的策略為兩個成員口權(quán)重比1:1,即R1=R2=50%。
如前文所述,在對入口流量進行散列時,到達成員口1所在單板的,除了有40M數(shù)據(jù)流量外,還有與散列到成員口2的數(shù)據(jù)流量相關的特征包FP2,在出口單板,通過對FP2特征包的統(tǒng)計,可以知道成員口2被散列了70M流量,即FP2=70M。
Sout1=MIN(Sin1,B0*R1)+MAX(0,(B0*R2-FP2)*R1/(1-R2))
=MIN(40,100*50%)+MAX(0,(100*50%-70)*50%/(1-50%))
=MIN(40,50)+MAX(0,-20)=40+0=40M
同樣方法可以算出
Sout2=MIN(Sin2,B0*R2)+MAX(0,(B0*R1-FP1)*R2/(1-R1))
=MIN(70,100*50%)+MAX(0,(100*50%-40)*50%/(1-50%))
=MIN(70,50)+MAX(0,10)=50+10=60M
本用例中,Sout1+Sout2=100M,由此整體實現(xiàn)限速100M。
本發(fā)明通過獲取多個成員口的流量的信息,以及所述多個成員口中各個成員口的設定流量閾值和所述通道的總流量閾值,通過引入特征包的方式,使得每個成員口通道都知道通道整體的流量的情況,從而分別確定各個所述成員口的實際流量閾值,對對應的成員口進行流量控制然后采用適當?shù)牟呗?,使通道整體流量調(diào)度準確,實現(xiàn)當流量分布不均時,也能保證通道整體通過的流量滿足實際需求。
需要說明的是,本實施例中的限速方式不僅使用于只有兩個成員口的情況,還適用于多個成員口的情況。
例如,假設有三個成員口,假定聚合鏈路配置帶寬值為100M,即B0=100M,聚合鏈路兩個成員口1、2、3分布在三個不同單板上時,入口流量110M,50M被散列到成員口1(Sin1=50M),40M被散列到成員口2(Sin2=40M),20M被散列到成員口3(Sin3=20M),配置的策略為兩個成員口權(quán)重比3:3:4,即R1=30%,R2=30%,R3=40%。
如前文所述,在對入口流量進行散列時,到達成員口1所在單板的,除了有50M數(shù)據(jù)流量外,還有與散列到成員口2的數(shù)據(jù)流量相關的特征包FP2、以及與散列到成員口3的數(shù)據(jù)流量相關的特征包FP3,在出口單板,通過對特征包FP2、FP3的統(tǒng)計,可以知道成員口2被散列了40M流量,即FP2=40M,成員口3被散列了20M流量,即FP3=20M。
Sout1=MIN(Sin1,B0*R1)+MAX(0,(B0*R2-FP2)*R1/(1-R2))+MAX(0,(B0*R3-FP3)*R1/(1-R3))
=MIN(50,100*30%)+MAX(0,(100*30%-40)*30%/(1-30%))+MAX(0,(100*40%-20)*30%/(1-40%))
=MIN(50,30)+MAX(0,-30/7)+MAX(0,10)=30+0+10=40M
同樣方法可以算出
Sout2=MIN(Sin2,B0*R2)+MAX(0,(B0*R1-FP1)*R2/(1-R1))+MAX(0,(B0*R3-FP3)*R2/(1-R3))
=MIN(40,100*30%)+MAX(0,(100*30%-50)*30%/(1-30%))+MAX(0,(100*40%-20)*30%/(1-40%))
=MIN(40,30)+MAX(0,-140/7)+MAX(0,10)=30+0+10=40M
Sout3=MIN(Sin3,B0*R3)+MAX(0,(B0*R1-FP1)*R3/(1-R1))+MAX(0,(B0*R2-FP2)*R3/(1-R2))
=MIN(20,100*40%)+MAX(0,(100*30%-50)*40%/(1-30%))+MAX(0,(100*30%-40)*40%/(1-30%))
=MIN(20,40)+MAX(0,-80/7)++MAX(0,-40/7)
=20+0+0=20M
本用例中,Sout1+Sout2+Sout3=100M,由此整體實現(xiàn)限速100M。
當然,除了根據(jù)上述公式確定第一成員口的實際流量閾值以外,還可以采用其他方式確定第一成員口的實際流量閾值,例如,為各個成員口設置優(yōu)先級,該優(yōu)先級表示獲取其他成員口的多余流量份額的優(yōu)先級別。則相應的,將流量較小的成員口的多余流量份額優(yōu)先分配給優(yōu)先級別高的成員口使用。
本實施例通過獲取多個成員口的流量的信息,以及多個成員口中各個成員口的設定流量閾值和聚合鏈路的總流量閾值,通過引入特征包的方式,使得每個成員口通道都知道聚合鏈路整體的流量的情況,從而分別確定各個所述成員口的實際流量閾值,對對應的成員口進行流量控制,使整體流量控制準確,實現(xiàn)當流量分布不均時,也能保證通道整體通過的流量滿足實際需求。
本發(fā)明實施例的流量控制方法還可以應用于對高速公路的車流量進行控制,圖4是本發(fā)明實施例提供的高速公路流量控制的應用場景圖,包括入口401、限流帶403、檢測裝置404、流量控制裝置405和通道402。
入口401即為高速公路入口401,在高速公路入口401前一段距離設置限流帶403,限流帶403指限制車流量的一段道路,可通過在限流帶403上設置減速裝置或者閘機等設備,實現(xiàn)限流。限流帶403前設置有檢測裝置404,用于檢測一段時間內(nèi)每條通道上的車流量,檢測裝置可設置一個或者多個。檢測裝置例如可以包括傳感器和計數(shù)器,當有車經(jīng)過時,傳感器發(fā)出感應信號,計數(shù)器則對傳感器發(fā)出的感應信號進行計數(shù)。
入口401處設置有流量控制裝置405,流量控制裝置405可接收檢測裝置404發(fā)出的信息,流量控制裝置405可根據(jù)接收到的信息對即將通過的車輛進行限流。
需要說明的是,圖1中僅示出了一個入口,實際應用中,包括兩個以上入口,每個入口均設置有檢測裝置和流量控制裝置,流量控制裝置不僅可以接收到同一個入口的檢測裝置發(fā)送的信息,還可以接收到其他入口的檢測裝置發(fā)送的信息。
入口401后即為高速公路通道402。車輛從入口401進入高速公路通道402。
其中流量控制裝置的硬件結(jié)構(gòu)可以參見圖2中的流量控制裝置,在此省略詳細描述。
本發(fā)明實施例提供了一種車流控制方法,該方法基于圖4所示架構(gòu)實現(xiàn),適用于對進入高速公路的車流量進行控制。如圖5所示,本實施例的方法包括::
步驟501、各個入口的檢測裝置分別檢測所在入口的車流量。
步驟502、檢測裝置將檢測到的信息發(fā)送給流量控制裝置。
相應地,流量控制裝置接收到檢測裝置發(fā)送的信息。
步驟503、流量控制裝置獲取各個入口對應的設定流量閾值和高速公路的總流量閾值。
各個入口對應的設定流量閾值和高速公路的總流量閾值可以是預先配置好的。
步驟504、流量控制裝置根據(jù)獲取到的設定流量閾值、總流量閾值和接收到的信息,確定所在入口的實際流量閾值。
確定實際流量閾值的方式可以參見前述步驟307,在此省略詳細描述。
步驟505、流量控制裝置根據(jù)確定出的實際流量閾值,對所在入口進行流量控制。
值得注意的是,在另一種實現(xiàn)方式中,每個入口設置有檢測裝置,而所有入口共用一個流量控制裝置,共用的流量控制裝置接收所有入口的檢測裝置發(fā)送的信息,分別確定每個入口的實際流量閾值,然后控制對應的入口處的設備(例如閘機)對車輛進行流量控制。
以下為本發(fā)明實施例的裝置實施例,對于裝置實施例中未詳細描述的細節(jié),請參考上述對應的方法實施例。
圖6示出了本發(fā)明一個實施例提供的流量控制裝置的框圖。該流量控制裝置可以通過專用硬件電路,或者,軟硬件的結(jié)合實現(xiàn)成為流量控制裝置的全部或一部分。該流量控制裝置包括:流量信息獲取單元601、閾值獲取單元602、處理單元603和控制單元604。其中,流量信息獲取單元601,用于獲取多個成員口的流量的信息,多個成員口用于將各自的流量輸出至同一通道,所述流量的信息包括流量的大??;閾值獲取單元602用于獲取多個成員口中各個成員口的設定流量閾值和所述通道的總流量閾值;處理單元603用于根據(jù)流量信息獲取單元601獲取的各個成員口的流量的大小、以及閾值獲取單元602獲取的各個成員口的設定流量閾值和總流量閾值,確定第一成員口的實際流量閾值,第一成員口為多個成員口中的任意一個;控制單元604用于采用處理單元603確定的第一成員口的實際流量閾值,對第一成員口進行流量控制。
進一步地,該流量信息獲取單元601可以包括:統(tǒng)計單元601a,用于統(tǒng)計所述第一成員口的流量,得到所述第一成員口的流量的信息;接收單元601b,用于接收第二成員口所屬的設備發(fā)送的特征信息,所述特征信息與所述第二成員口的流量中的單位流量一一對應設置,所述第二成員口為所述多個成員口中除所述第一成員口之外的成員口;確定單元601c,用于根據(jù)所述接收單元接收到的所述特征信息,確定各個所述第二成員口的流量的信息。
相關細節(jié)可結(jié)合參考圖3和圖5所述的方法實施例。
需要說明的是,上述流量信息獲取單元601、閾值獲取單元602、處理單元603和控制單元604可以由處理器實現(xiàn)或者,處理器執(zhí)行存儲器中的程序指令來實現(xiàn)。
以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。