專利名稱:基于概率性濾除對每個數據源應用最大-最小公平性的聚合策略的制作方法
技術領域:
本公開一般涉及網絡交換設備(例如,以太網網絡交換設備)中的聚合策略。更具體地,本公開涉及網絡交換設備將來自多個數據源的數據流量聚合到網絡交換設備內的單個目的地的聚合策略。
背景技術:
諸如基于以太網的網絡交換設備(“交換機”)或者基于跨越以太網的互聯網協議(IP)的網絡路由設備(“路由器”)之類的網絡設備需要能夠處理從多個數據源(例如,用戶計算機、服務器設備、其他交換機或路由器,等等)同時接收的數據分組。這樣的網絡設備需要能夠控制數據分組的流入以確保從數據源接收的數據分組不會耗盡網絡設備內的計算資源,例如,產生擁塞情形。這樣的網絡設備可基于將輸入端口(例如,具有連接到相應數據源的數據鏈路的網絡交換端口)的輸入帶寬限制到固定輸入帶寬來控制來自多個源的數據分組的流入。替代地,這樣的網絡設備可為網絡設備內的目的地電路實施聚合策略,其中,供應數據分組的所有數據源的聚合帶寬由目的地的容量來限制。
參考如下附圖,其中,貫穿各附圖中具有相同標號名的元件表示同樣的元件,并且其中圖I示出根據示例實施例的具有基于應用概率性濾除對每個數據源實施最大-最小公平性的裝置的示例網絡機;圖2示出根據示例實施例的由圖I中基于應用概率性濾除實施最大-最小公平性的裝置執行的方法;圖3示出根據示例實施例的對數據分組到達速率、保證共享帶寬速率以及計算的數據源的相應數據分組到達速率不超過相應保證共享帶寬速率的概率的示例計算。
具體實施方式
概述在一個實施例中,一種方法包括計算針對供應去往指定目的地的數據分組的多個數據源中的每個數據源的相應數據分組到達速率,指定目的地在某一機器內并且指定目的地具有一定帶寬容量;基于根據相應數據分組到達速率分配所述帶寬容量中的相應選擇部分來計算針對每個數據源的保證共享帶寬速率;根據計算的相應數據分組到達速率不超過相應保證共享帶寬速率的概率,選擇性地將來自每個數據源的相應數據分組作為傳送數 據分組而傳送或者丟棄相應數據分組;并且根據指定目的地的帶寬容量,對聚合的傳送數據分組向指定目的地的供應進行選擇性地濾除,所述聚合的傳送數據分組是僅從數據源所供應的傳送數據分組中聚合得到的。在另一個實施例中,一種設備包括概率公平性電路和濾除器電路。概率公平性電路被配置為計算針對供應去往指定目的地的數據分組的多個數據源中的每個數據源的相應數據分組到達速率,指定目的地具有一定帶寬容量,指定目的地和所述設備實現在某一機器內。概率公平性電路還被配置為基于根據相應數據分組到達速率分配所述帶寬容量中的相應選擇部分來計算針對每個數據源的保證共享帶寬速率。概率公平性電路還被配置為根據計算的相應數據分組到達速率不超過相應保證共享帶寬速率的概率,選擇性地將來自每個數據源的相應數據分組作為傳送數據分組而傳送或者丟棄相應數據分組。濾除器電路被配置為根據指定目的地的帶寬容量,選擇性地對聚合的傳送數據分組向所述指定目的地的供應進行選擇性地濾除,所述聚合的傳送數據分組是僅從數據源所供應的傳送數據分組、中聚合得到的。詳細描述具體實施例使能一種設備,該設備被實現在某一機器內,基于對供應去往所述機器內的指定目的地的數據分組的每個數據源應用概率性濾除來應用最大-最小公平性。由所述設備響應于從每個數據源接收的相應數據分組所計算的針對相應數據源的概率性濾除基于針對相應數據源計算的數據分組到達速率和計算的保證共享帶寬速率。所述設備根據計算的相應數據到達速率不超過相應保證共享帶寬速率的概率來選擇性地傳送來自數據源的數據分組或丟棄數據分組。因此,可根據指定目的地的帶寬容量來對傳送數據分組進行濾除。因此,具體實施例將針對每個數據源的概率性濾除(基于指定目的地的帶寬容量計算的)與針對聚合的數據分組(這些數據分組是在所有數據源中傳送的)的選擇性濾除相結合。因此,具體實施例相對于指定目的地的帶寬容量在所有數據源之間提供了公平數據分組分布。具體實施例因此避免了通過將輸入端口固定到固定數據帶寬可能發生的“挨餓(starvation) ”的問題,因為示例實施例使得來自一個數據源的數據分組突發被處理的同時另一數據源相對空閑。具體實施例還避免了所有數據源之間比例公平性的問題,其中,來自所有數據源的數據分組被同等地控制為一指定“漏失率”并且侵略性數據源可不公平地利用其他服從性流的漏失率。例如,假定聚合策略提供2兆比特每秒(Mb/s)的限額,第一數據源提供IMb/s的進入速率的數據分組并且第二數據源提供9Mb/s的進入速率的數據分組,比例公平性的執行導致第一數據源具有O. 2Mb/s的比例進入速率而第二數據源具有I. 8Mb/s的比例進入速率如果第二數據源不正當地將其流量速率從9Mb/s增大到15Mb/s的話,得到的比率公平性將第一數據源的比例進入速率降低到O. 625Mb/s,而第二數據源不公平地獲得了 I. 875Mb/s的比例進入速率。如上所述,示例實施例的概率性濾除確保在本示例中相對于2Mb/s的帶寬容量來說兩個數據源都獲得IMb/s的保證共享帶寬速率,從而某一侵略性節點不能不公平地從另一數據源獲取保證共享帶寬速率。圖I是示出根據示例實施例的具有用于控制來自數據源14(例如,14a、14b、14c、14d)的數據分組向指定目的地(例如,18a或18b)的供應的裝置12的示例網絡設備(即,網絡機)10的示圖。網絡設備10是一種物理機,其可被配置為經由耦合到裝置12的數據鏈路16執行與其他物理機14(例如,客戶端通信設備、服務器計算設備、防火墻計算設備、路由器、交換機,等等)的通信。因此,網絡設備10可以是經由數據鏈路16執行網絡通信的網絡使能機。網絡設備10的示例為按照在此所述修改的在市場上可獲得的Cisco Nexus7000系列的模塊交換系統。裝置12(被實現為例如網絡交換設備10中的網絡線路卡12或者計算設備10中的專用集成電路(ASIC) 12)被配置為基于對供應去往該機器10內的指定目的地18a或18b
的數據分組的每個數據源14應用概率性濾除來應用最大-最小公平性。依賴于實現方式,如果裝置12被實現為具有用于接收數據分組形式的緩沖數據的輸出引線22和多個輸入引線20的ASIC的話,相關目的地可被實現為在裝置12上實現的目的地電路(例如,管理邏輯電路)18a ;替代地,如果裝置12被實現為具有多個輸出端口 22和多個輸入交換端口 20的網絡線路卡12的話,相關目的地可被實現為如可從市場上可獲得的Cisco Nexus 7000系列模塊交換系統那樣的監控線路卡18b,其中,目的地電路18a可包括用于將數據輸出到數據端口 22以遞送到管理卡18b的電路。裝置12包括輸入數據源20,輸入數據源20例如被實現為輸入網絡交換機端口或ASIC引線并且用作用于裝置12的數據源。裝置12還包括概率公平性電路24、濾除器電路26和可選的目的地電路18a,以用于由數據源20供應并且最初是由外部數據源14供應的數據分組。概率公平性電路24被配置為接收來自各數據源20/14的數據分組28。概率公平性電路24例如被實現為網絡交換機內的交換電路的部分,可被配置為識別來自給定數據源20(圖示為數據源i,具有“i = I至N”的值,其中“N”是供應數據分組28的活動數據源的數目)的相應數據分組28的到達。概率公平性電路24被配置為根據計算的概率來選擇性地將來自每個數據源20的相應數據分組28作為傳送數據分組30而傳送或者丟棄相應數據分組28。如圖2和圖3中所示,計算的概率被示為傳送概率“hi(t)”32,其中,值“t”對應于數據源“i”20供應的數據分組28被概率公平性電路接收的時隙。來自數據源(例如i = I)的相應傳送數據分組30(例如30a)被與來自僅僅另一數據源(例如i = 3)的傳送數據分組(例如30b)聚合,從而導致聚合的傳送數據分組34的供應,該聚合的傳送數據分組34被供應到濾除器電路26。下面將參考圖2和圖3來更詳細地描述概率公平性電路24。濾除器電路26可被配置為根據指定目的地的帶寬容量“C”選擇性地將聚合的傳送數據分組34的供應濾除成經濾除的流96,經濾處的流96被輸出到指定目的地18。如針對圖2所描述的,濾除器電路26可使用令牌桶濾除來實現,其中,令牌桶濾除通過添加令牌的長期平均速率“r” (即,令牌刷新速率)來定義,突發大小“b”目的地18可在任意給定時間(例如,令牌深度)進行處理,并且可用于發送數據分組的最大速率“P”也被稱為峰值發送速率或端口速度。因此,概率公平性電路24基于對供應去往指定目的地18的數據分組的每個數據源20應用概率性過濾除來確保來自多個源20/14的數據分組28被公平地傳送,并且濾除器電路26確保聚合的傳送數據分組34的供應根據指定目的地18a的帶寬容量C被選擇性地濾除。在網絡設備10中實現的所公開的電路18、24、26中的任一個可以多種形式實現。所公開的電路18、24、26的示例實現方式包括按照諸如可編程邏輯陣列(PLA)、場可編程門陣列(FPGA)之類的邏輯陣列實現的或者通過諸如專用集成電路(ASIC)的集成電路的掩膜編程實現的硬件邏輯。電路18、24、26中的每個可使用多處理器系統(例如,在單個計算機系統內具有并行操作的多個中央處理單元(CPU))或單個CPU來實現。這些電路中的任何一個可使用基于軟件的可執行資源來實現,這樣的資源由諸如微處理器電路(未示出)之類的相應內部處理器電路執行,其中,在內部存儲器電路中所存儲的可執行代碼的執行使得處理器電路將應用狀態變量存儲在處理器存儲器中,創建了執行在此所述的電路的操作的可執行應用資源(例如,應用實例)。因此,在本說明書中術語“電路”的使用指包括用于執行所述操作的邏輯的基于硬件的電路或包括用于由處理器電路對可執行代碼的執行而修改的應用狀態數據和應用變量的存儲的處理器存儲器的預留部分的基于軟件的電路。存儲器電路可被實現在18、24、26中任一個中,例如,使用諸如可編程只讀存儲器(PROM)或EPROM的非易失性存儲器和/或諸如DRAM的易失性存儲器等。
此外,對“輸出數據分組(或類似術語)”的任何提及可基于在所公開的裝置中(例如,在發送緩存器中)的有形存儲器介質中以數據結構的形式并存儲此數據結構而創建數據分組來實現。對“輸出數據分組(或類似術語)”的任何提及還可包括經由通信介質(例如有線鏈路或無線鏈路,按照適當方式)將在有形存儲介質中所存儲的數據分組電發送(例如,經由有線電流或無線電場,按照適當方式)到另一網絡節點(光發送也可被使用,按照適當方式)。類似地,對“接收數據分組(或類似術語)”的任何提及可基于所公開的裝置檢測通信介質上對數據分組的電(或光)發送并且將所檢測到的發送作為數據結構存儲在所公開的裝置中(例如,接收緩存器中)的有形存儲器介質上來實現。還應注意,存儲器電路24可被處理器電路22動態地運行,例如基于處理器電路22所執行的存儲器地址分配和分區。圖2示出根據示例實施例的由圖I中的基于應用概率性濾波實施最大-最小公平性的裝置12執行的方法。圖3示出根據示例實施例的概率公平性電路24對數據分組到達速率、保證共享帶寬速率以及計算的概率的示例計算。圖2和圖3中描述的步驟可被實現為存儲在計算機或機器可讀存儲介質(例如,軟盤、硬盤、ROM、EEPR0M、非易失性RAM、CD-ROM等)上的可執行代碼,這些步驟基于處理器電路(例如,CPU或多處理器系統)執行代碼來完成;在此所描述的步驟還可被實現為可執行邏輯,此可執行邏輯被編碼在一個或多個供執行的有形介質中(例如,可編程邏輯陣列或設備、場可編程門陣列、可編程陣列邏輯、專用集成電路等)。參考圖2,概率公平性電路24被配置為在步驟40中基于在內部表存儲器中創建分組到達事件條目來記錄給定事件k時來自源20的相應數據分組28的到達分組到達事件條目可指定供應數據分組28的數據源“i”的值、數據分組的到達時間“k”以及分組長度“Pi(k) ”。對“Pi(k) ”的提及在此還被用于識別在相應時隙“k”從相應數據源“i” 20接收的特定接收分組28。如在步驟40中所圖示,概率公平性電路24可使用移動技術將通過數據源“ i ” 20索引的分組到達事件條目存儲到雙端口存儲器,其中,表存儲器可存儲來自給定數據源數據源“ i ” 20的“M”個最新近的數據分組,最新近的分組到達事件條目被添加在表存儲器的第一端,并且最舊的分組到達事件條目被推到表存儲器的另一端。因此,用于所接收的數據分組“Pi (k) ”的參數“k”還可對應于分組序列號“j”,其中I彡j彡M|。因此,新的數據分組28總是具有序列號“M”,并且當新分組到達時,每個現有分組條目的分組序列號“j”減小I。概率公平性電路24還可使用各種手段,例如基于指定硬件接口、由網絡交換機端口 20添加到數據分組28的指定源標識符等,來識別每個數據分組的源。因此,優選地,概率公平性電路24可不同于交換電路。如圖2和圖3中所示,概率公平性電路24被配置為在步驟42中針對每個數據源“i”重計算相應數據分組到達速率“ai(t) ”44、保證共享帶寬速率”46以及計算的相應數據分組到達速率44不超過相應保證共享帶寬速率46的概率。此計算的概率也被稱為傳送概率速率Ii (t)”32。參考圖3,概率公平性電路24被配置為基于從每個數據源“i” 20擷取“Μ”個最新近分組到達事件條目來計算針對相應數據源“i” 20的數據分組到達速率“%(0”44。如在步驟50中所示,概率公平性電路24可基于兩種替代方法中的一種方法來計算數據分組到達速率44。
在一種方法中,概率公平性電路24可基于計算來自相應數據源“ i ”的“M”個最新近數據分組28的長度“p (k) ”的和52相對到達時間間隔“T(i,M)-T(i,0) ”54的比率α MO ^ 44’來計算數據分組到達速率44。值“τα,Μ)”表示來自相應數據源“i”的最新近數據分組的到達時間,并且值“T(i,0)”表示來自相應數據源“i”的第“M”個最舊數據分組的到達時間。在本示例中,基于比率44’的數據分組到達速率44使得來自相應數據源“i”的每個最后的第“Μ”個所接收的數據分組28能夠為數據分組到達速率44提供同等貢獻。概率公平性電路24還可將數據分組到達速率44計算為針對另外的數個(例如M=2)最新近數據分組(在圖3中示為兩個最新近數據分組)計算的比率44’的指數移動平均值56。具體地,假定估計開始于時間t = 0,并且假定被分析的連續數據分組的數目為M = 2,則數據分組到達速率“ai(t) ”44根據歷史因子“ β ”58被計算,其中,O < B < 11。因此,歷史因子“ β ”58的相對較大值為先前的估計提供較大權重,并且通過濾除噪聲而穩定了估計;較小的歷史因子“ β ”58對近來的估計改變提供較大響應,從而在計算的數據分組到達速率44中提供更大靈敏度。概率公平性電路24還被配置為響應于每個所接收的數據分組28針對所有源重計算保證共享帶寬速率“fi (t) ” 46,也被稱為公平速率“fi (t) ” 46。具體地,概率公平性電路24可在步驟60中使用公平共享分派速率“FS”為未被分配的源“i”計算保證共享帶寬速率
”46 :“C”為指定目的地18的帶寬容量,并且“Ca”為已被分配給其他數據源“i”的已分派帶寬。因此,概率公平性電路24可基于在步驟64中計算帶寬容量“C”中的可用部分“C-Ca” 66相對仍需要分配相應保證共享帶寬速率46的數據源的數目“S”來計算保證共享帶寬62。在步驟64中計算了帶寬容量的可用部分相對未被分配的源“i”20的數目“S”的公平共享分派速率“FS”62之后,概率公平性電路24可在步驟70中判斷針對當前分析下的源的數據分組到達速率“% (t)” 44是否小于或等于公平共享分派速率“FS” 62,然后針對該相應源“i”的保證共享帶寬速率“fi(t) ”46被設定為等于相應數據分組到達速率“ai(t) ”44,并且未被分配的源的數目“S”被遞減并且可用部分“C-Ca” 66利用新被分派的源的數據分組到達速率“% (t) ”44而被更新。
概率公平性電路24針對所有源“i”重復步驟72中的處理。然而,注意,如果步驟70和72中沒有相應數據分組到達速率“% (t) ”44小于或等于公平共享分派速率“FS” 62的源“i”,則概率性公平電路24可在步驟74中將針對所有數據源的保證共享帶寬速率
”46都設定為等于公平共享分派速率“FS”62。概率性公平電路24還可在步驟76中為每個相應數據源“i”20計算傳送概率速率“比(t) ”32。如圖3中所示,計算的概率32被計算為值I與相應保證共享帶寬速率“fi (t) ”46除以相應數據分組到達速率“%⑴” 44的值中的小者。表達“max {A, a, (t)} | ”用于確保除法不使用零值進行。因此,概率性公平電路24響應于指定目的地18接收到的每個數據分組28針對所有源“i”重計算相應數據分組到達速率“% (t) ”44、保證共享帶寬速率“fjt) ”46和傳送概率速率Ii (t)” 32。因此,圖2的步驟42中的針對所有數據源“i”的相應數據分組到達速率“ai (t) ”44、保證共享帶寬速率“A (t) ”46和傳送概率速率Ii (t) ”32的值可作為針 對所有數據源“ i ”的各自矢量A (t)、F (t)、H (t)被存儲在表存儲器中。參考圖2,概率公平性電路24在利用數據分組到達速率矢量A(t)、保證共享帶寬速率矢量F (t)和傳送概率速率矢量H (t)更新了其內部表存儲器之后,可基于在步驟80中針對每個源“i”20生成相應的均勻(uniformly)隨機數(U_RNDi)82,例如32比特的數,來針對每個所接收的數據分組執行傳送概率測試。均勻隨機數82特征在于其跨越其整個范圍具有均勻概率分布,從而該范圍
內的每個值被選作均勻隨機數具有相同概率。概率公平性電路24在步驟84中計算歸一化(normalized)的傳送概率值“Hhi (t) ” 86,其將傳送概率速率“比(t) ” 32從介于O和I之間的值轉化為32比特的值。概率公平性電路24在步驟88中基于判斷相應數據分組的均勻隨機數(U_RNDi)82是否超過歸一化的傳送概率值“Hhi (t) ”86來執行傳送概率測試如果概率公平性電路24在步驟88中判定針對相應數據分組“Pi (k) ”28的均勻隨機數(U_RNDi)82超過歸一化的傳送概率值“Hhi (t) ”86,則概率公平性電路24在步驟90中丟棄由相應源“i” 20供應的相應數據分組“Pi (k)” 28。然而,如果概率公平性電路24在步驟88中判定針對相應數據分組“pi(k) ”28的均勻隨機數(U_RNDi)82不超過歸一化的傳送概率值“Hhi (t) ”86,則概率公平性電路28在步驟92中將相應數據分組“pi(k)”28作為傳送數據分組30(例如,圖I的30a)傳送,以與來自另一數據源“ i ” 20的傳送數據分組30聚合。從前述說明中很明顯,概率公平性電路24可被配置為根據計算的相應數據分組到達速率“% (t) ”44不超過保證共享帶寬速率“fi (t) ”46的概率32來選擇性地將來自每個數據源“i” 20的相應數據分組“Pi (k) ” 28作為傳送數據分組30傳送或者丟棄相應數據分組“Pi (k) ”28。因此,概率公平性電路24可基于針對每個源“i”20的相應數據分組到達速率“ai (t) ”44的改變不斷地調整保證共享帶寬速率“fi (t) ”46和傳送概率速率Ii (t) ”32 ;因此,比較活動的數據源(例如,14b)可從相對不活動的其他數據源(例如,14c)“借用”帶寬,而無需不公平地從需要分派的帶寬的其他數據源(例如,14d) “偷用”帶寬。因此,基于每個分組的概率性濾除允許對脈沖流量進行調節,同時保證多個數據源“i” 20之間的公平性。概率公平性電路24(和/或某種其他電路)可在步驟94中將所有傳送數據分組30聚合成聚合的傳送數據分組34以供應到濾除器電路26。
濾除器電路26可被配置為根據指定目的地的帶寬容量C選擇性地對聚合的傳送數據分組34 (聚合的傳送數據分組34是僅從數據源20所供應的并被概率公平性電路24傳送的傳送數據分組30中聚合得到的)的供應進行濾除并將經濾除的數據分組流96輸出到指定的目的地18。如圖2中所示,濾除器電路26可被配置為針對聚合的傳送數據分組(例如,30a)判斷對于相應數據分組的相應大小“Pi(k)”是否有足夠數目的令牌⑴可用,其中,此令牌的數目基于與帶寬容量C有關的令牌刷新率“r”。如果足夠數目的令牌(T)可用,濾除器電路26基于在步驟100中將一個聚合的傳送數據分組傳送到輸出流96來處理聚合的傳送數據分組Pi (k) 30。然而,如果在步驟98中沒有足夠數目的令牌⑴可用,則濾除器電路26在步驟102中丟棄數據分組。根據示例實施例,最大-最小公平性可使用針對機器(例如被實現為計算設備)內的目的地的聚合策略的概率性方法來實現。在示例實施例中,平均漏失率R (t)將近似等于最大-最小公平速率F (t)。因此,最大-最小公平性可被實現用于線卡中的聚合策略,而無需對單個流隊列維護。考慮下面的基本原理。假定在時間間隔At期間具有長度L的W個分組來自源“ i ”,并且針對源“ i ”的最大-最小公平速率為(t)。在大多數不丟失的情況下,作為傳送概率測試結果,針對任何分組z,假定從樣本空間{DROP = O, PASS = 1}生成了隨機數djt)。則ddt)遵循以W和hjt)為參數的標準二項式分布。基于二項式分布的特性,(Mt)的擴展為EWi(Z)] =hi(t)。假定在時間間隔At期間數據分組到達速率Bi (t)以及最大-最小公平速率fjt)沒有很大改變或保持常數。在滿足fjt)的情況中,漏失率A (t)為
W
Σ (L !ii Cii(Z))Z=I
**i ⑴=—....................
At而
VV
V Π)Z=I
a[(t)= 磁一
At ,
(其基于短時間間隔中的所有假定而成立)并且hi(t) = AaVaiU) I。因此,平均漏失率為
wwww
XO^di(Z)) [(L * Eldi(Z)]) Z(LilMO) I(L)Z=I Z=I z=l Z=I Efrjit)] = Ef —-—I = ---=-—-=-凈 hi(t)
AtAtAtAt
w
I (L)Z-I
=-^ hjit) = a|(t) * f[(t)/ aj(t): fjtt)
At
因此,針對源“i”的平均漏失率ri(t)等于其短時間間隔At期間的最大-最小公平速率A (t)。雖然根據網絡交換設備的線路卡中的裝置12圖示說明了示例實施例,但是示例 實施例也可被實現在從多個數據源接收數據的其他計算設備中。雖然已經結合被認為是用于執行所附權利要求中指定的主題的最佳模式而呈現的內容描述了本公開的示例實施例,但是應理解,示例實施例僅是說明性的,并且不對所附權利要求中所指定的主題進行限制。
權利要求
1.一種方法,包括 計算針對供應去往指定目的地的數據分組的多個數據源中的每個數據源的相應數據分組到達速率,所述指定目的地在某一機器內并且所述指定目的地具有一定帶寬容量; 基于根據相應數據分組到達速率分配所述帶寬容量中的相應選擇部分來計算針對每個數據源的保證共享帶寬速率; 根據計算的相應數據分組到達速率不超過相應保證共享帶寬速率的概率,選擇性地將來自每個數據源的相應數據分組作為傳送數據分組而傳送或者丟棄相應數據分組;并且 根據所述指定目的地的帶寬容量,對聚合的傳送數據分組向所述指定目的地的供應進行選擇性地濾除,所述聚合的傳送數據分組是僅從數據源所供應的傳送數據分組中聚合得到的。
2.根據權利要求I所述的方法,其中,針對所述指定目的地所接收到的每一個數據分組,重計算相應數據分組到達速率、保證共享帶寬速率以及計算的所述概率。
3.根據權利要求I所述的方法,其中,針對每個數據源的相應數據分組到達速率的計算包括 基于來自相應數據源的第一多個最新近數據分組的長度的總和相對于指定數目的最新近數據分組的到達時間間隔的比率,來計算數據分組到達速率;或者 將數據分組到達速率計算為針對第二多個最新近數據分組所計算的所述比率相對于施加到該比率的相應歷史因子的指數運動平均值。
4.根據權利要求I所述的方法,其中,保證共享帶寬速率是基于是否所有數據分組到達速率超過所述帶寬容量中的可用部分相對于需要分配相應保證共享帶寬速率的數據源的數目的公平共享分派速率或者是否任何數據分組到達速率小于所述公平共享分派速率而計算出的。
5.根據權利要求I所述的方法,其中,選擇性地傳送包括基于如下步驟丟棄相應數據分組 生成針對相應數據分組的均勻隨機數;并且 判定所述均勻隨機數超過計算的所述概率的歸一化值。
6.根據權利要求I所述的方法,其中,選擇性地傳送包括基于如下步驟傳送相應數據分組 生成針對相應數據分組的均勻隨機數;并且 判定所述均勻隨機數不超過計算的所述概率的歸一化值。
7.根據權利要求I所述的方法,其中,計算的所述概率被計算為值I與相應保證共享帶寬速率除以相應數據分組到達速率的值中的小者。
8.根據權利要求I所述的方法,其中,選擇性地濾除包括 針對聚合的傳送數據分組中的一個,判斷相對該個聚合的傳送數據分組的相應大小,是否有足夠數目的令牌可用,所述令牌的數目基于與所述帶寬容量相關的令牌刷新率;并且 如果有足夠數目的令牌可用,則傳送該個聚合的傳送數據分組,如果沒有足夠數目的令牌可用,則丟棄該個聚合的傳送數據分組,基于此,該個聚合的傳送數據分組被處理。
9.根據權利要求I所述的方法,其中,對數據分組到達速率、保證共享帶寬速率和計算的所述概率的計算中的每個計算以及選擇性地濾除都由專用集成電路(ASIC)執行。
10.一種設備,包括 概率公平性電路,被配置為 計算針對供應去往指定目的地的數據分組的多個數據源中的每個數據源的相應數據分組到達速率,所述指定目的地在某一機器內并且所述指定目的地具有一定帶寬容量; 基于根據相應數據分組到達速率分配所述帶寬容量中的相應選擇部分來計算針對每個數據源的保證共享帶寬速率; 根據計算的相應數據分組到達速率不超過相應保證共享帶寬速率的概率,選擇性地將來自每個數據源的相應數據分組作為傳送數據分組而傳送或者丟棄相應數據分組;并且 所述設備還包括濾除器電路,所述濾除器電路被配置為根據所述指定目的地的帶寬容量,對聚合的傳送數據分組向所述指定目的地的供應進行選擇性地濾除,所述聚合的傳送數據分組是僅從數據源所供應的傳送數據分組中聚合得到的。
11.根據權利要求10所述的設備,其中,所述概率公平性電路被配置為針對所述指定目的地所接收到的每一個數據分組,重計算相應數據分組到達速率、保證共享帶寬速率以及計算的所述概率。
12.根據權利要求10所述的方法,其中,所述概率公平性電路被配置為基于如下步驟來計算針對每個數據源的相應數據分組到達速率 基于來自相應數據源的第一多個最新近數據分組的長度的總和相對于指定數目的最新近數據分組的到達時間間隔的比率,來計算數據分組到達速率;或者 將數據分組到達速率計算為針對第二多個最新近數據分組所計算的所述比率相對于施加到該比率的相應歷史因子的指數運動平均值。
13.根據權利要求10所述的設備,其中,所述概率公平性電路被配置為基于是否所有數據分組到達速率超過所述帶寬容量中的可用部分相對于需要分配相應保證共享帶寬速率的數據源的數目的公平共享分派速率或者是否任何數據分組到達速率都小于所述公平共享分派速率來計算保證共享帶寬速率。
14.根據權利要求10所述的設備,其中,所述概率公平性電路被配置為基于如下步驟丟棄相應數據分組 生成針對相應數據分組的均勻隨機數;并且 判定所述均勻隨機數超過計算的所述概率的歸一化值。
15.根據權利要求10所述的設備,其中,所述概率公平性電路被配置為基于如下步驟傳送相應數據分組 生成針對相應數據分組的均勻隨機數;并且 判定所述均勻隨機數不超過計算的所述概率的歸一化值。
16.根據權利要求10所述的設備,其中,所述概率公平性電路被配置為將計算的所述概率計算為值I與相應保證共享帶寬速率除以相應數據分組到達速率的值中的小者。
17.根據權利要求10所述的設備,其中,所述濾除器電路被配置為 針對聚合的傳送數據分組中的一個,判斷相對該個聚合的傳送數據分組的相應大小,是否有足夠數目的令牌可用,所述令牌的數目基于與所述帶寬容量相關的令牌刷新率;并且如果有足夠數目的令牌可用,則傳送該個聚合的傳送數據分組,如果沒有足夠數目的令牌可用,則丟棄該個聚合的傳送數據分組,基于此,該個聚合的傳送數據分組被處理。
18.根據權利要求10所述的設備,其中,所述設備被實現為專用集成電路(ASIC)。
19.一種設備,包括 用于基于如下步驟選擇性地傳送或丟棄數據分組的裝置 計算針對供應去往指定目的地的數據分組的多個數據源中的每個數據源的相應數據分組到達速率,所述指定目的地在某一機器內并且所述指定目的地具有一定帶寬容量;基于根據相應數據分組到達速率分配所述帶寬容量中的相應選擇部分來計算針對每個數據源的保證共享帶寬速率; 根據計算的相應數據分組到達速率不超過相應保證共享帶寬速率的概率,選擇性地將來自每個數據源的相應數據分組作為傳送數據分組而傳送或者丟棄相應數據分組;并且所述設備還包括用于根據所述指定目的地的帶寬容量,對聚合的傳送數據分組向所述指定目的地的供應進行選擇性地濾除的裝置,所述聚合的傳送數據分組是僅從數據源所供應的傳送數據分組中聚合得到的。
20.一種編碼在一個或多個有形介質中供執行的邏輯,該邏輯在被執行可操作以 計算針對供應去往指定目的地的數據分組的多個數據源中的每個數據源的相應數據分組到達速率,所述指定目的地在某一機器內并且所述指定目的地具有一定帶寬容量;基于根據相應數據分組到達速率分配所述帶寬容量中的相應選擇部分來計算針對每個數據源的保證共享帶寬速率; 根據計算的相應數據分組到達速率不超過相應保證共享帶寬速率的概率,選擇性地將來自每個數據源的相應數據分組作為傳送數據分組而傳送或者丟棄相應數據分組;并且根據所述指定目的地的帶寬容量,對聚合的傳送數據分組向所述指定目的地的供應進行選擇性地濾除,所述聚合的傳送數據分組是僅從數據源所供應的傳送數據分組中聚合得到的。
全文摘要
在一個實施例中,一種方法包括計算針對供應去往指定目的地的數據分組的多個數據源中的每個數據源的相應數據分組到達速率,指定目的地在某一機器內并且指定目的地具有一定帶寬容量;基于根據相應數據分組到達速率分配所述帶寬容量中相應選擇部分來計算針對每個數據源的保證共享帶寬速率;根據計算的相應數據分組到達速率不超過相應保證共享帶寬速率的概率,選擇性地將來自每個數據源的相應數據分組作為傳送數據分組而傳送或者丟棄相應數據分組;并且根據指定目的地的帶寬容量,對聚合的傳送數據分組向指定目的地的供應進行選擇性地濾除,所述聚合的傳送數據分組是僅從數據源所供應的傳送數據分組中聚合得到的。
文檔編號H04L12/56GK102668471SQ201080058458
公開日2012年9月12日 申請日期2010年10月18日 優先權日2009年10月23日
發明者塞米爾·蒙謝特, 維亞·考卡尼, 董軒明 申請人:思科技術公司