03-數據緩衝區配置
本章節下載: 03-數據緩衝區配置 (243.88 KB)
數據緩衝區用來臨時存儲報文,以免報文丟失。如圖1-1所示,設備上的數據緩衝區分為接收緩衝區和發送緩衝區:
· 當網絡擁塞時,端口不能立即發送數據,為防止數據丟失,會將數據暫時存儲到設備的發送數據緩衝區;
· 當設備的CPU繁忙時,端口不能立即將收到的報文交給CPU處理,會將數據暫時存儲到設備的接收數據緩衝區。
發送數據緩衝區和接收數據緩衝區在緩存數據時,都會同時用到兩類資源:
· cell資源:用來存儲數據包的內容,端口會根據報文的實際大小占用相應大小的cell資源。比如一個cell資源是208字節,當發送的報文是128字節時,端口會給它分配一個cell資源,當發送的報文是300字節時,端口會給它分配兩個cell資源。
· packet資源:用來存儲報文的指針,指針指明報文在cell資源中的存放位置。設備每發送/接收一個數據包,無論該數據包的長度是多少,均占用1個packet資源。
當端口接收/發送報文時,既使用相當於報文長度的cell資源,同時也使用相當於報文數量的packet資源。
cell資源和packet資源又分別分為共享區域和固定區域。
· 固定區域是按隊列劃分的,每個隊列又按端口均分,如圖1-2所示。如果網絡擁塞,端口收到報文後,會根據一定的策略將報文分發到相應的隊列。如果該端口的該隊列緩衝區滿,則放到共享區域中的相應隊列;如果共享區域中該隊列滿,則將報文丟棄。在固定緩衝區中,係統會根據用戶的配置給隊列預留指定大小的空間,即便該隊列沒有報文存儲需求,其他隊列也不能搶占。給隊列預留的空間又是均分給每個端口的,即使某端口的某隊列沒有報文存儲需求,其他端口也不能搶占。
· 共享緩衝區隻按隊列劃分,不再按端口均分,如圖1-2所示。係統會根據用戶配置以及實際需要收發報文的數量決定每個隊列實際可占用的緩衝區的大小。如果某個隊列沒有報文存儲需求,則其他隊列會搶占該隊列的配額。對於某個隊列的緩衝區,所有端口收來的報文,先到先得,如果資源耗盡,則後到達的報文將被丟棄。
用戶可以使用以下兩種方式配置數據緩衝區:
· 通過Burst功能來自動分配緩衝區
· 手工配置數據緩衝區
需要注意的是,以上兩種數據緩衝區的配置方式不能同時使用,如果已經使用某一種方式進行了配置,則必須先取消該方式的配置之後,才能使用另外一種方式進行配置。否則,配置失敗。
配置了Burst功能後,設備將自動分配cell資源和packet資源。
在下列情況下,Burst功能可以提供更好的報文緩存功能和流量轉發性能:
· 廣播或者組播報文流量密集,瞬間突發大流量的網絡環境中;
· 報文從高速鏈路進入設備,由低速鏈路轉發出去;或者報文從相同速率的多個端口同時進入設備,由一個相同速率的端口轉發出去。
表1-1 通過Burst功能來自動分配緩衝區
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
開啟Burst功能 |
burst-mode enable |
缺省情況下,Burst功能處於關閉狀態 |
數據緩衝區的配置比較複雜,而且對設備的轉發功能有重要的影響,建議用戶不要輕易修改數據緩衝區的缺省參數。在需要較大的緩存空間時,建議使用Burst功能來自動分配緩衝區。
目前設備僅支持對cell緩衝區的分配進行設置。
設備上整個數據緩衝區的大小是固定的,用戶配置共享區域的大小後,其餘部分將自動成為固定區域。
表1-2 配置數據緩衝區中共享區域的大小
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置數據緩衝區中共享區域的大小 |
buffer egress [ slot slot-number ] cell total-shared ratio ratio |
缺省情況下,cell緩衝區中共享區域所占比例為97% |
缺省情況下,所有隊列均分共享區域,但用戶也可以調整指定隊列最多可使用的共享區域的大小,其它未配置的隊列最多可使用的共享區域的大小仍遵循缺省值。最終,各隊列最多可使用的共享區域的大小將由芯片根據buffer queue shared配置,以及實際需要收發報文的數量決定。
表1-3 配置指定隊列最多可使用的共享區域的大小
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置指定隊列最多可使用的共享區域的大小 |
buffer egress [ slot slot-number ] cell queue queue-id shared ratio ratio |
缺省情況下,所有隊列最多可使用的共享區域比例均為33% |
缺省情況下,所有隊列均分固定區域,但用戶也可以調整指定隊列最多可使用的固定區域的大小,其它未配置的隊列則均分剩餘的共享區域。
配置該命令後,係統就會給隊列預留指定大小的空間,即便該隊列沒有報文存儲需求,其他隊列也不能搶占。所有隊列所配置的固定區域大小之和,不應超過可配置的總固定區域大小,否則配置失敗。
表1-4 配置指定隊列最多可使用的固定區域的大小
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置指定隊列最多可使用的固定區域的大小 |
buffer egress [ slot slot-number ] cell queue queue-id guaranteed ratio ratio |
缺省情況下,所有隊列最多可使用的固定區域比例均為12% |
用戶在完成對數據緩衝區的手工配置後,必須使用下麵的步驟將所作的修改進行應用,之前的配置才能生效。配置被應用後就不能被修改,需要先取消應用,再修改、應用,新的配置才能生效。
表1-5 應用數據緩衝區的配置
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
應用數據緩衝區的配置 |
buffer apply |
- |
在完成上述配置後,在任意視圖下執行display命令可以查看數據緩衝區的配置效果。
操作 |
命令 |
顯示數據緩衝區的大小 |
display buffer [ slot slot-number ] [ queue [ queue-id ] ] |
顯示數據緩衝區的使用率 |
display buffer usage [ slot slot-number ] |
用戶網絡描述如下:
Server通過1000Mbps以太網接口接入Switch,Server會不定時發送大流量的廣播或者組播報文給Host。
Host通過100Mbps以太網卡接入Switch。
通過Switch對Server發出的大流量報文進行處理,保證報文可以到達Host。
圖1-3 配置Burst功能組網圖
# 進入係統視圖。
<Switch> system-view
# 配置Burst功能。
[Switch] burst-mode enable
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!