路由器硬件問題會導致丟包嗎
路由器是互聯(lián)網(wǎng)絡(luò)的樞紐,"交通警察"。目前路由器已經(jīng)廣泛應(yīng)用于各行各業(yè)。是連接因特網(wǎng)中各局域網(wǎng)、廣域網(wǎng)的設(shè)備,如果路由器的硬件出現(xiàn)問題會導致丟包嗎?下面來和學習啦小編一起了解一下路由器硬件問題會導致丟包嗎?
路由器硬件問題會導致丟包嗎
一般情況下,如果路由表中有匹配的表項的話,則會進行后續(xù)的工作,路由器接口能接收到報文是其工作的基礎(chǔ)。
如果報文丟失的話,那么將極大的影響到路由交換功能,最終導致數(shù)據(jù)的丟失,造成報文丟失的原因有很多,不過最主要的可能是路由器內(nèi)存不足或者CPU過載所造成的。
要解決這個問題,首先需要判斷問題的原因。
一、內(nèi)存碎片是指路由器內(nèi)存被劃分了許多不連續(xù)的塊。他將導致內(nèi)存利用率降低,嚴重時可能會產(chǎn)生內(nèi)存錯誤,影響路由器的性能。它也會導致路由器報文丟失的問題。
其實不僅路由器的內(nèi)存存在碎片問題,普通的硬盤也存在這種問題。如微軟操作系統(tǒng)中就自帶一個碎片整理工具,可以保障用戶來整理硬盤中的碎片,以提高硬盤的存儲容量以及存儲性能。這里指的內(nèi)存碎片其實跟硬盤碎片是類似的。
二、那該如何判斷路由器的內(nèi)存是否存在碎片呢?這里主要借助的是靈科路由器自帶的SHOW MEMORY命令。這個命令會顯示當前內(nèi)存的相關(guān)信息。如執(zhí)行這條命令后,會顯示當前可用內(nèi)存(Free)與最大可用塊(Largest)的數(shù)值。
網(wǎng)絡(luò)管理員把這兩個值進行比較,就可以判斷碎片對路由器性能的影響。這主要是把路由器的可用內(nèi)存與最大可用塊的大小進行比較。
如果路由器的可用內(nèi)存與最大的可用塊大小比較接近時,表示雖然路由器存在碎片但是影響不大。但是若最大可用的塊很小,如只有最大可以用內(nèi)存的幾十分之一,那么就說明路由器內(nèi)存碎片問題比較嚴重了。
三、如路由器的可用內(nèi)存為20M, 而最大可用塊的大小為15M的話,則表示路由器內(nèi)存中是有一定的碎塊,但是這點碎塊不影響路由器的正常運行。如果可用內(nèi)存為20M,而最大可用塊為0.8M的話,則說明路由器內(nèi)存中存在比較多的碎塊。
連續(xù)連續(xù)內(nèi)存中沒有足夠大的可用塊,這有可能導致嚴重的內(nèi)存分配問題,如導致一個或者多個接口間歇性的丟失報文。在路由器內(nèi)存中,允許存在一定的內(nèi)存碎片。
到現(xiàn)在為止,還沒有哪一種內(nèi)存管理技術(shù)說可以完全避免產(chǎn)生內(nèi)存碎片。只是這個碎片要保證一個合理的值。
具體這個值是多少,也沒有人可以給出一個具體的標準。不過根據(jù)筆者的經(jīng)驗,最好能夠保證可用塊的大小在可用內(nèi)存的二分之一到三分之一之間。
當然可用塊大小跟可用內(nèi)存越接近越好。
四、其實這個可用塊與可用內(nèi)存之間的關(guān)系我們可以利用柜子中的抽屜來表示。如一個柜子可用容量雖然比較大,但是里面劃分了大小不等的1000多個格子。每個格子的空間容量有限。
當有大的數(shù)據(jù)需要存儲時,整的容量是夠的,但是小格子的容量不夠。此時,就會發(fā)生報文丟失的問題。
此時看起來內(nèi)存足夠用,可是此時內(nèi)存中已經(jīng)沒有連續(xù)的空間用來存儲數(shù)據(jù)。所以這些看起來比較大的可用內(nèi)存,其實保存不了多少數(shù)據(jù)。
五、如果確定路由器內(nèi)存中沒有過多的碎片,則網(wǎng)絡(luò)管理員就要考慮是否是因為CPU過載所導致報文丟失的。要查看CPU的使用率,可以利用SHOW PROCESS命令來查看路由器的CPU使用情況,通過這條命令,可以顯示出路由器CPU最近5秒、最近1分鐘、以及最近5分鐘的CPU使用率。由于 CPU的使用率一直在變化,故網(wǎng)絡(luò)管理員主要關(guān)系的是5分鐘之內(nèi)的CPU平均使用率。
通常情況下,如果5分鐘之內(nèi)的CPU使用率能夠保持在60%以下,最多不能夠超過70%,則說明路由器的CPU工作還是正常的。但是如果其CPU使用率達到了70%以上,則說明路由器的CPU使用過度了。
此時可以說明路由器接口報文丟失很可能是CPU過載所造成的。
六、如果確認路由器CPU過載,那么網(wǎng)絡(luò)管員需要確認到底是哪一個進程占用了大量的內(nèi)存。只有把這個罪魁禍首找出來,網(wǎng)絡(luò)管理員才能夠?qū)ΠY下藥,解決問題。如網(wǎng)絡(luò)管理員經(jīng)過查詢發(fā)現(xiàn)是SRB BACKGROUND進程占用了大量的CPU,則就說明發(fā)生了網(wǎng)橋風暴。故要解決CPU過載問題,要達到這個目的,網(wǎng)絡(luò)管理員可以通過SHOW PROCESS MEMORY命令查詢路由器的內(nèi)存分配信息。
通過執(zhí)行這個命令,系統(tǒng)會反饋當前路由器內(nèi)存的可用量、以使用量等信息。還會反映每個進程所占用的內(nèi)存空間。如果某個進程所占用的內(nèi)存與上面顯示的所占用的CPU都很大的話,則說明這個進程很有問題。網(wǎng)絡(luò)管理員要逐一排查這些可以的進程。
七、如有時候網(wǎng)絡(luò)管理員可以強制把某些耗用CPU資源大的進程關(guān)閉掉,然后測試一下報文丟失的情況是否有所改善。如果有明顯改善的話,那么就找到問題的原因了。
此時網(wǎng)絡(luò)管理員就可以對癥下藥,分析一下到底這個進程多對應(yīng)的服務(wù)是什么,為什么會占用這么多的CPU資源與內(nèi)存資源。
第2 / 3頁
如果可以的話,可以先把這個服務(wù)關(guān)閉掉,以減少報文丟失現(xiàn)象,保障其他服務(wù)的正常運作。等到查明問題的原因,修復好后再重新啟動。 在路由器中采用了很多交換技術(shù),如過程交換、快速交換、自治交換、硅交換等等,但是他們都依賴于報文。如果報文丟失的話,再怎么高級的交換技術(shù)都將不起作用,如何防止報文丟失就至關(guān)重要。
當網(wǎng)絡(luò)管理員發(fā)現(xiàn)有報文丟失的情況,馬上要采取以上等措施找到報文丟失發(fā)生的原因,并積極采取措施盡早恢復故障。
看了路由器硬件問題會導致丟包嗎的人還看了:
路由器硬件問題會導致丟包嗎
上一篇:路由器是由硬件組成的