具有入口控制的業(yè)務(wù)量管理的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及業(yè)務(wù)量管理,并且更具體地,涉及具有入口控制的業(yè)務(wù)量管理。
【背景技術(shù)】
[0002] 一般而言,服務(wù)提供商網(wǎng)絡(luò)被配置為提供到成千上萬用戶的網(wǎng)絡(luò)連接。用戶可包 括個(gè)人和/或企業(yè),其通過各自的網(wǎng)絡(luò)節(jié)點(diǎn)耦合到提供商網(wǎng)絡(luò)。每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的用戶側(cè)都 可包括一個(gè)或多個(gè)用戶設(shè)備(例如計(jì)算設(shè)備、電話、視聽設(shè)備等),其可以經(jīng)由用戶網(wǎng)絡(luò)互 連。
[0003] 用戶設(shè)備被配置為發(fā)送和/或接收網(wǎng)絡(luò)業(yè)務(wù)量,其包括聲音、視頻和/或數(shù)據(jù)。 可以為各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)定義各個(gè)用戶和提供商網(wǎng)絡(luò)之間的業(yè)務(wù)量,例如通過服務(wù)等級(jí)協(xié)議 (ServiceLevelAgreement,SLA)。例如,SLA可包括數(shù)據(jù)速率和/或流量約束和/或按用 戶和/或業(yè)務(wù)量類型(即業(yè)務(wù)量類別)中定義的承諾。
[0004] 提供商網(wǎng)絡(luò)包括多個(gè)網(wǎng)絡(luò)設(shè)備,例如路由器,其被配置為管理通過提供商網(wǎng)絡(luò)的 網(wǎng)絡(luò)業(yè)務(wù)量的流動(dòng)。每一個(gè)網(wǎng)絡(luò)設(shè)備被配置為接收和/或發(fā)送多個(gè)業(yè)務(wù)量流。因此,網(wǎng)絡(luò) 設(shè)備物理資源,例如端口,由多個(gè)業(yè)務(wù)量流共享。
[0005] 業(yè)務(wù)量管理被配置為管理端口被業(yè)務(wù)量流的共享。業(yè)務(wù)量管理被配置為至少部分 地基于與業(yè)務(wù)量流相關(guān)聯(lián)的業(yè)務(wù)量類別,選擇,即,調(diào)度用于與調(diào)度決定一起傳輸?shù)姆纸M。 傳統(tǒng)的業(yè)務(wù)量管理通常以為分組處理而優(yōu)化的專用硬件來實(shí)現(xiàn)。專用硬件不可由服務(wù)提供 商編程,和/或如果一起使用來自多個(gè)提供商的網(wǎng)絡(luò)設(shè)備,則可能存在互操作性的挑戰(zhàn)。
[0006] 業(yè)務(wù)量計(jì)量被配置為限制接收的分組速率。傳統(tǒng)的業(yè)務(wù)量計(jì)量通常以專用硬件實(shí) 現(xiàn)。網(wǎng)絡(luò)設(shè)備的計(jì)量精度通常利用這樣的硬件實(shí)現(xiàn),針對(duì)相對(duì)較小的帶寬流或相對(duì)高的帶 寬(例如線路速率或接近線路速率)流,但不能同時(shí)針對(duì)上述兩者。
[0007] 附圖簡沐
[0008] 隨著下面的詳細(xì)描述的進(jìn)行,并參考所述附圖,所要求保護(hù)的主題的實(shí)施例的特 征和優(yōu)點(diǎn)將變得明顯,其中相同的數(shù)字表示相同的部件,并且其中:
[0009] 圖1示出了與本發(fā)明的各種實(shí)施例相一致的示例性網(wǎng)絡(luò)系統(tǒng);
[0010] 圖2示出了與本發(fā)明的各種實(shí)施例相一致的示例性網(wǎng)絡(luò)設(shè)備;
[0011] 圖3A示出了用于一個(gè)分組處理流水線的分組處理流水線功能塊的示例性序列;
[0012] 圖3B示出了將圖3A的分組處理流水線的功能塊映射到多個(gè)線程的一個(gè)示例;
[0013] 圖3C示出了將多個(gè)分組處理流水線的功能塊映射到多個(gè)處理器核的示例;
[0014] 圖3D示出了將多個(gè)分組處理流水線的功能塊映射到多個(gè)處理器核的另一個(gè)示 例;
[0015] 圖4示出了與本發(fā)明的一個(gè)實(shí)施例相一致的示例性調(diào)度器模塊;
[0016] 圖5示出了與本發(fā)明的各種實(shí)施例相一致的示例性調(diào)度層次結(jié)構(gòu);
[0017] 圖6示出了與本發(fā)明的各種實(shí)施例相一致的示例性分層調(diào)度器數(shù)據(jù)結(jié)構(gòu);
[0018] 圖7示出示出了與本發(fā)明的多個(gè)實(shí)施例相一致的被配置為排列多個(gè)分組的示例 性操作的流程圖;
[0019] 圖8示出了排列操作的示例性流水線化的實(shí)現(xiàn);
[0020] 圖9A和9B示出了與本發(fā)明的一個(gè)實(shí)施例相一致的被配置為排列多個(gè)分組的示例 性操作的流程圖;
[0021] 圖10示出了與本發(fā)明的一個(gè)實(shí)施例相一致的示例性出列操作;
[0022] 圖11是與本發(fā)明相一致的示例性管道預(yù)取狀態(tài)機(jī);
[0023] 圖12示出了調(diào)度器和網(wǎng)絡(luò)接口端口的相對(duì)定時(shí)和同步的示例;
[0024] 圖13示出了與本發(fā)明的一個(gè)實(shí)施例相一致的被配置為初始化令牌桶的示例性操 作的流程圖;
[0025] 圖14示出了與本發(fā)明的一個(gè)實(shí)施例相一致的配置為更新令牌桶的示例性操作的 流程圖;
[0026] 圖15示出了與本發(fā)明的一個(gè)實(shí)施例相一致的配置為消耗令牌的示例性操作的流 程圖;以及
[0027] 圖16A和16B包括與本發(fā)明的各種實(shí)施例相一致的被配置為示出了示例性的分層 調(diào)度器的性能的兩個(gè)圖。
[0028] 雖然下面的詳細(xì)描述將參考所給示例性的實(shí)施例進(jìn)行,但對(duì)于本領(lǐng)域技術(shù)人員來 說,各種替換、修改和變化將是顯而易見的。
[0029] 詳細(xì)說明
[0030] 一般而言,本發(fā)明涉及具有入口控制的業(yè)務(wù)量管理。與本發(fā)明一致的系統(tǒng)和方法 被配置為利用可編程網(wǎng)絡(luò)設(shè)備,提供可編程的出口業(yè)務(wù)量管理,可編程網(wǎng)絡(luò)設(shè)備具有大約 每秒數(shù)個(gè)、數(shù)十個(gè)或更多千兆比特的線路速率。所述系統(tǒng)和方法被配置為根據(jù)由例如服務(wù) 等級(jí)協(xié)議(SLA)中指定的策略,優(yōu)先傳輸與多個(gè)用戶和多個(gè)業(yè)務(wù)量類別相關(guān)的分組。所述 系統(tǒng)和方法進(jìn)一步被配置為提供對(duì)數(shù)千個(gè)(例如64k,其中k是1024)分組隊(duì)列(以及與 每個(gè)隊(duì)列相關(guān)聯(lián)的分組流)以及具有多個(gè)調(diào)度級(jí)別(例如五個(gè))的分層調(diào)度的支持。如本 文所述,所述系統(tǒng)和方法被配置為對(duì)于排列操作,對(duì)多個(gè)分組并行地操作,以及對(duì)于出列操 作,對(duì)多個(gè)管道并行地操作,因此"隱藏"預(yù)取等待時(shí)間。在一些實(shí)施例中,所述系統(tǒng)和方法 可以包括擁塞檢測機(jī)制(例如尾部丟棄、隨機(jī)早期檢測)。如本文所述,所述系統(tǒng)和方法進(jìn) 一步被配置為對(duì)于諸如業(yè)務(wù)量整形、嚴(yán)格優(yōu)先級(jí)和加權(quán)輪叫之類的功能,提供相對(duì)高級(jí)別 的精度。
[0031] 同樣地,與本發(fā)明一致的入口控制被配置為在可編程網(wǎng)絡(luò)設(shè)備上實(shí)現(xiàn),并進(jìn)一 步被配置為對(duì)于相對(duì)低的帶寬(例如大約Mbps(每秒兆比特))和相對(duì)高的(例如大約 Gbps(每秒千兆比特))帶寬的分組流,提供相對(duì)高的精確度(例如大約1% )。
[0032] 圖1示出了與本發(fā)明的各種實(shí)施例相一致的示例性網(wǎng)絡(luò)系統(tǒng)100。系統(tǒng)100通常 包括提供商網(wǎng)絡(luò)102,通過各自的網(wǎng)絡(luò)節(jié)點(diǎn)105a,...,105n耦合到提供商網(wǎng)絡(luò)102的多個(gè) 客戶端系統(tǒng)l〇4a,...,104n,以及一個(gè)或多個(gè)其他網(wǎng)絡(luò)106。提供商網(wǎng)絡(luò)102被配置為向 所述多個(gè)用戶,即客戶(例如,訂戶、企業(yè))提供網(wǎng)絡(luò)服務(wù)。提供商網(wǎng)絡(luò)102包括多個(gè)網(wǎng)絡(luò) 設(shè)備108a,. . .,108n。每一個(gè)網(wǎng)絡(luò)設(shè)備108a,. . .,108n被耦合到一個(gè)或多個(gè)其他網(wǎng)絡(luò)設(shè)備 108a,...,108n,并且至少一個(gè)網(wǎng)絡(luò)設(shè)備被耦合到其它網(wǎng)絡(luò)106。如本文所用,網(wǎng)絡(luò)設(shè)備包 括但不限于路由器、交換機(jī)和/或集線器。
[0033] 提供商網(wǎng)絡(luò)102被配置為提供到每個(gè)客戶端系統(tǒng)104a,...,104n的網(wǎng)絡(luò)連接和 網(wǎng)絡(luò)服務(wù)。例如,例如客戶端系統(tǒng)l〇4a的客戶端系統(tǒng)可以通過提供商網(wǎng)絡(luò)102耦合到其它 網(wǎng)絡(luò)106和/或另一個(gè)客戶端系統(tǒng)104b,...,104n。每一個(gè)客戶端系統(tǒng)可以包括一個(gè)或多 個(gè)計(jì)算機(jī)節(jié)點(diǎn)元件(例如主機(jī)服務(wù)器系統(tǒng)、臺(tái)式計(jì)算機(jī)、膝上型計(jì)算機(jī)、平板計(jì)算機(jī)等)、交 換機(jī)、路由器、集線器、網(wǎng)絡(luò)存儲(chǔ)設(shè)備、網(wǎng)絡(luò)附接的設(shè)備、非易失性存儲(chǔ)器(NVM)存儲(chǔ)設(shè)備、 基于云的服務(wù)器和/或存儲(chǔ)系統(tǒng)、刀片服務(wù)器、視聽設(shè)備(例如電視機(jī)、收音機(jī)接收器等)、 智能手機(jī),功能手機(jī)等。每個(gè)客戶端系統(tǒng)104a,...,104n被配置為通過各自的網(wǎng)絡(luò)節(jié)點(diǎn) 105a,...,105n將來往于提供商網(wǎng)絡(luò)102傳送包含數(shù)據(jù)的分組。所述分組包括數(shù)據(jù),其中 可能包括語音數(shù)據(jù)、視頻數(shù)據(jù)和/或其它數(shù)據(jù),例如文件傳送數(shù)據(jù)。
[0034] 提供商網(wǎng)絡(luò)102 (包括網(wǎng)絡(luò)設(shè)備108a,. . .,108n)、客戶端系統(tǒng)104a,. . .,104n和/ 或其他網(wǎng)絡(luò)106也可以使用交換式結(jié)構(gòu)的通信協(xié)議,例如以太網(wǎng)通信協(xié)議、Infiniband(無 限帶寬)通信協(xié)議等,進(jìn)行相互通信。以太網(wǎng)通信協(xié)議能夠使用傳輸控制協(xié)議/因特網(wǎng)協(xié) 議(TCP/IP)提供通信。以太網(wǎng)通信協(xié)議符合或兼容由電氣和電子工程師協(xié)會(huì)(IEEE)發(fā)布 的命名為"IEEE802. 3標(biāo)準(zhǔn)"的以太網(wǎng)標(biāo)準(zhǔn)(發(fā)布于2002年3月)和/或該標(biāo)準(zhǔn)的更高版 本,例如,發(fā)布于2012年的用于以太網(wǎng)的IEEE802. 3標(biāo)準(zhǔn)。所述InfiniBand協(xié)議符合或 兼容由InfiniBand貿(mào)易協(xié)會(huì)(IBTA)發(fā)布的InfiniBand?規(guī)范,發(fā)表于2001年6月的命名 為"InfiniBand?體系結(jié)構(gòu)規(guī)范"的第1卷、版本1. 2. 1,和/或該規(guī)范的更高版本,例如,發(fā) 布于2008年1月的InfiniBand?體系結(jié)構(gòu)規(guī)范,第1卷(一般規(guī)范),版本1. 2. 1,以及發(fā) 布于2012年11月的第2卷(物理規(guī)范),版本Release1.3。當(dāng)然,在其他實(shí)施例中,交換 結(jié)構(gòu)通信協(xié)議可以包括自定義的和/或?qū)S械慕粨Q結(jié)構(gòu)通信協(xié)議。
[0035] 網(wǎng)絡(luò)102和/或其他網(wǎng)絡(luò)106可包括任何分組交換網(wǎng)絡(luò),諸如,例如在IEEE802.3 標(biāo)準(zhǔn)中闡述的以太網(wǎng)網(wǎng)絡(luò)和/或例如IEEE 802. 11標(biāo)準(zhǔn)中闡述的無線局域網(wǎng)絡(luò)。無 線協(xié)議可以符合或兼容無線標(biāo)準(zhǔn),所述無線標(biāo)準(zhǔn)由IEEE發(fā)表于2012年4月,命名為 "802. 11-2012-用于信息技術(shù)的IEEE標(biāo)準(zhǔn)-本地和城域網(wǎng)系統(tǒng)間的電信和信息交換-特定 要求第11部分:無線LAN媒體訪問控制(MAC)和物理層(PHY)規(guī)范",和/或該標(biāo)準(zhǔn)的更高 版本。
[0036] 圖2示出了與本發(fā)明的各種實(shí)施例相一致的示例性網(wǎng)絡(luò)設(shè)備200。網(wǎng)絡(luò)設(shè)備200 是圖1中的網(wǎng)絡(luò)設(shè)備108a,...,108n的一個(gè)例子。網(wǎng)絡(luò)設(shè)備200通常包括處理器210、橋 接芯片組212、系統(tǒng)存儲(chǔ)器214和網(wǎng)絡(luò)接口 216。處理器210被配置為執(zhí)行與網(wǎng)絡(luò)設(shè)備200 相關(guān)聯(lián)的操作。處理器210可以包括一個(gè)或多個(gè)處理單元,例如核220a,...,220n、與各個(gè) 核220a,. . .,220n相關(guān)聯(lián)的各自的緩存存儲(chǔ)器222a,. . .,222n以及處理器緩存存儲(chǔ)器224。 橋接芯片組212被配置為耦合處理器210、系統(tǒng)存儲(chǔ)器和/或網(wǎng)絡(luò)接口 216。
[0037] 網(wǎng)絡(luò)接口 216被配置為將網(wǎng)絡(luò)設(shè)備200耦合到一個(gè)或多個(gè)其他網(wǎng)絡(luò)設(shè)備 108a,...,108n和/或其他網(wǎng)絡(luò)106。網(wǎng)絡(luò)接口 216可包括處理器228、主機(jī)接口 230、媒體 接入控制(MAC)電路232、物理層電路層(PHY) 233和網(wǎng)絡(luò)接口存儲(chǔ)器234。處理器228被 配置為執(zhí)行與網(wǎng)絡(luò)接口 216相關(guān)聯(lián)的操作。主機(jī)接口 230被配置為將網(wǎng)絡(luò)接口 216耦合到 橋接芯片組212。
[0038] MAC232和PHY233被配置為將網(wǎng)絡(luò)設(shè)備200經(jīng)由物理介質(zhì)耦合到一個(gè)或多個(gè)其 他網(wǎng)絡(luò)設(shè)備108a,...,108n和/或其他網(wǎng)絡(luò)106。MAC232被配置為對(duì)于發(fā)送和接收功能 執(zhí)行媒體訪問管理。如本文所述,PHY233包括一個(gè)或多個(gè)端口 235a,...,235n,每個(gè)端口 235a,...,235n都能夠傳輸多個(gè)業(yè)務(wù)量流。每個(gè)端口,例如端口 235a,都包括發(fā)送電路236, 被配置為將數(shù)據(jù)和/或消息分組和/或幀發(fā)送到一個(gè)或多個(gè)其他網(wǎng)絡(luò)設(shè)備l〇8a,...,108n 和/或其他網(wǎng)絡(luò)106。每一個(gè)端口,例如端口 235a,包括接收電路237,被配置為從一個(gè)或多 個(gè)其他網(wǎng)絡(luò)設(shè)備108a,...,108n和/或其他網(wǎng)絡(luò)106接收數(shù)據(jù)和/或消息分組和/或幀。
[0039] 如本文所述,系統(tǒng)存儲(chǔ)器214可以被配置為存儲(chǔ)操作系統(tǒng)OS240、網(wǎng)絡(luò)接口控制 器"NIC"驅(qū)動(dòng)程序242、多個(gè)應(yīng)用程序編程接口API243、多個(gè)入口模塊244、多個(gè)出口模 塊246、多個(gè)數(shù)據(jù)結(jié)構(gòu)248以及被配置為在分組處理之后和傳輸之前存儲(chǔ)分組的多個(gè)隊(duì)列 250〇
[0040] 系統(tǒng)存儲(chǔ)器214可被配置為存儲(chǔ)虛擬機(jī)監(jiān)視器(VMM) 252,然后可包括多個(gè)虛擬機(jī) (未示出)。OS240可以被配置為利用被配置為用于有效和相對(duì)快速的分組處理的軟件框 架,。例如,所述軟件框架可以符合或兼容Intel?數(shù)據(jù)平面開發(fā)套件(DTOK),所述DPDK被配 置為優(yōu)化在Intel??體系結(jié)構(gòu)處理器上的分組處理。
[0041] 入口模塊244可包括多個(gè)初始處理模塊245、監(jiān)管器模塊247和負(fù)載平衡器249。 出口模塊246可以包括調(diào)度器模塊253(例如分層調(diào)度器)和分組輸入/輸出(I/O)模塊 255。如本文所述,在一些實(shí)施例中,出口模塊246可以包括擁塞管理模塊257。API243可 以被配置為提供應(yīng)用程序編程接口,例如,用于調(diào)度器模塊253的,并且可以包括調(diào)度器配 置、排列和/或出列功能。API243可以被,例如服務(wù)提供商用于實(shí)現(xiàn)用于每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)和 相關(guān)聯(lián)的用戶的與SLA相關(guān)的策略。
[0042] 網(wǎng)絡(luò)設(shè)備200被配置為對(duì)于提供商網(wǎng)絡(luò)102所承載的網(wǎng)絡(luò)業(yè)務(wù)量提供業(yè)務(wù)量管理 功能。網(wǎng)絡(luò)設(shè)備200可以通過例如端口235a的Rx 237接收多個(gè)分組流中的多個(gè)分組,處 理所述分組,并通過例如端口235a的Tx 236發(fā)送所述處理后的分組。如本文所述,初始處 理模塊245可以包括分組I/O接收模塊272和流分類模塊274,其被配置為處理接收到的分 組,以用于例如,識(shí)別相關(guān)聯(lián)的業(yè)務(wù)量流、識(shí)別源和/或目的地、和/或識(shí)別業(yè)務(wù)量類別。如 本文所述,在一些實(shí)施例中,監(jiān)管器模塊247可以被配置為限制可被網(wǎng)絡(luò)設(shè)備200進(jìn)一步處 理的分組的數(shù)量。負(fù)載均衡器249被配置為跨多個(gè)處理器核和/或跨多個(gè)線程分配分組處 理活動(dòng)。
[0043] 出口模塊246被配置為管理來自網(wǎng)絡(luò)設(shè)備200的處理后的分組的傳輸。調(diào)度器模 塊253被配置為排列準(zhǔn)備傳輸?shù)奶幚砗蟮姆纸M,選擇用于傳輸?shù)南乱环纸M,以及出列所選 擇的下一分組。PKt I/O Tx模塊255被配置為通知例如網(wǎng)絡(luò)接口216,所述出列后的分組 準(zhǔn)備好傳輸。擁塞管理模塊257被配置為基于策略,在在某一時(shí)間段內(nèi)接收到比可以發(fā)送 的分組更多的分組的情況下,有選擇性地丟棄分組。
[0044] 入口模塊244和出口模塊246被配置為利用處理器210體系結(jié)構(gòu)。入口、出口和 其它分組處理功能可以被分配在處理器核220a,...,220n和/或多個(gè)線程之間。因此,入 口、出口和/或其它分組處理功能可以被并行地執(zhí)行,并且可以被流水線化。流水線被配置 為提高分組處理效率并且可便于在一段相對(duì)短的時(shí)間內(nèi)處理相對(duì)大量的分組流(例如數(shù) 萬或更多)。
[0045] 圖3A示出了一個(gè)分組處理流水線300的分組處理流水線的功能塊的示例性序列。 網(wǎng)絡(luò)設(shè)備200可以被配置為實(shí)現(xiàn)多個(gè)分組處理流水線。分組處理流水線300的功能塊可以 由處理器210的一個(gè)或多個(gè)核220a,. ..,220n和/或網(wǎng)絡(luò)接口 216來執(zhí)行。分組處理流水 線300包括分組輸入/輸出接收模塊"PktI/ORx" 302、分組解析器模塊"Pkt解析304和 流分類器模塊"Classif"306。例如,PktI/ORx302、Pkt解析 304 和Classif306 可以 被包含在圖2中的初始處理模塊245中。分組處理流水線300還包括業(yè)務(wù)量計(jì)量和/或策 略模塊"監(jiān)管器" 308、負(fù)載均衡模塊"負(fù)載均衡器" 310、工作模塊"工作器" 312、擁塞管理模 塊"丟棄器"314、分層調(diào)度器模塊"HierSched"316和分組輸入/輸出發(fā)送模塊"Pkt1/ 0TX"318。例如,監(jiān)管器308可對(duì)應(yīng)于監(jiān)管器247,負(fù)載均衡器310可以對(duì)應(yīng)于負(fù)載均衡器 249,工作器312可對(duì)應(yīng)于工作模塊254,丟棄器314可對(duì)應(yīng)于擁塞管理模塊257,Hiersched 316可對(duì)應(yīng)于調(diào)度器模塊253,并且PktI/OTX318可對(duì)應(yīng)于PktI/OTX255。
[0046] 響應(yīng)于來自PktI/OTX318的通知,輸入分組可以由PKtI/ORx302從Rx237 接收,并且處理后的分組可以由Tx236發(fā)送。通常,每個(gè)分組包括與路由(例如尋址)和 控制相關(guān)聯(lián)的分組報(bào)頭和包含數(shù)據(jù)的分組有效負(fù)載。例如,分組可以被網(wǎng)絡(luò)接口 216的端 口 235a的Rx237接收,并且可以由NIC驅(qū)動(dòng)程序242進(jìn)行初始處理。如本文所述,例如, NIC驅(qū)動(dòng)程序242可以被配置為輪詢模式驅(qū)動(dòng)程序。接收到的分組(即輸入分組)隨后可 被Pkt解析304進(jìn)行解析。Pkt解析304被配置為識(shí)別每一個(gè)輸入分組的協(xié)議棧。Pkt解 析304還被配置為檢查輸入分組的分組報(bào)頭的完整性。然后輸入分組可被Classif306映 射為業(yè)務(wù)量流。例如,映射可包括精確匹配查找表,該表使用了可配置的散列函數(shù)(例如 jhash、CRC(循環(huán)冗余校驗(yàn))等)以及桶邏輯來管理沖突。每個(gè)業(yè)務(wù)量流都對(duì)應(yīng)于源和目的 地之間的一種分組傳送類型。源和/或目的地可包括,例如客戶端系統(tǒng)104a,...,104n(和 /或客戶端系統(tǒng)內(nèi)的客戶端設(shè)備)、提供商網(wǎng)絡(luò)102、其他網(wǎng)絡(luò)106和/或耦合到其它網(wǎng)絡(luò) 106的其他客戶端系統(tǒng)(未示出)。分組類型可對(duì)應(yīng)于有效負(fù)載的類型,并且還可以對(duì)應(yīng)于 業(yè)務(wù)量類別,所述負(fù)載是,例如,分組攜帶的語音、視頻、數(shù)據(jù)。
[0047] 如本文所述,監(jiān)管器308被配置為執(zhí)行業(yè)務(wù)量計(jì)量和/或監(jiān)管功能。如本文所述, 業(yè)務(wù)量計(jì)量和/或監(jiān)管被配置為限制數(shù)據(jù)速率。作為業(yè)務(wù)量計(jì)量和/或監(jiān)管的結(jié)果,一個(gè) 或多個(gè)輸入分組可能會(huì)被丟棄。負(fù)載均衡器310被配置為將輸入分組(即在計(jì)量/監(jiān)管中 留下來的)分配到例如工作器312的多個(gè)工作器模塊,并向每個(gè)工作器模塊提供均勻的負(fù) 荷。每個(gè)工作器模塊,例如,工作器312,都可對(duì)應(yīng)于服務(wù)提供商特定的應(yīng)用程序工作負(fù)載線 程(例如互聯(lián)網(wǎng)協(xié)議(IP)堆棧等)。負(fù)載均衡器310可以進(jìn)一步被配置為保持業(yè)務(wù)量流與 工作器模塊的緊密度以及每個(gè)流內(nèi)的分組的順序。保持業(yè)務(wù)量流與工作器模塊的緊密度可 以被配置為通過當(dāng)處理分組流時(shí),利用數(shù)據(jù)局部性來支持高效的分組處理。
[0048] 如本文所述,丟棄器314被配置為對(duì)于分層調(diào)度器316執(zhí)行擁塞管理。擁塞管理 可包括每當(dāng)目標(biāo)調(diào)度器隊(duì)列已滿時(shí),都丟棄分組,直到大量分組已被從目標(biāo)出口隊(duì)列發(fā)送、 隨機(jī)早期檢測(RED)和/或加權(quán)RED(WRED)。加權(quán)RED被配置為基于當(dāng)前的調(diào)度器隊(duì)列負(fù) 載水平和分組優(yōu)先權(quán)丟棄分組。因此,當(dāng)遇到擁塞時(shí),相對(duì)較低優(yōu)先級(jí)的分組可能會(huì)在相對(duì) 較高優(yōu)先級(jí)的分組之前被丟棄。
[0049] 如本文所述,分層調(diào)度器模塊316被配置為至少部分地基于一些標(biāo)準(zhǔn),調(diào)度(即選 擇)用于傳輸?shù)南乱环纸M。分層調(diào)度器316被配置為將分組排列在多個(gè)隊(duì)列中等待傳輸, 并且當(dāng)被選擇用于傳輸時(shí)出列分組。分層調(diào)度器模塊316可以被配置為實(shí)現(xiàn)業(yè)務(wù)量整形、 嚴(yán)格優(yōu)先級(jí)、上限執(zhí)行和/或加權(quán)輪叫。如本文所述,分層調(diào)度器模塊316被配置為管理成 千上萬的隊(duì)列。
[0050] 網(wǎng)絡(luò)設(shè)備200還可以包括多個(gè)基礎(chǔ)結(jié)構(gòu)模塊255,其被配置為支持分組處理流水 線300功能?;A(chǔ)結(jié)構(gòu)模塊255包括緩沖管理器模塊256,被配置為提供對(duì)全局緩沖池和按 線程私有緩沖緩存的支持;隊(duì)列管理模塊258,被配置為對(duì)分組處理流水線模塊之間的消 息傳遞提供支持;和/或省電電模塊2