專利名稱:一種防止由于地址老化時間不一致導(dǎo)致網(wǎng)絡(luò)中斷的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種防止由于端口MAC(媒體訪問層地址)地址和ARP老化時間不一致導(dǎo)致網(wǎng)絡(luò)管理中斷的方法,尤其涉及的是一種通訊領(lǐng)域中網(wǎng)絡(luò)交換設(shè)備在級聯(lián)組網(wǎng)時解決由于端口MAC地址和ARP老化時間不一致導(dǎo)致網(wǎng)絡(luò)中斷的方法。
背景技術(shù):
以下關(guān)于現(xiàn)有技術(shù)中的相關(guān)背景知識進行說明一、ARP緩存表和ARP老化時間ARP協(xié)議是“Address ResolutionProtocol”(地址解析協(xié)議)的縮寫,所謂“地址解析”就是主機在發(fā)送幀前將目標IP地址轉(zhuǎn)換成目標MAC地址的過程。ARP協(xié)議的基本功能就是通過目標設(shè)備的IP地址,查詢目標設(shè)備的MAC地址,以保證通信的順利進行。
在每臺安裝有TCP/IP協(xié)議的電腦里都有一個ARP緩存表,表里的IP地址與MAC地址是一一對應(yīng)的。
ARP緩存表采用了老化機制,在一段時間內(nèi)如果表中的某一項沒有使用,就會被刪除,這樣可以大大減少ARP緩存表的長度,并加快查詢速度。如果沒有老化機制,則在ARP緩存表中的表項會越來越多,而ARP緩存表的容量是有限的。這樣如果存在很多已經(jīng)不處于激活狀態(tài)的項,會導(dǎo)致后來學(xué)到的項無法保存在該表中,影響系統(tǒng)的正常運行。另外,ARP緩存表中無用項太多也會影響查詢效率,因此一般的ARP老化時間為20分鐘。
二、端口MAC地址的學(xué)習(xí)和老化時間網(wǎng)絡(luò)設(shè)備中各端口具有自動學(xué)習(xí)MAC地址的功能,通過端口發(fā)送和接收的幀的源地址,包括源MAC地址、網(wǎng)絡(luò)設(shè)備端口號,存儲到MAC地址表中。
老化時間是一個影響網(wǎng)絡(luò)設(shè)備學(xué)習(xí)進程的參數(shù),從一個地址記錄加入地址表以后開始計時,如果在老化時間內(nèi)各端口未收到源地址為該MAC地址的幀,那么,這些地址將從動態(tài)轉(zhuǎn)發(fā)地址表(即包括源MAC地址、目的MAC地址和它們相對應(yīng)的網(wǎng)絡(luò)設(shè)備的端口號)中被刪除。該老化機制的形成和ARP緩存表老化機制的原因是相同的,都是為了能夠使系統(tǒng)在功能和性能上得到提升。
三、二層交換的“未知單播包轉(zhuǎn)發(fā)”功能當(dāng)網(wǎng)絡(luò)設(shè)備從某個端口收到一個數(shù)據(jù)包,它讀取包頭中的目的MAC地址,并在MAC地址表中查找相應(yīng)的端口;如果表中有與這目的MAC地址對應(yīng)的端口,把數(shù)據(jù)包直接復(fù)制到這端口上;如果表中找不到相應(yīng)的端口,則把數(shù)據(jù)包廣播到所有端口上,當(dāng)目的機器對源機器回應(yīng)時,網(wǎng)絡(luò)設(shè)備又可以學(xué)習(xí)一目的MAC地址與哪個端口對應(yīng),并在下次傳送數(shù)據(jù)時就不再需要對所有端口進行廣播了。這就是“未知單播包轉(zhuǎn)發(fā)(forward unknow)”功能。
該功能提高了網(wǎng)絡(luò)設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)包的能力,能夠盡最大可能的轉(zhuǎn)發(fā)數(shù)據(jù)包。但這個功能也帶來了一個問題,如果網(wǎng)絡(luò)設(shè)備所處的網(wǎng)絡(luò)中出現(xiàn)環(huán)路,則會導(dǎo)致數(shù)據(jù)包的“洪泛”,會造成網(wǎng)絡(luò)的阻塞和對網(wǎng)絡(luò)設(shè)備造成沖擊。因此在很多網(wǎng)絡(luò)設(shè)備中,該功能是被關(guān)閉的。
四、當(dāng)端口MAC地址和ARP老化時間不同時,就會存在以下問題在一個局域網(wǎng)中,典型的組網(wǎng)拓撲中可能會存在多個網(wǎng)絡(luò)設(shè)備級聯(lián)的組網(wǎng)情況,如圖1所示。而在網(wǎng)絡(luò)設(shè)備中,ARP老化時間和端口MAC地址老化時間并不相同,通常ARP老化時間會大于端口MAC地址的老化時間。PC機上ARP老化時間也會長于網(wǎng)絡(luò)設(shè)備端口MAC地址老化時間。
由于ARP老化時間大于端口MAC地址老化時間,這樣便出現(xiàn)了一個問題當(dāng)PC機要向網(wǎng)絡(luò)設(shè)備2發(fā)送一個單播包時,單播包中目的MAC地址填充的是網(wǎng)絡(luò)設(shè)備2的MAC地址,當(dāng)該單播包發(fā)送到網(wǎng)絡(luò)設(shè)備1時,網(wǎng)絡(luò)設(shè)備1如果學(xué)習(xí)的網(wǎng)絡(luò)設(shè)備2的MAC地址老化了,并且網(wǎng)絡(luò)設(shè)備1又沒有打開“轉(zhuǎn)發(fā)未知單播包”功能,則會將該單播包丟棄,從而該單播包就不會到達網(wǎng)絡(luò)設(shè)備2。
這種情況的實際應(yīng)用是在通訊業(yè)務(wù)提供者的網(wǎng)絡(luò)管理人員在對網(wǎng)絡(luò)設(shè)備進行管理時,在pc機運行網(wǎng)管軟件,此時網(wǎng)絡(luò)設(shè)備2是需要管理的網(wǎng)絡(luò)設(shè)備。如果出現(xiàn)了上述的原因,直接的體現(xiàn)就是網(wǎng)管軟件和網(wǎng)絡(luò)設(shè)備的連接中斷,無法管理該網(wǎng)絡(luò)設(shè)備。
由于ARP老化時間會長于端口MAC地址的老化時間,因此會導(dǎo)致上述的問題。
目前的解決方法是將網(wǎng)絡(luò)中的各種設(shè)備的ARP老化時間和端口MAC地址老化時間修改為相同值。但這種解決方法有以下幾個缺點如果延長端口MAC地址的老化時間和ARP老化時間相同,則會導(dǎo)致網(wǎng)絡(luò)設(shè)備交換性能的降低;而如果要把ARP老化時間減小到和端口MAC地址老化時間相同,則會導(dǎo)致網(wǎng)絡(luò)中地址解析協(xié)議請求包ARP Req廣播包太多,會影響整個網(wǎng)絡(luò)的性能。很多網(wǎng)絡(luò)設(shè)備并不允許把端口MAC地址老化時間設(shè)置太長時間;很多網(wǎng)絡(luò)設(shè)備或者網(wǎng)絡(luò)設(shè)備并不支持ARP老化時間的修改功能;或即使支持修改ARP老化時間,在網(wǎng)絡(luò)中網(wǎng)絡(luò)設(shè)備和計算機數(shù)量太多時,并且很多計算機是屬于客戶使用的計算機,也不能保證所有的網(wǎng)絡(luò)設(shè)備和計算機都能進行修改,保證一致。
正由于這種方法存在現(xiàn)有的缺點,因此需要考慮采取一種更容易實現(xiàn)的方法來解決這個問題。
發(fā)明內(nèi)容本發(fā)明的目的是為了解決目前組網(wǎng)中由于ARP地址老化時間和端口地址老化時間不一致時,導(dǎo)致網(wǎng)管連接中斷的問題,而提出的一種解決由于地址老化時間不一致導(dǎo)致網(wǎng)絡(luò)中斷的方法。
本發(fā)明的技術(shù)方案如下
一種解決由于地址老化時間不一致導(dǎo)致網(wǎng)絡(luò)中斷的方法,其包括步驟A、在網(wǎng)絡(luò)設(shè)備中增加一個功能模塊,周期性獲取該網(wǎng)絡(luò)設(shè)備中路由表中的所有下一跳網(wǎng)關(guān)的信息,并主動向這些下一跳網(wǎng)關(guān)發(fā)送地址解析協(xié)議請求包報文,這些報文中攜帶本網(wǎng)絡(luò)設(shè)備的MAC地址;B、所述地址解析協(xié)議請求包報文發(fā)送給和該網(wǎng)絡(luò)設(shè)備相連的其他網(wǎng)絡(luò)設(shè)備,以使其他網(wǎng)絡(luò)設(shè)備學(xué)習(xí)到本網(wǎng)絡(luò)設(shè)備的MAC地址,所述發(fā)送地址解析協(xié)議請求包報文的時間間隔短于該網(wǎng)絡(luò)設(shè)備端口MAC地址的老化時間。
所述的方法,其中,還具體包括步驟A1、獲取本網(wǎng)絡(luò)設(shè)備路由表中下一跳網(wǎng)關(guān)的地址列表;B1、判斷是否獲取到下一跳網(wǎng)關(guān)地址,如果沒有獲取到,則等待一預(yù)定時間后重復(fù)步驟A1;C1、如果獲取到下一跳網(wǎng)關(guān)地址,則按照順序?qū)γ恳粋€地址進行下面的處理。
所述的方法,其中,所述步驟C1還包括C11、對下一跳網(wǎng)關(guān)的IP地址,創(chuàng)建地址解析協(xié)議請求包報文,目的IP地址填入該下一跳網(wǎng)關(guān)的IP地址;源IP地址和源MAC地址填入本系統(tǒng)的IP地址和MAC地址;目的MAC地址填入廣播MAC地址;C12、將該地址解析協(xié)議請求包報文在本網(wǎng)絡(luò)設(shè)備的物理端口發(fā)送到網(wǎng)絡(luò)上。
所述的方法,其中,所述等待一預(yù)定時間的選擇策略為預(yù)定時間×本系統(tǒng)中能夠容納的最多的下一跳網(wǎng)關(guān)個數(shù)<MAC地址老化時間。
本發(fā)明所提供的一種解決由于地址老化時間不一致導(dǎo)致網(wǎng)絡(luò)中斷的方法,由于采用能夠使得網(wǎng)絡(luò)設(shè)備避免和網(wǎng)管計算機連接中斷故障的方案,并且不修改ARP老化時間,也不修改端口MAC地址老化時間,僅僅定期發(fā)送ARP Req(地址解析協(xié)議請求)數(shù)據(jù)包,通過選擇合適的時間間隔,對網(wǎng)絡(luò)的性能,功能等幾乎沒有影響,并使得網(wǎng)絡(luò)設(shè)備在實際的組網(wǎng)應(yīng)用中更加靈活,增加了網(wǎng)絡(luò)設(shè)備的適應(yīng)性和靈活性,降低了網(wǎng)絡(luò)管理和故障處理的復(fù)雜性。
圖1為現(xiàn)有技術(shù)的網(wǎng)絡(luò)組網(wǎng)拓撲示意圖;圖2為本發(fā)明方法的處理流程圖。
具體實施方式以下結(jié)合附圖,將對本發(fā)明的各較佳實施例進行較為詳細的說明。
在本發(fā)明方法中,使用的是網(wǎng)絡(luò)設(shè)備路由表中包含的下一跳網(wǎng)關(guān)信息,以用來解決ARP老化時間和端口MAC地址老化時間不同時,導(dǎo)致的網(wǎng)管連接中斷的問題。
本發(fā)明方法須在網(wǎng)絡(luò)設(shè)備中增加一個功能模塊,以能夠周期性的獲取網(wǎng)絡(luò)設(shè)備中路由表中的所有下一跳網(wǎng)關(guān)的信息,并主動向這些下一跳網(wǎng)關(guān)發(fā)送ARP Req報文,這些報文中會攜帶本網(wǎng)絡(luò)設(shè)備的MAC地址,發(fā)送給和網(wǎng)絡(luò)設(shè)備相連的其他網(wǎng)絡(luò)設(shè)備,從而可以使得其他網(wǎng)絡(luò)設(shè)備學(xué)習(xí)到本網(wǎng)絡(luò)設(shè)備的MAC地址。如果發(fā)送ARP Req的時間間隔短于端口MAC地址老化時間,則能夠保證其他網(wǎng)絡(luò)設(shè)備不會老化本網(wǎng)絡(luò)設(shè)備的MAC地址,這樣就可以保證其他的網(wǎng)絡(luò)設(shè)備能夠把應(yīng)該發(fā)送給本網(wǎng)絡(luò)設(shè)備的數(shù)據(jù)包正確的轉(zhuǎn)發(fā)給本網(wǎng)絡(luò)設(shè)備。
本發(fā)明方法的處理流程如圖2所示的,具體描述如下首先,獲取本網(wǎng)絡(luò)設(shè)備路由表中下一跳網(wǎng)關(guān)的地址列表。定期獲取是為了保證在網(wǎng)絡(luò)設(shè)備更新了路由表信息后,能夠采用新的信息。定期獲取還為了防止頻繁獲取下一跳信息導(dǎo)致對系統(tǒng)性能的影響。
其次,判斷是否獲取到下一跳網(wǎng)關(guān)地址如果沒有獲取到,則說明本系統(tǒng)中尚未配置下一跳信息,獲知動態(tài)路由協(xié)議尚未獲取到動態(tài)的路由信息,等待一段時間,例如5秒,再次重復(fù)前一步驟。等待一段時間的目的是,防止在系統(tǒng)沒有路由信息時,不停進行前一步驟,導(dǎo)致占用太多系統(tǒng)資源的問題。
再次,如果獲取到下一跳網(wǎng)關(guān)地址,則按照順序?qū)γ恳粋€地址進行下面的處理。
對下一跳網(wǎng)關(guān)的IP地址,創(chuàng)建ARP Req數(shù)據(jù)包,目的IP地址填入下一跳網(wǎng)關(guān)的IP地址;源IP地址和源MAC地址填入本系統(tǒng)的IP地址和MAC地址;目的MAC地址填入廣播MAC地址。
將ARP Req在本網(wǎng)絡(luò)設(shè)備適當(dāng)?shù)奈锢矶丝诎l(fā)送到網(wǎng)絡(luò)上,選擇適當(dāng)?shù)奈锢矶丝谑蔷W(wǎng)絡(luò)設(shè)備所固有的功能,也是網(wǎng)絡(luò)設(shè)備的基本功能,此不在本方法描述之列,已為現(xiàn)有技術(shù)所公知。而創(chuàng)建ARP Req數(shù)據(jù)包在所有支持TCP/IP協(xié)議棧的系統(tǒng)中也都有現(xiàn)成的函數(shù)可以調(diào)用,實現(xiàn)方法也不在本方法的描述之列。
等待一段時間等待一段時間的目的是為了在每次發(fā)送ARP Req消息之間能夠使系統(tǒng)處理其他的任務(wù)。也防止短時間大量發(fā)送ARPReq消息對網(wǎng)絡(luò)造成沖擊。該時間的選擇策略為時間(t)×本系統(tǒng)中能夠容納的最多的下一跳網(wǎng)關(guān)個數(shù)<MAC地址老化時間。一般系統(tǒng)的老化時間為120秒左右。因此,如果系統(tǒng)中容納的最大下一跳網(wǎng)關(guān)個數(shù)為20,則推薦的t為5秒。這樣的時間,可以保證每一個下一跳網(wǎng)關(guān)都能夠在最長100秒時間內(nèi)收到本系統(tǒng)發(fā)送的ARP Req消息,從而更新這些設(shè)備的Mac地址表。
雖然上述描述了本發(fā)明方法的具體實施例,然而本領(lǐng)域的技術(shù)人員會理解,在不偏離本發(fā)明宗旨和范圍的前提下可以進行各種形式和細節(jié)的修改和改進,而所有這些修改和改進都應(yīng)屬于本發(fā)明的專利保護范圍。
權(quán)利要求
1.一種解決由于地址老化時間不一致導(dǎo)致網(wǎng)絡(luò)中斷的方法,其包括步驟A、在網(wǎng)絡(luò)設(shè)備中增加一個功能模塊,周期性獲取該網(wǎng)絡(luò)設(shè)備中路由表中的所有下一跳網(wǎng)關(guān)的信息,并主動向這些下一跳網(wǎng)關(guān)發(fā)送地址解析協(xié)議請求包報文,這些報文中攜帶本網(wǎng)絡(luò)設(shè)備的媒體訪問層地址;B、所述地址解析協(xié)議請求包報文發(fā)送給和該網(wǎng)絡(luò)設(shè)備相連的其他網(wǎng)絡(luò)設(shè)備,以使其他網(wǎng)絡(luò)設(shè)備學(xué)習(xí)到本網(wǎng)絡(luò)設(shè)備的媒體訪問層地址,所述發(fā)送地址解析協(xié)議請求包報文的時間間隔短于該網(wǎng)絡(luò)設(shè)備端口媒體訪問層地址的老化時間。
2.根據(jù)權(quán)利要求
1所述的方法,其特征在于,還具體包括步驟A1、獲取本網(wǎng)絡(luò)設(shè)備路由表中下一跳網(wǎng)關(guān)的地址列表;B1、判斷是否獲取到下一跳網(wǎng)關(guān)地址,如果沒有獲取到,則等待一預(yù)定時間后重復(fù)步驟A1;C1、如果獲取到下一跳網(wǎng)關(guān)地址,則按照順序?qū)γ恳粋€地址進行下面的處理。
3.根據(jù)權(quán)利要求
2所述的方法,其特征在于,所述步驟C1還包括C11、對下一跳網(wǎng)關(guān)的IP地址,創(chuàng)建地址解析協(xié)議請求包報文,目的IP地址填入該下一跳網(wǎng)關(guān)的IP地址;源IP地址和源媒體訪問層地址填入本系統(tǒng)的IP地址和媒體訪問層地址;目的媒體訪問層地址填入廣播媒體訪問層地址;C12、將該地址解析協(xié)議請求包報文在本網(wǎng)絡(luò)設(shè)備的物理端口發(fā)送到網(wǎng)絡(luò)上。
4.根據(jù)權(quán)利要求
3所述的方法,其特征在于,所述等待一預(yù)定時間的選擇策略為預(yù)定時間×本系統(tǒng)中能夠容納的最多的下一跳網(wǎng)關(guān)個數(shù)<媒體訪問層地址老化時間。
專利摘要
本發(fā)明公開了一種防止由于地址老化時間不一致導(dǎo)致網(wǎng)絡(luò)中斷的方法,其包括步驟在網(wǎng)絡(luò)設(shè)備中增加一個功能模塊,周期性獲取該網(wǎng)絡(luò)設(shè)備中路由表中的所有下一跳網(wǎng)關(guān)的信息,并主動向這些下一跳網(wǎng)關(guān)發(fā)送地址解析協(xié)議請求包報文,這些報文中攜帶本網(wǎng)絡(luò)設(shè)備的MAC地址;所述地址解析協(xié)議請求包報文發(fā)送給和該網(wǎng)絡(luò)設(shè)備相連的其他網(wǎng)絡(luò)設(shè)備,以使其他網(wǎng)絡(luò)設(shè)備學(xué)習(xí)到本網(wǎng)絡(luò)設(shè)備的MAC地址,所述發(fā)送地址解析協(xié)議請求包報文的時間間隔短于該網(wǎng)絡(luò)設(shè)備端口MAC地址的老化時間。本發(fā)明方法通過選擇合適的時間間隔,對網(wǎng)絡(luò)的性能,功能等幾乎沒有影響,并使得網(wǎng)絡(luò)設(shè)備在實際的組網(wǎng)應(yīng)用中更加靈活,降低了網(wǎng)絡(luò)管理和故障處理的復(fù)雜性。
文檔編號H04L29/06GK1992672SQ200510121372
公開日2007年7月4日 申請日期2005年12月27日
發(fā)明者王峰 申請人:中興通訊股份有限公司導(dǎo)出引文BiBTeX, EndNote, RefMan