思科交換機抑制廣播風暴特性
在企業網絡中,廣播數據包是一把雙刃劍。一方面其是進行正常網絡連接所必須的一種數據包,如在自動獲得IP地址方案中需要利用廣播數據報來尋找可用的DHCP服務器。另一方面其又很容易被病毒或者黑客所利用,如通過DOS攻擊等手段導致網絡擁塞。為此在網絡設計中,必須要對廣播數據包進行合理的控制。
一、廣播數據包的危害
廣播數據包有一個很重要的特征,就是廣播域中每臺網絡設備,包括PC或者交換機都需要處理廣播數據包。可見,如果某個廣播域中存在比較多的廣播流量,那么所有的相關設備都會受到影響,因為他們必須抽出一定的資源來處理這些廣播數據包。同時,這些廣播數據包還會占用寶貴的帶寬資源,如果網絡中存在過多的廣播數據包,則可能會導致網絡擁塞,大大降低網絡的性能與安全等級。所以,在網絡設計中應當防止過量的廣播流量所導致的非正常功能故障,同時需要注意由此可能帶來的安全隱患。總之,在網絡中如果發生意外情況,那么異常的設備就會發送大量的廣播數據包流量。如果在每秒之內發生的廣播數據報流量過多,那么就會直接導致交換機等網絡設備的CPU利用率高,設置利用率會達到100%從而導致網絡中斷。為此一個安全的網絡設計,都會采用各種各樣的措施來抑制廣播數據包的流量。
在傳統的網絡設計中,也有不少的措施可以用來減少網絡中不必要的廣播數據包。如可以將網絡設計成多個網段,以減少廣播域內設備的數量,從而實現減少廣播包的目的。不過這些傳統的方案,都需要增加一些額外的設備,而且實施起來也不是很方便。在思科系列的交換機中,本身就提供了廣播抑制的方案。或許網絡管理員可以換一種思路來解決這個問題。 #p#
二、思科交換機廣播數據包抑制方案分析
為了緩解過量的廣播數據報對網絡帶來的不利影響,思科系列的交換機特別設計了廣播抑制特性。簡單的說,交換機操作系統會自動監測經過其設備的網絡流量。如果發現廣播數據包比較多的話,這交換機會采取兩個措施:要么是丟棄過量的廣播數據包;要么就是禁用接收過量的流量端口。
q如上圖所示,假設現在主機A受到了攻擊,中了某種病毒。此時其就會不斷的向外面發送廣播數據包,直到主機癱瘓為止。其發送的廣播數據包都需要經過交換機來轉發。此時交換機會監測到來自主機A的大量的廣播數據包流量。監測到這種情況之后,交換機會采取哪種措施呢?交換機可能會將主機A發送過來的廣播數據包流量丟棄掉,其他的數據流量正常轉發,從而杜絕A主機發出的廣播數據包對廣播域內其他設備的影響。交換機也有可能關閉主機A連接的交換機端口,即來自主機A的所有數據流量都將無法通過交換機來轉發,就好像是將A的網絡斷開了,從而防止主機A繼續危害網絡。交換機具體采用哪種措施,這主要看網絡管理員的配置。
交換機在監測廣播數據流量的時候,檢測的頻率還是很高的。通常情況下,其回監測1秒周期內進入端口的數據流量。如果廣播數據包超過了所設置的最大值,那么交換機就會采用網絡管理員預先配置的違規措施。所以采用交換機的廣播數據包抑制方案,可以在最短時間內發現非正常的廣播數據包,從而采取有效的措施來減少其對企業網絡的危害。 #p#
三、CatOS軟件與IOS軟件配置的異同
在思科系列的交換機中,主要采用CatOS與IOS操作系統軟件。這兩種操作系統在配置廣播數據包抑制上還是有一定的差異。如在基于CatOS操作系統的交換機上,主要是通過如下命令來啟用廣播數據包抑制特性。
Set port broadcast thresho1d% violation drop-packets/err-disable enable/disable |
在這個命令中,主要注意兩個參數。第一個參數就是thresho1d%,也就是允許通過的廣播數據包流量的最大值。利用專業術語來說就是閥值。如果將這個參數設置為100%,那么交換機將不會限制任何的流量。也就是說不會限制任何的廣播數據流量。如果將這個參數設置為0%,那么交換機將會抑制所有的數據流量。通常情況下,我們都不會采用這兩個極端的值。那么這個參數到底設置為多少合適呢?通常情況下在選擇這個參數大小的時候,需要根據企業現有的網絡流量模式來定義。這里需要強調的是,不要一開始就將這個參數設置的比較低,因為其可能會錯誤的丟棄交換機的正常流量。我們在平時管理的時候,往往會先設置一個比較大的值,然后再慢慢的根據企業的網絡流量來降低這個閥值,最終調整到最優的階段。另外筆者建議各位網絡管理員,不要在任何交換機上都啟用這個特性。通常情況下只需要在接入層的用戶端口上啟用廣播抑制特性即可。因為大部分情況下,我們只要限制特定的主機端口所能夠發送到網絡中的廣播數據流量即可。在太多的交換機上啟用這個特性,有時候會起到適得其反的效果,會影響網絡的性能與穩定性。
第二個參數是violation,即當交換機發現廣播數據流量超過規定的最大值時,該采用何種措施來處理?在思科系列的交換機中,主要有兩種方式,分別為丟棄數據包或者將某個端口禁用掉(設置為err-disable狀態)。具體采取哪種措施主要要看企業的網絡需求。不過筆者的意見是,盡量少用“err-disable”狀態。因為如果交換機的某個端口進入到這個狀態的時候,交換機將會顯示錯誤信息,并且立即產生相關的信息通過管理員預先定義的方式來同志管理員這種情況。此時可能會影響到正常數據流量的轉發。所以一般情況下筆者建議采用丟棄數據包的方式來處理。從而將廣播數據包對網絡的影響降低到最低。
如果網絡管理員采用的是基于IOS操作系統軟件的交換機,那么配置的靈活性要降低一點。在使用IOS的交換機中,廣播數據包抑制又叫做風暴控制。在使用這個特性的時候,閥值的設置跟CatOS軟件類似,主要是要看違規操作的設置。因為在IOS軟件版本中,不同的版本的交換機其支持的違規操作方式是不同的。如在6500系列的基于IOS軟件的交換機中,其支持的違規操作只有一項就是“丟棄數據包”。而在基于IOS軟件的4500系列交換機中,其支持的違規操作就有兩項,分別為”“丟棄數據包”與“關閉選項”。關閉選項同上面說到的設置為err-disable狀態效果類似,只是稱呼不同而已。所以如果網絡管理員采用的是基于IOS的交換機,那么就需要注意這個不同的系列所支持的違規操作方式的不同。
另外需要提醒的是,如果企業采用的是6500系列的交換機,還有一個問題要引起大家的重視。網絡管理員可以在6500系列交換機的吉比特以太網端口上配置多播或者單播抑制特性。這個特性跟上面所講的廣播抑制特性非常的相似。這個特性可以同時抑制廣播流量、多播流量、單播流量等等。在比較復雜的網絡設計中,可以直接啟用這個特性來代替前面講到的廣播抑制方案。
【編輯推薦】