專利名稱:用于觸發網絡設備恢復默認配置的方法及裝置的制作方法
技術領域:
本發明涉及網絡設備的配置技術,特別涉及一種用于觸發網絡設備恢復默認配置的方法、以及一種用于觸發網絡設備恢復默認配置的裝置。
背景技術:
網絡設備中的配置(包括系統配置和業務配置)對網絡設備的正常運行及業務正常使用起著至關重要的作用。實際應用中,可以根據不同的運行環境及業務環境來相應變更網絡設備的配置,某些情況下,還需要將變更后的當前配置恢復為網絡設備的默認配置。所謂的默認配置就是指由生產廠商為網絡設備提供的配置,網絡設備中通常會帶有例如閃存(Flash)等非易失性隨機訪問存儲器(Non-Volatile Random Access Memory, NVRAM),因而默認配置通常就燒錄在NVRAM中。相應地,使網絡設備恢復默認配置,就需要通過特定的方式來觸發網絡設備從NVRAM中讀取默認配置。圖1為現有技術中利用按鍵電路觸發網絡設備恢復默認配置的原理圖。如圖1所示,網絡設備中的CPU具有通用輸入/輸出(General Purpose Input Output, GPI0)管腳, 其中一根GPIO管腳被下拉至地、并可通過開關選擇性地與高電平Vcc導通或斷開。這樣, CPU即可感測到該GPIO管腳的電平狀態變化,并依據該GPIO管腳的電平狀態變化來決定是否從NVRAM中讀取默認配置并下發、以實現默認配置恢復。然而,上述利用按鍵電路觸發網絡設備恢復默認配置的方式卻存在如下缺陷1、必須基于網絡設備中的硬件電路,從而導致恢復默認配置的通用性不高、且額外增加了實現成本;2、按鍵易損壞,從而易出現網絡設備無法恢復默認配置的情況;3、需要占用本就十分稀缺的GPIO管腳,從而易導致CPU的GPIO管腳資源不足。
發明內容
有鑒于此,本發明提供一種用于觸發網絡設備恢復默認配置的方法、以及一種用于觸發網絡設備恢復默認配置的裝置。本發明提供的一種用于觸發網絡設備恢復默認配置的方法,包括al、令交換芯片將所有端口隔離、并使所述交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報;a2、構造環路檢測報文發送至所述交換芯片進行轉發;其中,構造的所述環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的其中一個的端口號;a3、在第一預定時間內檢測所述交換芯片是否上報了經過所述環路環回的所述環路檢測報文;其中,經過所述環路環回的所述環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的另一個的端口號;a4、令所述交換芯片取消對所有端口隔離、并停止將接收到的目的MAC為保留MAC的所有報文上報;a5、若所述步驟a3檢測到了環回的所述環路檢測報文則從存儲器件讀取默認配置并下發。所述步驟a2進一步以預定間隔連續地構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,所述步驟a2進一步在所述步驟a3每次未能在所述第一預定時間內檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發。所述步驟a3進一步在檢測到環回的所述環路檢測報文后,將預設的環路檢測標記設置為表示已成功檢測到所述環路的有效值;所述步驟a5進一步依據所述環路檢測標記是否為所述有效值來判斷所述步驟a3 是否檢測到了環回的所述環路檢測報文。所述步驟a5僅下發所述默認配置中除所述兩個指定端口之外的其它部分,且該方法進一步包括在所述步驟a6從存儲器件讀取默認配置并下發之后執行的如下步驟bl、令所述交換芯片將所述兩個指定端口相互隔離并與其他端口隔離、并使所述交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報;b2、構造所述環路檢測報文發送至所述交換芯片進行轉發;b3、檢測所述交換芯片是否上報了經過所述環路環回的所述環路檢測報文;b4、若所述步驟b3無法檢測到環回的所述環路檢測報文,令所述交換芯片取消對所述兩個指定端口的相互隔離以及與其他端口的隔離、并停止將接收到的目的MAC為保留 MAC的所有報文上報;b5、下發所述默認配置中針對所述兩個指定端口的剩余部分。所述步驟1^2進一步以預定間隔連續地構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,若所述步驟b3在預定第二時間內持續未檢測到環回的所述環路檢測報文, 則認定無法檢測到環回的所述環路檢測報文,且,所述步驟進一步在所述步驟b3每次檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,若所述步驟b3在預定第二時間內持續未檢測到環回的所述環路檢測報文的次數達到預設次數,則認定無法檢測到環回的所述環路檢測報文,且,所述步驟1^2進一步在所述步驟b3每次檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發,以及進一步在所述步驟b3每次在預定第二時間內持續未檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發、直至所述步驟b3認定無法檢測到環回的所述環路檢測報文。所述環路檢測報文為BPDU報文,所述BPDU報文具有可攜帶目的MAC和端口號的報文頭。本發明提供的一種用于觸發網絡設備恢復默認配置的裝置,包括第一模塊,令交換芯片將所有端口隔離、并使所述交換芯片能夠將接收到的目的 MAC為保留MAC的所有報文上報;第二模塊,構造環路檢測報文發送至所述交換芯片進行轉發;其中,構造的所述環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的其中一個的端口號;第三模塊,在第一預定時間內檢測所述交換芯片是否上報了經過所述環路環回的所述環路檢測報文;其中,經過所述環路環回的所述環路檢測報文的目的MAC為保留MAC、 并攜帶有用于構成環路的兩個指定端口中的另一個的端口號;第四模塊,令所述交換芯片取消對所有端口隔離、并停止將接收到的目的MAC為保留MAC的所有報文上報;第五模塊,若所述第三模塊檢測到了環回的所述環路檢測報文則從存儲器件讀取默認配置并下發。所述第二模塊進一步以預定間隔連續地構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,所述第二模塊進一步在所述第三模塊每次未能在所述第一預定時間內檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發。所述第三模塊進一步在檢測到環回的所述環路檢測報文后,將預設的環路檢測標記設置為表示已成功檢測到所述環路的有效值;所述第五模塊進一步依據所述環路檢測標記是否為所述有效值來判斷所述第三模塊是否檢測到了環回的所述環路檢測報文。所述第五模塊僅下發所述默認配置中除所述兩個指定端口之外的其它部分,且該裝置進一步包括在所述第五模塊從存儲器件讀取默認配置并下發之后觸發的如下模塊第六模塊,令所述交換芯片將所述兩個指定端口相互隔離并與其他端口隔離、并使所述交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報;第七模塊,構造所述環路檢測報文發送至所述交換芯片進行轉發;第八模塊,檢測所述交換芯片是否上報了經過所述環路環回的所述環路檢測報文;第九模塊,若所述第八模塊無法檢測到環回的所述環路檢測報文,則令所述交換芯片取消對所述兩個指定端口的相互隔離以及與其他端口的隔離、并停止將接收到的目的 MAC為保留MAC的所有報文上報;第十模塊,下發所述默認配置中針對所述兩個指定端口的剩余部分。所述第七模塊進一步以預定間隔連續地構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,若所述第八模塊在預定第二時間內持續未檢測到環回的所述環路檢測報文,則認定無法檢測到環回的所述環路檢測報文,且,所述第七模塊進一步在所述第八模塊每次檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,若所述第八模塊在預定第二時間內持續未檢測到環回的所述環路檢測報文的次數達到預設次數,則認定無法檢測到環回的所述環路檢測報文,且,所述第七模塊進一步在所述第八模塊每次檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發,以及進一步在所述第八模塊每次在預定第二時間內持續未
7檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發、直至所述第八模塊認定無法檢測到環回的所述環路檢測報文。所述環路檢測報文為BPDU報文,所述BPDU報文具有可攜帶目的MAC和端口號的報文頭。如上可見,本發明以兩個指定端口構成環路為網絡設備恢復默認配置的觸發條件,因而相比于現有利用按鍵觸發的方式能夠產生如下的技術效果1、無需額外的硬件電路即可使網絡設備恢復默認配置,從而使恢復默認配置的實現具有更高的通用性、且降低了實現成本;2、不存在按鍵損壞等問題,從而能夠避免網絡設備無法恢復默認配置的情況;3、無需占用本就十分稀缺的GPIO管腳,從而能夠避免CPU的GPIO管腳資源不足。而且,為了能夠以兩個指定端口構成環路為網絡設備恢復默認配置的觸發條件, 本發明利用構造的環路檢測報文來檢測網絡設備的兩個指定端口是否構成回路、并在檢測過程中通過將端口隔離,以此來避免環路所可能導致的網絡風暴、進而避免廣播風暴導致環路檢測報文丟失;以及,本發明還利用保留MAC作為環路檢測報文的目的MAC、以使交換芯片能夠基于其針對保留MAC所特有的可配置功能而上報環路檢測報文。另外,本發明以兩個指定端口構成環路作為檢測條件還可以避免由于非指定端口構成環路而導致的誤觸發配置恢復。進一步優選地,在兩個指定端口構成的環路觸發網絡設備恢復默認配置后,本發明還可以利用環路檢測報文檢測兩個指定端口構成的環路是否解除,并且只有在兩個指定端口構成的環路被解除后才允許兩個指定端口按照默認配置的方式被使用,從而能夠在恢復默認配置后避免由于兩個指定端口構成的環路被誤保留而導致的網絡風暴。
圖1為現有技術中利用按鍵電路觸發網絡設備恢復默認配置的原理圖;圖2為本發明實施例中利用端口構成環路觸發網絡設備恢復默認配置的原理圖;圖3為本發明實施例中用于觸發網絡設備恢復默認配置的方法的示例性流程示意圖;圖4為本發明實施例中用于觸發網絡設備恢復默認配置的方法的一種優選流程示意圖;圖5為本發明實施例中用于觸發網絡設備恢復默認配置的方法的一種更優流程示意圖;圖6為本發明實施例中用于觸發網絡設備恢復默認配置的方法可在恢復默認配置后進一步執行的用于檢測環路是否解除的示例性流程示意圖;圖7為本發明實施例中用于觸發網絡設備恢復默認配置的方法可在恢復默認配置后進一步執行的用于檢測環路是否解除的一種流程示意圖;圖8為本發明實施例中用于觸發網絡設備恢復默認配置的方法可在恢復默認配置后進一步執行的用于檢測環路是否解除的另一種流程示意圖;圖9為本發明實施例中用于觸發網絡設備恢復默認配置的裝置的示例性結構示意圖10為本發明實施例中用于觸發網絡設備恢復默認配置的裝置可在恢復默認配置后進一步觸發的用于檢測環路是否解除的示例性結構示意圖。
具體實施例方式為使本發明的目的、技術方案及優點更加清楚明白,以下參照附圖并舉實施例,對本發明進一步詳細說明。圖2為本發明實施例中利用端口構成環路觸發網絡設備恢復默認配置的原理圖。 如圖2所示,網絡設備中的所有端口 UNIl n(n為大于等于2的正整數)中有兩個端口 (圖2中以UNIl和UNI2為例)被選定為指定端口。當需要觸發網絡設備恢復默認配置時,可以將UNIl和UNI2連接、以構成環路;此后當網絡設備上電啟動后,即可由CPU協同交換芯片執行如下處理UCPU令交換芯片將端口 UNIl η相互隔離、并知曉需要將接收到的目的MAC為保留MAC的所有報文上報給CPU ;2、CPU 構造一個網橋協議數據單元(Bridge Protocol Data Unit,BPDU)報文作為環路檢測報文發送至交換芯片,其中,構造的BPDU環路檢測報文的報文頭(Header) 中至少包括源MAC、目的MAC、以及端口號這三個字段,CPU可設定其中的源MAC為任意值(例如00-0F-E2-12-34-56),但需要將其中的目的MAC設置為保留MAC (例如 01-80-C2-00-00-00)、端口號設置為其中一個指定端口 UNIl的端口號;3、交換芯片支持Header功能、或稱為CPU tag功能,并將BPDU環路檢測報文的 Header中設置的指定端口 UNIl的端口號識別為目的端口號,因而將CPU構造的BPDU環路檢測報文從指定端口 UNIl轉發;4、BPDU環路檢測報文經過環路環回后到達另一指定端口 UNI2,交換芯片將指定端口 UNI2的端口號作為源端口號寫入至環回后的BPDU環路檢測報文Header中、并替換 Header中的指定端口 UNIl的端口號,然后再上報給CPU ;5、由于其他端口在此期間有可能接收到例如生成樹協議(Spanning Tree Protocol, STP)報文等其他目的MAC為保留MAC的報文、并由交換芯片上報給CPU,因此, CPU接收到交換芯片上報的報文后,需要判斷該報文是否是環回后的BPDU環路檢測報文還是其他報文,具體說,CPU判斷報文的Header中的源MAC是否為之前發送的BPDU環路檢測報文的源MAC、目的MAC是否為保留MAC、端口號是否為另一個指定端口 UNI2端口號,如果均滿足,則認為其之前構造的BPDU環路檢測報文經過了環路環回、即認為檢測到了環路, 此時,即可從NVRAM讀取默認配置并下發,從而實現默認配置恢復。基于上述原理可見,本發明實施例中以兩個指定端口 UNIl和UNI2構成環路為網絡設備恢復默認配置的觸發條件,由此,就需要CPU配置交換芯片進行端口隔離以及報文上報、構造BPDU環路檢測報文(除了 BPDU之外的其他協議報文也可適用)、以及判斷交換芯片上報的報文是否為環回的BPDU環路檢測報文,從而,就形成了本發明實施例中用于觸發網絡設備恢復默認配置的方法。圖3為本發明實施例中用于觸發網絡設備恢復默認配置的方法的示例性流程示意圖。如圖3所示,本發明實施例中用于觸發網絡設備恢復默認配置的方法主要包括在網絡設備啟動、且判斷出兩個指定端口均為正常(Up)狀態后于CPU內執行的如下步驟CN 102325046 A
說明書
6/12 頁步驟301,令交換芯片將所有端口隔離、并使交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報;步 驟302,構造環路檢測報文發送至交換芯片進行轉發;其中,構造的環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的其中一個的端口號;步驟303,在第一預定時間內檢測交換芯片是否上報了經過環路環回的環路檢測報文;其中,經過環路環回的環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的另一個的端口號;步驟304,令交換芯片取消對所有端口隔離、并停止將接收到的目的MAC為保留 MAC的所有報文上報; 步驟305,若步驟303檢測到了環回的環路檢測報文則從例如NVRAM等存儲器件讀取默認配置并下發、否則下發當前配置。另外,在上述流程中可以僅通過執行一次步驟302來構造環路檢測報文并發送至交換芯片進行轉發, 但這樣就存在環路檢測報文丟失而漏檢測環路的風險,那么,為了避免由于環路檢測報文丟失而漏檢測環路,步驟302可以進一步以預定間隔連續地構造環路檢測報文并發送至交換芯片進行轉發,優選地,為了減少CPU不必要的開銷,以預定間隔連續地構造環路檢測報文并發送至交換芯片進行轉發可以持續至步驟a3未能在第一預定時間內檢測到環回的環路檢測報文的次數達到最大次數時結束;或者,步驟302可以進一步在步驟303每次未能在第一預定時間內檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發,優選地,為了減少CPU不必要的開銷,以該方式重新構造環路檢測報文并發送至交換芯片進行轉發可以持續至步驟303未能在第一預定時間內檢測到環回的環路檢測報文的次數達到最大次數時結束。以及,步驟303可以進一步在檢測到環回的環路檢測報文后,將預設的環路檢測標記設置為表示已成功檢測到環路的有效值;相應地,步驟305可以進一步依據環路檢測標記是否為有效值來判斷步驟303是否檢測到了環回的環路檢測報文。圖4為本發明實施例中用于觸發網絡設備恢復默認配置的方法的一種優選流程示意圖。如圖4所示,以僅一次構造環路檢測報文并發送至交換芯片進行轉發、以及利用設置的環路檢測標記來表示是否檢測到了環回的環路檢測報文為例,本發明實施例中用于觸發網絡設備恢復默認配置的方法包括在網絡設備啟動、且判斷出兩個指定端口均為Up狀態后于CPU內執行的如下步驟步驟401,令交換芯片將所有端口隔離、并使交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報,然后跳轉至步驟402。步驟402,構造環路檢測報文發送至交換芯片進行轉發,然后跳轉至步驟403 ;其中,構造的環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的其中一個的端口號。步驟403,在預定時間(例如100ms)、即第一預定時間內檢測交換芯片是否上報了經過環路環回的環路檢測報文,如果檢測到環回的環路檢測報文則跳轉至步驟304、否則 (至少包括交換芯片未上報報文或交換芯片上報的報文均不是經過環路環回的環路檢測報文這兩種情況)跳轉至步驟305 ;其中,經過環路環回的環路檢測報文的目的MAC為保留
10MAC、并攜帶有用于構成環路的兩個指定端口中的另一個的端口號(被交換芯片修改)。實際應用中,本步驟可以利用一定時器來標定預定時間,該定時器可以在步驟402 之后被開啟、如果超時則表示已到達預定時間。步驟404,將預設的環路檢測標記設置為表示已成功檢測到環路的有效值(例如 1),然后跳轉至步驟405。實際應用中,環路檢測標記在網絡設備啟動后的初始值為無效值(例如0)。步驟405,令交換芯片取消對所有端口的隔離、并停止將接收到的目的MAC為保留 MAC的所有報文上報,然后跳轉至步驟406。步驟406,判斷環路檢測標記是否為表示已成功檢測到環路的有效值(例如1),如果是則跳轉至步驟407、否則跳轉至步驟408。步驟407,由于環路檢測標記為有效值,因而從NVRAM讀取默認配置并以替換當前配置的方式保存,然后跳轉至步驟408。實際應用中,本步驟中所述的保存實際上是在CPU內部的內存中予以保存。步驟408,下發保存的配置,S卩,若環路檢測標記為有效值則本步驟下發的保存的配置就是從NVRAM讀取的默認配置,否則,本步驟下發的保存的配置則是根據不同運行環境及業務環境來相應調整的當前配置。另需要說明的是,如果兩個指定端口中有至少一個不是Up狀態,則本流程就直接從步驟408開始執行、并下發保存的當前配置。至此,如圖4所示的流程結束。圖5為本發明實施例中用于觸發網絡設備恢復默認配置的方法的一種更優流程示意圖。如圖5所示,以能夠多次構造環路檢測報文并發送至交換芯片進行轉發、以及利用設置的環路檢測標記來表示是否檢測到了環回的環路檢測報文為例,本發明實施例中用于觸發網絡設備恢復默認配置的方法包括在網絡設備啟動、且判斷出兩個指定端口均為Up 狀態后于CPU內執行的如下步驟步驟501,令交換芯片將所有端口隔離、并使交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報,然后跳轉至步驟502。步驟502,構造環路檢測報文發送至交換芯片進行轉發,然后跳轉至步驟503 ;其中,構造的環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的其中一個的端口號。步驟503,在預定時間(例如100ms)、即第一預定時間內檢測交換芯片是否上報了經過環路環回的環路檢測報文,如果檢測到環回的環路檢測報文則跳轉至步驟504、否則 (至少包括交換芯片未上報報文或交換芯片上報的報文均不是經過環路環回的環路檢測報文這兩種情況)跳轉至步驟505 ;其中,經過環路環回的環路檢測報文的目的MAC為保留 MAC、并攜帶有用于構成環路的兩個指定端口中的另一個的端口號(被交換芯片修改)。實際應用中,本步驟可以利用一定時器來標定預定時間,該定時器可以在步驟502 之后被開啟、如果超時則表示已到達預定時間。步驟504,將預設的環路檢測標記設置為表示已成功檢測到環路的有效值(例如 1),然后跳轉至步驟506。實際應用中,環路檢測標記在網絡設備啟動后的初始值為無效值(例如0)。
11
步驟505,對未檢測到環回的環路檢測報文的次數加1,并判斷未檢測到環回的所述環路檢測報文的次數是否達到最大次數(例如3次),如果是則跳轉至步驟506,否則,認為之前構造的環路檢測報文有可能丟失、因而跳轉回步驟502以實現重新檢測。步驟506,令交換芯片取消對所有端口的隔離、并停止將接收到的目的MAC為保留 MAC的所有報文上報,然后跳轉至步驟507。步驟507,判斷環路檢測標記是否為表示已成功檢測到環路的有效值(例如1),如果是則跳轉至步驟508、否則跳轉至步驟509。步驟508,由于環路檢測標記為有效值,因而從NVRAM讀取默認配置并以替換當前配置的方式保存,然后跳轉至步驟509。實際應用中,本步驟中所述的保存實際上是在CPU內部的內存中予以保存。步驟509,下發保存的配置,S卩,若環路檢測標記為有效值則本步驟下發的保存的配置就是從NVRAM讀取的默認配置,否則,本步驟下發的保存的配置則是根據不同運行環境及業務環境來相應調整的當前配置。另需要說明的是,如果兩個指定端口中有至少一個不是Up狀態,則本流程就直接從步驟509開始執行、并下發保存的當前配置。至此,如圖5所示的流程結束。如上述如圖3以及圖4和圖5所示的流程可見,本發明實施例中用于觸發網絡設備恢復默認配置的方法以兩個指定端口構成環路為網絡設備恢復默認配置的觸發條件,因而能夠避免現有利用按鍵觸發的方式所存在的缺陷。而且,為了能夠以兩個指定端口構成環路為網絡設備恢復默認配置的觸發條件, 本發明實施例中用于觸發網絡設備恢復默認配置的方法利用構造的環路檢測報文來檢測網絡設備的兩個指定端口是否構成回路,并在檢測過程中通過將端口隔離、以此來避免環路所可能導致的網絡風暴,以及,本發明實施例中用于觸發網絡設備恢復默認配置的方法還利用保留MAC作為環路檢測報文的目的MAC、以使交換芯片能夠基于其針對保留MAC所特有的可配置功能而上報環路檢測報文。此外,相比于如圖4所示的流程,如圖5所示的流程通過在步驟505的判斷能夠進一步避免由于環路檢測報文有可能丟失而導致的環路檢測失敗,從而提高環路檢測的可靠性、并以此來提高默認配置觸發的可靠性。進一步地,如果在恢復默認配置結束后沒有及時解除環路,則可能會形成廣播風暴、并影響現網正常業務,因此,為了避免這樣的情況發生,本發明實施例中用于觸發網絡設備恢復默認配置的方法還可以對用于構成環路的指定端口進行特殊處理。所述的特殊處理包括如果圖3中的步驟305、圖4中的步驟408和圖5中的步驟 509所下發的是默認配置、則僅下發默認配置中除兩個指定端口之外的其它部分,以及,通過檢測環路是否解除的流程來決定是否能夠下發默認配置中針對兩個指定端口的剩余部分。圖6為本發明實施例中用于觸發網絡設備恢復默認配置的方法可在恢復默認配置后進一步執行的用于檢測環路是否解除的示例性流程示意圖。如圖6所示,本發明實施例中用于觸發網絡設備恢復默認配置的方法進一步包括在下發默認配置中除兩個指定端口之外的其它部分之后執行的如下步驟
步驟601,令交換芯片將所述兩個指定端口相互隔離并與其他端口隔離、并使交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報;步驟602,構造環路檢測報文發送至所述交換芯片進行轉發;步驟603,在第二預定時間內檢測交換芯片是否上報了經過環路環回的環路檢測報文,直至認定無法檢測到環回的環路檢測報文,則表示環路已解除;步驟604,若步驟603認定無法檢測到環回的環路檢測報文,則令交換芯片取消對兩個指定端口的相互隔離以及與其他端口的隔離、并停止將接收到的目的MAC為保留MAC 的所有報文上報;步驟605,下發默認配置中針對兩個指定端口的剩余部分。另外,在上述流程中步驟602可以進一步以預定間隔連續地構造環路檢測報文并發送至交換芯片進行轉發,優選地,為了減少CPU不必要的開銷,以預定間隔連續地構造環路檢測報文并發送至交換芯片進行轉發可以持續至步驟603認定無法檢測到環回的環路檢測報文結束;或者,若步驟603在預定第二時間內持續未檢測到環回的環路檢測報文,則認定無法檢測到環回的環路檢測報文,相應地,步驟602可以進一步在步驟603每次檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發;再或者,若步驟603在預定第二時間內持續未檢測到環回的環路檢測報文的次數達到預設次數,則認定無法檢測到環回的環路檢測報文,相應地,步驟602可以進一步在步驟603每次檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發,以及在步驟603每次在預定第二時間內持續未檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發、直至步驟603認定無法檢測到環回的環路檢測報文。圖7為本發明實施例中用于觸發網絡設備恢復默認配置的方法可在恢復默認配置后進一步執行的用于檢測環路是否解除的一種流程示意圖。如圖7所示,以每次檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發為例,本發明實施例中用于觸發網絡設備恢復默認配置的方法進一步包括在下發默認配置中除兩個指定端口之外的其它部分之后執行的如下步驟步驟701,令交換芯片將兩個指定端口相互隔離并與其他端口隔離、并將接收到的目的MAC為保留MAC的所有報文上報,然后跳轉至步驟702。步驟702,構造環路檢測報文發送至交換芯片進行轉發,然后跳轉至步驟703。步驟703,在預定時間(例如Is)、即第二預定時間內檢測交換芯片是否上報了經過環路環回的環路檢測報文,如果檢測到環回的環路檢測報文則表示環路尚未解除并跳轉回步驟702繼續檢測,否則(至少包括交換芯片未上報報文或交換芯片上報的報文均不是經過環路環回的環路檢測報文這兩種情況)認為環路已解除并跳轉至步驟704。步驟704,令交換芯片取消對兩個指定端口的相互隔離以及與其他端口的隔離、并停止將接收到的目的MAC為保留MAC的所有報文上報,然后跳轉至步驟705。步驟705,下發默認配置中針對兩個指定端口的剩余部分。至此,如圖7所示的流程結束。圖8為本發明實施例中用于觸發網絡設備恢復默認配置的方法可在恢復默認配置后進一步執行的用于檢測環路是否解除的另一種流程示意圖。如圖8所示,以多次檢測環路檢測報文、以及每次檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發、無法檢測到的次數未達到預定次數時在每次無法檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發為例,本發明實施例中用于觸發網絡設備恢復默認配置的方法進一步包括在下發默認配置中除兩個指定端口之外的其它部分之后執行的如下步驟步驟801,令交換芯片將兩個指定端口相互隔離并與其他端口隔離、并將接收到的目的MAC為保留MAC的所有報文上報,然后跳轉至步驟802。步驟802,構造環路檢測報文發送至交換芯片進行轉發,然后跳轉至步驟803。步驟803,在預定時間(例如Is)、即第二預定時間內檢測交換芯片是否上報了經過環路環回的環路檢測報文,如果檢測到環回的環路檢測報文則表示環路尚未解除并跳轉回步驟802繼續檢測,否則(至少包括交換芯片未上報報文或交換芯片上報的報文均不是經過環路環回的環路檢測報文這兩種情況)跳轉至步驟804。步驟804,對未檢測到環回的環路檢測報文的次數、即檢測到環路解除的次數加 1,并判斷未檢測到環回的環路檢測報文的次數是否達到最大次數(例如3次),如果是則表示未檢測到環回的環路檢測報文不是由于環路檢測報文、而是由于環路確實已解除,因而跳轉至步驟805,否則,認為未檢測到環回的環路檢測報文有可能是由于環路檢測報文,因而跳轉回步驟802繼續檢測。步驟805,令交換芯片取消對兩個指定端口的相互隔離以及與其他端口的隔離、并停止將接收到的目的MAC為保留MAC的所有報文上報,然后跳轉至步驟806 ;步驟806,下發默認配置中針對所述兩個指定端口的剩余部分。至此,如圖8所示的流程結束。如上述如圖6以及圖7和圖8所示的流程可見,本發明實施例中用于觸發網絡設備恢復默認配置的方法在兩個指定端口構成的環路觸發網絡設備恢復默認配置后,可以進一步利用環路檢測報文檢測兩個指定端口構成的環路是否解除,并且只有在兩個指定端口構成的環路被解除后才允許兩個指定端口按照默認配置的方式被使用,從而能夠在恢復默認配置后避免由于兩個指定端口構成的環路被誤保留而導致的網絡風暴。此外,相比于如圖7所示的流程,如圖8所示的流程通過在步驟804的判斷能夠進一步避免由于環路檢測報文有可能丟失而誤認為環路已解除,從而提高環路解除檢測的可靠性。以上,是對本發明實施例中用于觸發網絡設備恢復默認配置的方法的詳細說明。 與該方法相對應地,本發明實施例還提供了用于觸發網絡設備恢復默認配置的裝置。圖9為本發明實施例中用于觸發網絡設備恢復默認配置的裝置的示例性結構示意圖。如圖9所示,本發明實施例中用于觸發網絡設備恢復默認配置的裝置包括在網絡設備上電啟動且判斷出兩個指定端口均為Up狀態后被觸發、并承載于CPU內的如下模塊預配置執行模塊,令交換芯片將所有端口隔離、并使交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報;第一報文構造模塊,構造環路檢測報文發送至交換芯片進行轉發;其中,構造的環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的其中一個的端口號;第一報文檢測模塊,在第一預定時間內檢測交換芯片是否上報了經過環路環回的環路檢測報文;其中,經過環路環回的環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的另一個的端口號;預配置取消模塊,令交換芯片取消對所有端口隔離、并停止將接收到的目的MAC 為保留MAC的所有報文上報;配置下發模塊,若報文檢測模塊檢測到了環回的環路檢測報文則從例如NVRAM等存儲器件讀取默認配置并下發、否則下發當前配置。另外,在上述結構中報文構造模塊可以僅一次構造環路檢測報文并發送至交換芯片進行轉發,但這樣就存在環路檢測報文丟失而漏檢測環路的風險,那么,為了避免由于環路檢測報文丟失而漏檢測環路,第一報文構造模塊可以進一步以預定間隔連續地構造環路檢測報文并發送至交換芯片進行轉發,優選地,為了減少CPU不必要的開銷,以預定間隔連續地構造環路檢測報文并發送至交換芯片進行轉發可以持續直至第一報文檢測模塊未能在第一預定時間內檢測到環回的環路檢測報文的次數達到最大次數時結束;或者,第一報文檢測模塊可以執行預設次數的檢測,此時,第一報文構造模塊可以進一步在第一報文檢測模塊每次未能在第一預定時間內檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發,優選地,為了減少CPU不必要的開銷,以該方式重新構造環路檢測報文并發送至交換芯片進行轉發可以持續至第一報文檢測模塊未能在第一預定時間內檢測到環回的環路檢測報文的次數達到最大次數時結束。以及,第一報文檢測模塊可以進一步在檢測到環回的環路檢測報文后,將預設的環路檢測標記設置為表示已成功檢測到環路的有效值;相應地,配置下發模塊可以進一步依據環路檢測標記是否為有效值來判斷報文檢測模塊是否檢測到了環回的環路檢測報文。 即,若環路檢測標記為有效值則從NVRAM讀取默認配置并下發、否則下發當前配置。另需要說明的是,如果兩個指定端口中有至少一個不是Up狀態,則上述結構中僅有配置下發模塊被觸發,相應地,環路檢測標記會保持為在網絡設備啟動后賦予的初始值, 因此,配置下發模塊此時只可能下發保存的當前配置。如上述如圖9所示的結構可見,本發明實施例中用于觸發網絡設備恢復默認配置的裝置以兩個指定端口構成環路為網絡設備恢復默認配置的觸發條件,因而能夠避免現有利用按鍵觸發的方式所存在的缺陷。而且,為了能夠以兩個指定端口構成環路為網絡設備恢復默認配置的觸發條件, 本發明實施例中用于觸發網絡設備恢復默認配置的裝置利用構造的環路檢測報文來檢測網絡設備的兩個指定端口是否構成回路,并在檢測過程中通過將端口隔離、以此來避免環路所可能導致的網絡風暴,以及,本發明實施例中用于觸發網絡設備恢復默認配置的裝置還利用保留MAC作為環路檢測報文的目的MAC、以使交換芯片能夠基于其針對保留MAC所特有的可配置功能而上報環路檢測報文。進一步地,如果在恢復默認配置結束后沒有及時解除環路,則可能會形成廣播風暴、并影響現網正常業務,因此,為了避免這樣的情況發生,本發明實施例中用于觸發網絡設備恢復默認配置的裝置還可以對用于構成環路的指定端口進行特殊處理。
所述的特殊處理包括如果圖9中的配置下發模塊下發的是默認配置、則僅下發默認配置中除兩個指定端口之外的其它部分,以及,通過檢測環路是否解除的方式來決定是否能夠下發默認配置中針對兩個指定端口的剩余部分。圖10為本發明實施例中用于觸發網絡設備恢復默認配置的裝置可在恢復默認配置后進一步觸發的用于檢測環路是否解除的示例性結構示意圖。如圖10所示,本發明實施例中用于觸發網絡設備恢復默認配置的裝置進一步包括在配置下發模塊下發默認配置中除兩個指定端口之外的其它部分之后被觸發的如下模塊特殊配置執行模塊,令交換芯片將兩個指定端口相互隔離并與其他端口隔離、并使交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報;第二報文構造模塊,構造環路檢測報文發送至所述交換芯片進行轉發;第二報文檢測模塊,檢測交換芯片是否上報了經過環路環回的環路檢測報文,直至無法檢測到環回的環路檢測報文,則表示環路已解除;特殊配置取消模塊,若第二報文檢測模塊無法檢測到環回的環路檢測報文,則令交換芯片取消對兩個指定端口的相互隔離以及與其他端口的隔離、并停止將接收到的目的 MAC為保留MAC的所有報文上報;配置補發模塊,下發默認配置中針對兩個指定端口的剩余部分。另外,在上述結構中第二報文構造模塊可以進一步以預定間隔連續地構造環路檢測報文并發送至交換芯片進行轉發,優選地,為了減少CPU不必要的開銷,以預定間隔連續地構造環路檢測報文并發送至交換芯片進行轉發可以持續至第二報文檢測模塊在第二預定時間內無法檢測到環回的環路檢測報文;或者,若第二報文檢測模塊在預定第二時間內持續未檢測到環回的環路檢測報文,則認定無法檢測到環回的環路檢測報文,且,第二報文構造模塊可以進一步在第二報文檢測模塊每次檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發;再或者,若第二報文檢測模塊在預定第二時間內持續未檢測到環回的環路檢測報文的次數達到預設次數,則認定無法檢測到環回的環路檢測報文,且,第二報文檢測模塊可以執行預設次數的在第二預定時間內的檢測,此時,第二報文構造模塊可以進一步在第二報文檢測模塊每次檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發,以及在第二報文檢測模塊每次在預定第二時間內持續未檢測到環回的環路檢測報文后重新構造環路檢測報文并發送至交換芯片進行轉發、直至第二報文檢測模塊認定無法檢測到環回的環路檢測報文。如上述如圖10所示的結構可見,本發明實施例中用于觸發網絡設備恢復默認配置的裝置在兩個指定端口構成的環路觸發網絡設備恢復默認配置后,可以進一步利用環路檢測報文檢測兩個指定端口構成的環路是否解除,并且只有在兩個指定端口構成的環路被解除后才允許兩個指定端口按照默認配置的方式被使用,從而能夠在恢復默認配置后避免由于兩個指定端口構成的環路被誤保留而導致的網絡風暴。上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明保護的范圍之內。
權利要求
1.一種用于觸發網絡設備恢復默認配置的方法,其特征在于,包括al、令交換芯片將所有端口隔離、并使所述交換芯片能夠將接收到的目的MAC為保留 MAC的所有報文上報;a2、構造環路檢測報文發送至所述交換芯片進行轉發;其中,構造的所述環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的其中一個的端口號;a3、在第一預定時間內檢測所述交換芯片是否上報了經過所述環路環回的所述環路檢測報文;其中,經過所述環路環回的所述環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的另一個的端口號;a4、令所述交換芯片取消對所有端口隔離、并停止將接收到的目的MAC為保留MAC的所有報文上報;a5、若所述步驟a3檢測到了環回的所述環路檢測報文則從存儲器件讀取默認配置并下發。
2.根據權利要求1所述的方法,其特征在于,所述步驟a2進一步以預定間隔連續地構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,所述步驟a2進一步在所述步驟a3每次未能在所述第一預定時間內檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發。
3.根據權利要求1所述的方法,其特征在于,所述步驟a3進一步在檢測到環回的所述環路檢測報文后,將預設的環路檢測標記設置為表示已成功檢測到所述環路的有效值;所述步驟a5進一步依據所述環路檢測標記是否為所述有效值來判斷所述步驟a3是否檢測到了環回的所述環路檢測報文。
4.根據權利要求1所述的方法,其特征在于,所述步驟a5僅下發所述默認配置中除所述兩個指定端口之外的其它部分,且該方法進一步包括在所述步驟a6從存儲器件讀取默認配置并下發之后執行的如下步驟bl、令所述交換芯片將所述兩個指定端口相互隔離并與其他端口隔離、并使所述交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報; b2、構造所述環路檢測報文發送至所述交換芯片進行轉發; b3、檢測所述交換芯片是否上報了經過所述環路環回的所述環路檢測報文; b4、若所述步驟b3無法檢測到環回的所述環路檢測報文,則令所述交換芯片取消對所述兩個指定端口的相互隔離以及與其他端口的隔離、并停止將接收到的目的MAC為保留 MAC的所有報文上報;b5、下發所述默認配置中針對所述兩個指定端口的剩余部分。
5.根據權利要求4所述的方法,其特征在于,所述步驟1^2進一步以預定間隔連續地構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,若所述步驟b3在預定第二時間內持續未檢測到環回的所述環路檢測報文,則認定無法檢測到環回的所述環路檢測報文,且,所述步驟1^2進一步在所述步驟b3每次檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,若所述步驟b3在預定第二時間內持續未檢測到環回的所述環路檢測報文的次數達到預設次數,則認定無法檢測到環回的所述環路檢測報文,且,所述步驟1^2進一步在所述步驟b3每次檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發,以及進一步在所述步驟b3每次在預定第二時間內持續未檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發、 直至所述步驟b3認定無法檢測到環回的所述環路檢測報文。
6.根據權利要求1至5中任一項所述的方法,其特征在于,所述環路檢測報文為BPDU 報文,所述BPDU報文具有可攜帶目的MAC和端口號的報文頭。
7.一種用于觸發網絡設備恢復默認配置的裝置,其特征在于,包括第一模塊,令交換芯片將所有端口隔離、并使所述交換芯片能夠將接收到的目的MAC 為保留MAC的所有報文上報;第二模塊,構造環路檢測報文發送至所述交換芯片進行轉發;其中,構造的所述環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的其中一個的端口號;第三模塊,在第一預定時間內檢測所述交換芯片是否上報了經過所述環路環回的所述環路檢測報文;其中,經過所述環路環回的所述環路檢測報文的目的MAC為保留MAC、并攜帶有用于構成環路的兩個指定端口中的另一個的端口號;第四模塊,令所述交換芯片取消對所有端口隔離、并停止將接收到的目的MAC為保留 MAC的所有報文上報;第五模塊,若所述第三模塊檢測到了環回的所述環路檢測報文則從存儲器件讀取默認配置并下發。
8.根據權利要求7所述的裝置,其特征在于,所述第二模塊進一步以預定間隔連續地構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,所述第二模塊進一步在所述第三模塊每次未能在所述第一預定時間內檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發。
9.根據權利要求7所述的裝置,其特征在于,所述第三模塊進一步在檢測到環回的所述環路檢測報文后,將預設的環路檢測標記設置為表示已成功檢測到所述環路的有效值;所述第五模塊進一步依據所述環路檢測標記是否為所述有效值來判斷所述第三模塊是否檢測到了環回的所述環路檢測報文。
10.根據權利要求7所述的裝置,其特征在于,所述第五模塊僅下發所述默認配置中除所述兩個指定端口之外的其它部分,且該裝置進一步包括在所述第五模塊從存儲器件讀取默認配置并下發之后觸發的如下模塊第六模塊,令所述交換芯片將所述兩個指定端口相互隔離并與其他端口隔離、并使所述交換芯片能夠將接收到的目的MAC為保留MAC的所有報文上報;第七模塊,構造所述環路檢測報文發送至所述交換芯片進行轉發;第八模塊,檢測所述交換芯片是否上報了經過所述環路環回的所述環路檢測報文;第九模塊,若所述第八模塊無法檢測到環回的所述環路檢測報文,則令所述交換芯片取消對所述兩個指定端口的相互隔離以及與其他端口的隔離、并停止將接收到的目的MAC 為保留MAC的所有報文上報;第十模塊,下發所述默認配置中針對所述兩個指定端口的剩余部分。
11.根據權利要求10所述的裝置,其特征在于,所述第七模塊進一步以預定間隔連續地構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,若所述第八模塊在預定第二時間內持續未檢測到環回的所述環路檢測報文,則認定無法檢測到環回的所述環路檢測報文,且,所述第七模塊進一步在所述第八模塊每次檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發;或者,若所述第八模塊在預定第二時間內持續未檢測到環回的所述環路檢測報文的次數達到預設次數,則認定無法檢測到環回的所述環路檢測報文,且,所述第七模塊進一步在所述第八模塊每次檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發,以及進一步在所述第八模塊每次在預定第二時間內持續未檢測到環回的所述環路檢測報文后重新構造所述環路檢測報文并發送至所述交換芯片進行轉發、直至所述第八模塊認定無法檢測到環回的所述環路檢測報文。
12.根據權利要求7至11中任一項所述的裝置,其特征在于,所述環路檢測報文為 BPDU報文,所述BPDU報文具有可攜帶目的MAC和端口號的報文頭。
全文摘要
本發明提供了一種用于觸發網絡設備恢復默認配置的方法及裝置。本發明以兩個指定端口構成環路為網絡設備恢復默認配置的觸發條件,因而能夠避免以按鍵為觸發條件所導致的各種缺陷。進一步地,本發明只有在檢測到兩個指定端口構成的環路被解除后才允許兩個指定端口按照默認配置的方式被使用,從而能夠在恢復默認配置后避免由于環路被誤保留而導致的網絡風暴。
文檔編號H04L12/24GK102325046SQ20111026608
公開日2012年1月18日 申請日期2011年9月8日 優先權日2011年9月8日
發明者邢在美 申請人:杭州華三通信技術有限公司