1. 程式人生 > >路由器流量控制機制

路由器流量控制機制

所有 分享 性能 gravity 應該 策略 機制 技術分享 nag

高端路由器的流量控制機制

1. 概述

一些高端路由器上均具備流量控制機制,本篇文檔主要介紹3個應用於高端路由器的流量控制機制:反壓機制、隊列機制、流量監管。
wn及擴展

2. 流量控制機制

2.1 反壓機制
報文經過上行接口板的處理之後,會送往交換網板進行交換。因為所有報文都要經過交換網的交換,所以交換網是決定路由器性能的最核心單元,交換網應該是“無阻塞”的,其轉發容量是所有接口板的轉發容量之和。然而,下行接口板性能可能沒那麽上行接口板那麽強,因此,路由器上有“反壓機制”,下行接口板來不及接收時,會發生反壓,這樣交換網板會通知上行接口板暫停發包,將報文進行緩存。其流程如圖 2.1 所示。
技術分享圖片

                                  圖 2.1 反壓機制

2.2 隊列機制

配合反壓機制,在一些高端路由器的接口板上還有有一塊被稱為TM(Traffic Management)的部件,裏面有高速緩存,在擁塞的情況下,數據包以隊列的形式暫存在緩存裏,TM再按一定的規則把數據包調度出隊,送往交換網。如果裝不下,還會按一定規則做報文丟棄。 如圖 2.2 所示。
技術分享圖片

                                 圖 2.2 隊列機制

同理,報文經過交換網板送到下行接口板時,流量有可能超過出接口的發包能力,因此在下行接口板上也需要有TM芯片進行緩存和隊列管理。在擁塞的情況下,數據包以隊列的形式暫存在緩存裏,下行TM再按一定的規則把數據包調度出隊,送往出接口發送。

2.3 流量監管(CAR)
流量控制除了上述處理機制外,還有一種機制——流量監管,它能使流量不超過入/出接口允許的帶寬,對於超出限制的那部分數據包會被直接丟棄。目前流量監管使用的技術是CAR(Committed Access Rate)。CAR是由包轉發引擎PFE完成的,可以在上行PFE上執行,限制流量不超過入口帶寬;也可以在下行PFE上執行,限制流量不超過出口帶寬。如圖 2.3 所示。

技術分享圖片

                                     圖 2.3 流量監管

註意:上送CPU以及CPU下發的協議報文不經過CAR處理,這是為了避免當流量突發時協議報文被CAR丟棄(不過,為了避免對CPU的攻擊,上送CPU的協議報文會經過CP-CAR處理)。

另外,上文在隊列機制裏提到的丟棄策略,在高端路由器裏,為了防止其協議報文被丟棄,這些報文一般都設置為高服務等級,入高優先級隊列,從而被優先調度,這樣通常不會被丟棄。

路由器流量控制機制