用于網絡交換機中的靈活和高效分析的方法和裝置的制造方法
【技術領域】
[0001] 本發(fā)明涉及高速網絡交換機中的通信量分析。更具體地,本發(fā)明涉及用于網絡交 換機中的靈活和高效分析的方法和裝置,其中分析包括計數、速率監(jiān)測和流采樣。
【背景技術】
[0002] 軟件定義的網絡(SDN)已經出現,并且開放流(openflow)是突出代表之一。進 入分組經過系列表搜索和匹配動作以及分析。網絡交換機中的良好抽象化至關重要,因為 它允許高效使用有限硬件資源、應對可變要求以及簡化下一更高級中的編程。
[0003] 計數器、兩速率三色速率監(jiān)視器(監(jiān)管)和流采樣存在于現有技術的網絡交換機 中?,F有技術的網絡交換機使用專用存儲器用于這些目的中的每個目的。具體而言,這些 計數器、速率監(jiān)視器和采樣器從內部流水線的某些固定級可訪問,因為內部流水線的每個 處理單元被預定義以執(zhí)行指定的任務。計數器被用來對在各種條件中經過交換機的分組數 目或者通信量字節(jié)計數。監(jiān)管(Policing)將經過交換機的分組分類成三個不同顏色,即綠 色、黃色或者紅色,這些顏色中的每個顏色可以與不同的服務質量關聯。采樣(Sampling) 將高速通信流量采樣成更低速的流并且向系統CPU發(fā)送用于附加處理或者分析。因此,現 有技術的網絡交換機缺乏用以執(zhí)行計數、通信量速率監(jiān)測和流采樣的靈活性。
【發(fā)明內容】
[0004] 本發(fā)明的實施例涉及一種集中式網絡分析設備,該集中式網絡分析設備高效地使 用片上存儲器以靈活地執(zhí)行計數、通信量速率監(jiān)測和流采樣。該設備包括由所有核和每個 核的分組處理級共享的存儲器池。計數、監(jiān)測以及采樣都通過軟件來定義從而允許設備中 的更大靈活性和高效分析。在一些實施例中,該設備是網絡交換機。
[0005] 在一個方面中,提供一種網絡交換機。網絡交換機包括至少一個核,該至少一個核 包括多個流水線級。網絡交換機也包括接口模塊,該接口模塊包括用于與至少一個核的多 個流水線級中的每個流水線級通信以從每個流水線級接收請求的統一請求和響應接口。網 絡交換機也包括公共存儲器池,該公共存儲器池與接口模塊耦合并且用于并行處理請求。
[0006] 在一些實施例中,網絡交換機也包括用于執(zhí)行多個并行網絡分析的分析模塊。分 析模塊包括多個客戶端接口、互連和多個分析組塊。多個客戶端接口和多個分析組塊通過 該互連來互連。
[0007] 在一些實施例中,多個客戶端接口中的每個客戶端接口可編程為映射到多個分析 組塊中的一個或者多個分析組塊。
[0008] 在一些實施例中,來自公共存儲器池的存儲器被分成多個分析組塊。
[0009] 在一些實施例中,多個分析組塊是同構的。
[0010] 在一些實施例中,多個分析組塊中的每個分析組塊包括片上存儲器,諸如272位 寬和512條目深的片上存儲器。
[0011] 在一些實施例中,多個客戶端接口被相似地配置。
[0012] 在一些實施例中,多個客戶端接口中的每個客戶端接口包括用于接收請求的請求 接口和用于發(fā)送響應的響應接口。請求接口對每個請求進行分類并且確定目標分析組塊和 目標分析組塊內的目標條目地址,請求應當將該目標條目地址作為目標。目標分析組塊是 多個分析組塊中的一個分析組塊。請求被發(fā)送到互連以被路由到目標分析組塊用于處理。
[0013] 在一些實施例中,多個客戶端接口中的每個客戶端接口被配置為以下四種模式中 的一種模式:計數器、監(jiān)管、利用記賬計數器進行監(jiān)管以及采樣。
[0014] 在一些實施例中,計數模式、監(jiān)管模式以及采樣模式各自以組塊粒度被分配,并且 其中利用記賬計數器進行監(jiān)管模式以分析組塊對的粒度被分配。例如,分析組塊2*i用于 監(jiān)管而緊接著的下一分析組塊2*i+l用于對應的記賬計數器。
[0015] 在一些實施例中,當分析組塊處于計數模式時,分析組塊被配置為處于四種配置 中的一種配置,其中修改操作對于配置中的每種配置是不同的。修改操作包括針對每個進 入請求將events字段的值遞增一、將sum字段的值遞增進入請求的值以及將sumOfSquare 字段的值遞增進入請求的值的平方。網絡活動的標準偏差通過從sumOfSquare的平均值減 去sum的平均值的平方來計算。沒有結果響應從分析組塊輸出,其中計數器值被存儲在分 析組塊的存儲器中。在一些實施例中,第五配置僅用于利用記賬計數器進行監(jiān)管模式。
[0016] 在一些實施例中,當分析組塊處于監(jiān)管模式時,分析組塊執(zhí)行兩速率三色速率監(jiān) 測功能。分析組塊的每行具有一個監(jiān)管器,其中監(jiān)管器具有配置和內部狀態(tài)。監(jiān)管器向始 發(fā)分組的客戶端接口之一返回分組的顏色。在一些實施例中,當始發(fā)客戶端接口被配置為 利用記賬計數器進行監(jiān)管模式時,分析組塊向它緊接著的下一分析組塊發(fā)送計數器請求以 針對每個顏色的分組計算字節(jié)計數。
[0017] 在一些實施例中,當分析組塊處于采樣模式時,分析組塊支持N/M隨機采樣,其中N個連續(xù)事件以每Μ個事件的間隔被采樣。向用于每個請求的始發(fā)客戶端接口返回響應。
[0018] 在另一方面中,提供一種分析組塊。分析組塊包括至少三個處理單元和存儲器旁 路豐吳塊。
[0019] 至少三個處理單元包括計數器處理單元、監(jiān)管處理單元和采樣處理單元。監(jiān)管處 理單元能夠將對于顏色的字節(jié)計數的請求推送到另一分析組塊,其中另一分析組塊緊接著 靠近于該分析組塊。
[0020] 存儲器旁路模塊隱藏存儲器讀取延遲。具體而言,存儲器旁路模塊的輸出數據被 導向計數器處理單元、監(jiān)管處理單元或者采樣處理單元。
[0021] 在一些實施例中,當分析組塊處于計數器模式時,計數器處理單元被配置為計算 針對網絡活動統計分析的平方和、求和以及事件計數。在一些實施例中,計數器處理單元被 配置為計算網絡活動的標準偏差。
[0022] 在又一方面中,提供一種網絡交換機的方法。該方法包括將共享存儲器池劃分成 多個同構分析組塊,以及可編程地將多個客戶端接口中的每個客戶端接口配置為四種模式 中的一種模式:計數器、監(jiān)管、利用記賬計數器進行監(jiān)管或者采樣。該方法也包括可編程地 將多個客戶端接口中的每個客戶端接口映射到多個同構分析組塊的子集;以及可編程地指 派多個同構分析組塊中的每個同構分析組塊為三種模式中的一種模式:計數器、監(jiān)管或者 采樣。該方法也包括并行處理在多個客戶端接口處接收的多個請求。
[0023] 在一些實施例中,并行處理多個請求步驟包括,對于多個請求中的每個請求,確定 目標分析組塊和目標分析組塊內的目標條目地址。
[0024] 并行處理多個請求步驟也包括,當目標分析組塊處于計數器模式時,目標分析組 塊執(zhí)行至少一個運算,諸如平方和、求和或者事件計數。也可以計算網絡活動的標準偏差。 基于目標條目地址來確定在目標分析組塊內的計數器條目,并且也確定了在目標分析組塊 內的存儲器行以存儲計數器值。
[0025] 并行處理多個請求步驟也包括,當目標分析組塊處于監(jiān)管模式時,目標分析組塊 執(zhí)行兩速率三色速率監(jiān)測功能。目標分析組塊向分組的始發(fā)客戶端接口返回分組的顏色。 如果被配置為利用記賬