本申請涉及數(shù)據(jù)通信領(lǐng)域,尤其涉及一種環(huán)網(wǎng)地址表項更新機制方法及裝置。
背景技術(shù):
:在視頻監(jiān)控中,由一個指定網(wǎng)絡(luò)設(shè)備和多個無管理交換機連接構(gòu)成環(huán)網(wǎng)。其中,指定網(wǎng)絡(luò)設(shè)備類似網(wǎng)絡(luò)交換機,存在主、輔端口,在網(wǎng)絡(luò)正常時,輔端口處于關(guān)閉狀態(tài),在網(wǎng)絡(luò)異常時開啟輔端口。無管理交換機為低成本交換機,由管理員被設(shè)置成最基本的網(wǎng)絡(luò)二層/三層轉(zhuǎn)發(fā)設(shè)備而部署在網(wǎng)絡(luò)中。圖1示出了指定網(wǎng)絡(luò)設(shè)備和多個無管理交換機連接組成的環(huán)網(wǎng)結(jié)構(gòu)圖。以交換機6下的PC(personalcomputer,個人計算機)發(fā)送報文訪問交換機2下的監(jiān)控設(shè)備(IPC,InternetProtocolCamra,即網(wǎng)絡(luò)攝像機)為例,網(wǎng)絡(luò)正常時,指定網(wǎng)絡(luò)設(shè)備的輔端口處于關(guān)閉狀態(tài),PC發(fā)送的報文按照以下路徑(標記為路徑1)轉(zhuǎn)發(fā)到達交換機2下的監(jiān)控設(shè)備:PC->交換機6->交換機5->交換機4->交換機3->交換機2->監(jiān)控設(shè)備。網(wǎng)絡(luò)故障比如交換機5和交換機4之間的鏈路故障時,指定網(wǎng)絡(luò)設(shè)備放開輔端口,此時,PC發(fā)送的報文需經(jīng)由以下路徑(記為路徑2)達到交換機2下的監(jiān)控設(shè)備:PC->交換機6->交換機7->指定網(wǎng)絡(luò)設(shè)備(輔端口)->指定網(wǎng)絡(luò)設(shè)備(主端口)->交換機1->交換機2->監(jiān)控設(shè)備。按照路徑2轉(zhuǎn)發(fā)報文時需要路徑2上各交換機刷新本地地址表項比如ARP(AddressResolutionProtocol,地址解析協(xié)議)或者MAC地址(MediaAccessControl,物理地址)表項,但此時路徑2上各交換機的地址表項并未刷新,其需等已有的地址表現(xiàn)老化后才能刷新,這一等待過程一般比較長,導(dǎo)致在網(wǎng)絡(luò)故障時,各交換機設(shè)備無法快速刷新地址表項。技術(shù)實現(xiàn)要素:有鑒于此,本申請?zhí)峁┮环N環(huán)網(wǎng)地址表項更新機制方法及裝置,以解決現(xiàn)有技術(shù)中存在的當環(huán)網(wǎng)發(fā)送網(wǎng)絡(luò)故障時,環(huán)網(wǎng)中各設(shè)備的地址表項刷新較慢的問題。具體地,本申請是通過如下技術(shù)方案實現(xiàn)的:一種環(huán)網(wǎng)地址表項更新機制方法,應(yīng)用于環(huán)網(wǎng)中的網(wǎng)絡(luò)設(shè)備,所述網(wǎng)絡(luò)設(shè)備包括主端口和輔端口,該方法包括:在所述環(huán)網(wǎng)正常時,阻塞所述輔端口;在所述環(huán)網(wǎng)故障時,打開所述輔端口,基于本地存儲的環(huán)網(wǎng)中其他各設(shè)備的IP地址構(gòu)造ARP廣播報文并通過主端口和輔端口廣播;接收環(huán)網(wǎng)中其他各設(shè)備針對接收的ARP廣播報文單播返回的ARP單播響應(yīng)報文;通過除接收到ARP單播響應(yīng)報文的端口之外的另一端口廣播接收的ARP單播響應(yīng)報文,其中,當接收到ARP單播響應(yīng)報文的端口為主端口時,所述另一端口為輔端口;當接收到ARP單播響應(yīng)報文的端口為輔端口時,所述另一端口為主端口。進一步地,所述通過除接收到ARP單播響應(yīng)報文的端口之外的另一端口廣播接收的ARP單播響應(yīng)報文包括:將接收的ARP單播響應(yīng)報文修改為廣播報文,并通過除接收到ARP單播響應(yīng)報文的端口之外的另一端口發(fā)送。進一步地,所述接收環(huán)網(wǎng)中其他各設(shè)備針對接收的ARP廣播報文返回的ARP單播響應(yīng)報文進一步包括:獲取接收的ARP單播響應(yīng)報文的源IP地址并將本地存儲的環(huán)網(wǎng)中各設(shè)備的IP地址替換成該獲取的源IP地址;該方法還包括:當環(huán)網(wǎng)故障消除時,關(guān)閉已打開的輔端口;基于本地存儲的每一IP地址構(gòu)造ARP廣播報文并通過主端口廣播;接收環(huán)網(wǎng)中其他各設(shè)備針對本設(shè)備發(fā)送的ARP廣播報文單播返回的ARP單播響應(yīng)報文,獲取接收的ARP單播響應(yīng)報文的源IP地址并將本地存儲的環(huán)網(wǎng)中各設(shè)備的IP地址替換成該獲取的源IP地址,將接收的ARP單播響應(yīng)報文修改為廣播報文并通過主端口廣播。進一步地,將接收的ARP單播響應(yīng)報文修改為廣播報文包括:將接收的ARP單播響應(yīng)報文的二層目的MAC地址修改為設(shè)定的廣播MAC地址,所述ARP單播響應(yīng)報文中的源MAC地址不變,修改后的ARP單播響應(yīng)報文為廣播報文。進一步地,所述檢測環(huán)網(wǎng)網(wǎng)絡(luò)故障通過以下步驟確定:通過主端口發(fā)送鏈路狀態(tài)檢測報文;當在設(shè)定時間內(nèi)未通過輔端口接收到所述鏈路狀態(tài)檢測報文,則確定環(huán)網(wǎng)網(wǎng)絡(luò)故障。對應(yīng)于本申請的環(huán)網(wǎng)地址表項更新機制方法,本申請還提供一種環(huán)網(wǎng)地址表項更新機制裝置。一種環(huán)網(wǎng)地址表項更新機制裝置,應(yīng)用于環(huán)網(wǎng)中的網(wǎng)絡(luò)設(shè)備,所述網(wǎng)絡(luò)設(shè)備包括主端口和輔端口,該裝置包括:端口控制模塊,在所述環(huán)網(wǎng)正常時,阻塞所述輔端口,并在所述環(huán)網(wǎng)故障時,打開所述輔端口;存儲模塊,本地存儲環(huán)網(wǎng)中其他各設(shè)備的IP地址;廣播報文構(gòu)造模塊,若所述端口控制模塊打開所述輔端口,則基于本地存儲的環(huán)網(wǎng)中其他各設(shè)備的IP地址構(gòu)造ARP廣播報文;發(fā)送模塊,通過主端口和輔端口廣播所述ARP廣播報文;接收模塊,接收環(huán)網(wǎng)中其他各設(shè)備針對接收的ARP廣播報文單播返回的ARP單播響應(yīng)報文;所述發(fā)送模塊通過除接收到ARP單播響應(yīng)報文的端口之外的另一端口廣播接收的ARP單播響應(yīng)報文,其中,當接收到ARP單播響應(yīng)報文的端口為主端口時,所述另一端口為輔端口;當接收到ARP單播響應(yīng)報文的端口為輔端口時,所述另一端口為主端口。進一步地,還包括:報文格式轉(zhuǎn)換模塊,將接收的ARP單播響應(yīng)報文修改為廣播報文;所述發(fā)送模塊通過除接收到ARP單播響應(yīng)報文的端口之外的另一端口發(fā)送所述廣播報文。進一步地,所述存儲模塊獲取接收的ARP單播響應(yīng)報文的源IP地址并將本地存儲的環(huán)網(wǎng)中各設(shè)備的IP地址替換成該獲取的源IP地址;所述端口控制模塊在環(huán)網(wǎng)故障消除時,關(guān)閉已打開的輔端口;所述廣播報文構(gòu)造模塊基于本地存儲的每一IP地址構(gòu)造ARP廣播報文;所述發(fā)送模塊通過主端口廣播所述ARP廣播報文;所述接收模塊接收環(huán)網(wǎng)中其他各設(shè)備針對本設(shè)備發(fā)送的ARP廣播報文單播返回的ARP單播響應(yīng)報文;所述存儲模塊獲取接收的ARP單播響應(yīng)報文的源IP地址并將本地存儲的環(huán)網(wǎng)中各設(shè)備的IP地址替換成該獲取的源IP地址;所述報文格式轉(zhuǎn)換模塊將接收的ARP單播響應(yīng)報文修改為廣播報文;所述發(fā)送模塊通過主端口廣播所述廣播報文。進一步地,所述報文格式轉(zhuǎn)換模塊包括:將接收的ARP單播響應(yīng)報文的二層目的MAC地址修改為設(shè)定的廣播MAC地址,所述ARP單播響應(yīng)報文中的源MAC地址不變,修改后的ARP單播響應(yīng)報文為廣播報文。進一步地,所述網(wǎng)絡(luò)故障檢測模塊包括:檢測消息發(fā)送子模塊,通過主端口發(fā)送鏈路狀態(tài)檢測報文;檢測子模塊,在設(shè)定時間內(nèi)檢測輔端口是否接收到所述鏈路狀態(tài)檢測報文;判斷子模塊,當在設(shè)定時間內(nèi)未通過輔端口接收到所述鏈路狀態(tài)檢測報文,則確定環(huán)網(wǎng)網(wǎng)絡(luò)故障。本申請的有益效果:在環(huán)網(wǎng)網(wǎng)絡(luò)故障后放開輔端口,并偽造環(huán)網(wǎng)中其他各設(shè)備廣播免費的ARP廣播報文,各設(shè)備在判斷出地址沖突后主動單播返回ARP單播響應(yīng)報文至網(wǎng)絡(luò)設(shè)備,使得網(wǎng)絡(luò)設(shè)備實時獲得環(huán)網(wǎng)中其他各設(shè)備的地址學習端口,并通過除地址學習端口之外的另一端口轉(zhuǎn)發(fā)各設(shè)備的設(shè)備地址至環(huán)網(wǎng)中,使得環(huán)網(wǎng)中的各設(shè)備能夠迅速、主動更新本地地址表項,而無需等待地址表項老化后再被動更新。附圖說明圖1是現(xiàn)有技術(shù)的視頻監(jiān)控環(huán)網(wǎng)結(jié)構(gòu)的結(jié)構(gòu)示意圖;圖2是本實施例提供的一種環(huán)網(wǎng)地址表項更新機制方法流程圖;圖3是本實施例提供的ARP廣播報文的格式圖;圖4是本實施例提供的一種環(huán)網(wǎng)地址表項更新機制裝置的結(jié)構(gòu)圖。具體實施方式這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本申請相一致的所有實施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本申請的一些方面相一致的裝置和方法的例子。參見圖2,本實施例提供的一種環(huán)網(wǎng)地址表項更新機制方法,應(yīng)用于環(huán)網(wǎng)中的網(wǎng)絡(luò)設(shè)備,網(wǎng)絡(luò)設(shè)備包括主端口和輔端口。其中,網(wǎng)絡(luò)設(shè)備的主端口和輔端口之間連接有多個無管理交換機(每個無管理交換機對應(yīng)一個節(jié)點),每個無管理交換機可連接多個設(shè)備(例如PC、IPC等)。本實施例的環(huán)網(wǎng)地址表項更新機制方法包括如下步驟:S101,在環(huán)網(wǎng)正常時,阻塞輔端口;其中,阻塞輔端口相當于輔端口與環(huán)網(wǎng)鏈路無連接,其只能夠接收來自主端口的鏈路狀態(tài)檢測消息,但不具備其它功能。S102,在環(huán)網(wǎng)故障時,打開所述輔端口,基于本地存儲的環(huán)網(wǎng)中其他各設(shè)備的IP地址構(gòu)造ARP廣播報文并通過主端口和輔端口廣播;其中,ARP是根據(jù)IP(InternetProtocol,網(wǎng)絡(luò)協(xié)議)地址獲取物理地址的一個TCP(TransmissionControlProtocol傳輸控制協(xié)議)/IP協(xié)議。本實施例中,網(wǎng)絡(luò)設(shè)備對環(huán)網(wǎng)網(wǎng)絡(luò)實時檢測,判斷是否存在故障,例如兩個節(jié)點之間的通信鏈路斷開,使得這兩個節(jié)點下的設(shè)備之間不能通信,則確定環(huán)網(wǎng)網(wǎng)絡(luò)發(fā)生故障。網(wǎng)絡(luò)設(shè)備進行環(huán)網(wǎng)網(wǎng)絡(luò)故障的判斷過程為:通過主端口發(fā)送鏈路狀態(tài)檢測報文;當在設(shè)定時間內(nèi)未通過輔端口接收到鏈路狀態(tài)檢測報文,則確定環(huán)網(wǎng)網(wǎng)絡(luò)故障。該定時時間的大小可根據(jù)需要設(shè)置。在一具體實施例中,設(shè)定時間為50ms,主端口定時(50ms)發(fā)送鏈路狀態(tài)檢測報文至環(huán)網(wǎng)網(wǎng)絡(luò)中,以及時識別出網(wǎng)絡(luò)故障狀態(tài),以更快速地進行各節(jié)點存儲地址表項的刷新。在50ms內(nèi),輔端口若能接收到自主端口發(fā)送的鏈路狀態(tài)檢測報文,則表明環(huán)網(wǎng)中各節(jié)點之間的鏈路正常通信,環(huán)網(wǎng)網(wǎng)絡(luò)正常;當在50ms內(nèi)未通過輔端口接收到鏈路狀態(tài)檢測報文,則確定環(huán)網(wǎng)網(wǎng)絡(luò)故障。本實施中,在網(wǎng)絡(luò)正常時,網(wǎng)絡(luò)設(shè)備收集環(huán)網(wǎng)中各節(jié)點下的其他各設(shè)備的設(shè)備信息(至少包括IP地址)并進行本地存儲。其中,各設(shè)備的設(shè)備信息還包括該設(shè)備的MAC地址和地址學習端口。參見表1,網(wǎng)絡(luò)設(shè)備的主端口會將環(huán)網(wǎng)中其他各設(shè)備的IP地址、MAC地址和地址學習端口一一對應(yīng)保存于本地數(shù)據(jù)庫中,以方便環(huán)網(wǎng)通信時,通過主端口學習獲取地址信息。表1IP地址MAC地址地址學習端口192.168.25.848-ea-63-0b-fb-36主端口192.168.25.948-ea-63-0b-fb-37主端口參見圖3,為ARP廣播報文的格式。網(wǎng)絡(luò)設(shè)備通過表1中的每一設(shè)備的IP地址構(gòu)造免費的ARP,具體是將每一設(shè)備的IP地址分別填入ARP廣播報文“發(fā)送端IP地址”和“目的IP地址”這兩個字段,以偽造該設(shè)備發(fā)出免費ARP廣播報文。在構(gòu)造完每一設(shè)備的ARP廣播報文后,網(wǎng)絡(luò)設(shè)備通過自身的主端口和輔端口廣播這些免費ARP廣播報文。S103,接收環(huán)網(wǎng)中其他各設(shè)備針對接收的ARP廣播報文單播返回的ARP單播響應(yīng)報文;本實施例中,由于網(wǎng)絡(luò)設(shè)備偽造其他各設(shè)備發(fā)送免費ARP廣播報文消息,其他各設(shè)備針對接收到的ARP廣播報文,判斷出ARP廣播報文內(nèi)的IP地址與本設(shè)備的IP地址沖突,則單播返回ARP單播響應(yīng)報文至網(wǎng)絡(luò)設(shè)備,該ARP單播響應(yīng)報文攜帶各設(shè)備的源IP地址和源MAC地址。具體地,各設(shè)備在判斷出地址沖突后,將該設(shè)備的源IP地址和源MAC地址填寫在ARP單播響應(yīng)報文消息中,并將該ARP單播響應(yīng)報文報文單播向網(wǎng)絡(luò)設(shè)備進行回應(yīng),實現(xiàn)消息反饋的及時性。在網(wǎng)絡(luò)設(shè)備接收到其他各設(shè)備反饋的設(shè)備地址消息后,獲取接收的ARP單播響應(yīng)報文的源IP地址并將本地存儲的環(huán)網(wǎng)中各設(shè)備的IP地址替換成該獲取的源IP地址,參見表2,網(wǎng)絡(luò)設(shè)備將其他各設(shè)備的IP地址、MAC地址和地址學習端口一一對應(yīng)保存于數(shù)據(jù)庫中,覆蓋原來的表1。表2IP地址MAC地址地址學習端口192.168.25.848-ea-63-0b-fb-36主端口192.168.25.948-ea-63-0b-fb-37輔端口如表示2所示,環(huán)網(wǎng)中的其他各設(shè)備在環(huán)網(wǎng)網(wǎng)絡(luò)正常時是從主端口學習地址表項的,在環(huán)網(wǎng)故障后,則部分設(shè)備會變成從輔端口學習地址表項,另一部分設(shè)備繼續(xù)保持從主端口學習地址表項。網(wǎng)絡(luò)設(shè)備接收到的環(huán)網(wǎng)中其他各設(shè)備反饋的ARP單播響應(yīng)報文的端口即為該設(shè)備的地址學習端口,從而實現(xiàn)在環(huán)網(wǎng)發(fā)生故障后,網(wǎng)絡(luò)設(shè)備能及時獲得其學習環(huán)網(wǎng)中其他各設(shè)備地址信息的端口。S104,通過除接收到ARP單播響應(yīng)報文的端口之外的另一端口廣播接收的ARP單播響應(yīng)報文,其中,當接收到ARP單播響應(yīng)報文的端口為主端口時,所述另一端口為輔端口;當接收到ARP單播響應(yīng)報文的端口為輔端口時,所述另一端口為主端口。本實施例中,網(wǎng)絡(luò)設(shè)備將接收的ARP單播響應(yīng)報文修改為廣播報文,并通過除接收到ARP單播響應(yīng)報文的端口之外的另一端口發(fā)送。在一具體實施例中,網(wǎng)絡(luò)設(shè)備將接收的ARP單播響應(yīng)報文修改為廣播報文的實現(xiàn)步驟如下:網(wǎng)絡(luò)設(shè)備將接收的ARP單播響應(yīng)報文的二層目的MAC地址修改為設(shè)定的廣播MAC地址,ARP單播響應(yīng)報文中的源MAC地址不變,修改后的ARP單播響應(yīng)報文為廣播報文。在將ARP單播響應(yīng)報文修改為廣播報文時,其報文內(nèi)容不做改變,即二層封裝內(nèi)部的內(nèi)容仍然為原ARP單播響應(yīng)報文內(nèi)部攜帶的其他設(shè)備的真實IP地址和MAC地址。各設(shè)備能夠主動學習廣播報文內(nèi)部(不含二層封裝)的源IP地址和MAC地址,由于廣播報文內(nèi)部是環(huán)網(wǎng)各無管理交換機下的各設(shè)備的真實IP地址和MAC地址,在二層范圍內(nèi)的所有設(shè)備均能學習到各無管理交換機下的各設(shè)備的真實IP地址和MAC地址并更新本地ARP表或MAC地址表項,從而主動、迅速刷新本地地址表項。在一具體實施例中,一無管理交換機下的設(shè)備的實時IP地址為192.168.25.8,MAC地址為48-ea-63-0b-fb-36,網(wǎng)絡(luò)設(shè)備通過主端口學習到該設(shè)備的地址信息,,則網(wǎng)絡(luò)設(shè)備將該設(shè)備的ARP單播響應(yīng)報文轉(zhuǎn)換為廣播報文,從輔端口廣播出去,由從網(wǎng)絡(luò)設(shè)備輔端口返回ARP單播響應(yīng)報文的設(shè)備接收并刷新本地地址表項,學習該設(shè)備(實時IP地址為192.168.25.8,MAC地址為48-ea-63-0b-fb-36)的地址信息。在又一具體實施例中,一無管理交換機下的設(shè)備的實時IP地址為192.168.25.9,源MAC地址為48-ea-63-0b-fb-37,網(wǎng)絡(luò)設(shè)備通過輔端口學習到該設(shè)備的地址信息,則網(wǎng)絡(luò)設(shè)備將該設(shè)備的ARP單播響應(yīng)報文轉(zhuǎn)換為廣播報文,從主端口廣播出去,由從網(wǎng)絡(luò)設(shè)備主端口返回ARP單播響應(yīng)報文的設(shè)備接收并刷新本地地址表項,學習該設(shè)備(實時IP地址為192.168.25.9,源MAC地址為48-ea-63-0b-fb-37)的地址信息。當然,如果環(huán)網(wǎng)中的某個無管理交換機的兩側(cè)鏈路全部發(fā)生故障,那么,這個無管理交換機則徹底失去與環(huán)網(wǎng)中其它無管理交換機交換信息的能力,這個無管理交換機則不能通過自身的連接接口來學習環(huán)網(wǎng)中其它無管理交換機下各設(shè)備的地址信息的能力。本實施例提供的環(huán)網(wǎng)地址表項更新機制方法還包括如下步驟:網(wǎng)絡(luò)設(shè)備實時對環(huán)網(wǎng)網(wǎng)絡(luò)進行檢測,若檢測到環(huán)網(wǎng)故障消除,則關(guān)閉已打開的輔端口,使得環(huán)網(wǎng)網(wǎng)絡(luò)中的其他各設(shè)備只能通過主端口學習,恢復(fù)環(huán)網(wǎng)網(wǎng)絡(luò)通信的速度。在關(guān)閉已打開的輔端口后,網(wǎng)絡(luò)設(shè)備執(zhí)行如下操作:基于本地存儲的每一IP地址構(gòu)造ARP廣播報文并通過主端口廣播;接收環(huán)網(wǎng)中其他各設(shè)備針對本設(shè)備發(fā)送的ARP廣播報文單播返回的ARP單播響應(yīng)報文,獲取接收的ARP單播響應(yīng)報文的源IP地址并將本地存儲的環(huán)網(wǎng)中各設(shè)備的IP地址替換成該獲取的源IP地址,將接收的ARP單播響應(yīng)報文修改為廣播報文并通過主端口廣播,使得在環(huán)網(wǎng)發(fā)生變化后,環(huán)網(wǎng)中其他各設(shè)備不用被動等待刷新,而是主動、快速更新本地地址表項。本實施例的環(huán)網(wǎng)地址表項更新機制方法,在環(huán)網(wǎng)網(wǎng)絡(luò)故障后放開輔端口,并偽造各設(shè)備廣播免費的ARP廣播報文,各設(shè)備在判斷出地址沖突后主動單播回應(yīng)ARP單播響應(yīng)報文,使得網(wǎng)絡(luò)設(shè)備實時獲得環(huán)網(wǎng)中其他各設(shè)備的地址學習端口,并通過除該設(shè)備的地址學習端口之外的另一端口廣播ARP單播響應(yīng)報文,從而使得環(huán)網(wǎng)中的其他各設(shè)備能夠迅速、主動更新本地地址表項,而無需等待地址表項老化后再被動更新。參見圖4,本實施例還提供一種環(huán)網(wǎng)地址表項更新機制裝置,與上述環(huán)網(wǎng)地址表項更新機制方法相對應(yīng),可參照上述環(huán)網(wǎng)地址表項更新機制方法的實施例來理解或解釋該環(huán)網(wǎng)地址表項更新機制裝置的內(nèi)容。本實施例的環(huán)網(wǎng)地址表項更新機制裝置包括端口控制模塊101、存儲模塊102、廣播報文構(gòu)造模塊103、發(fā)送模塊104和接收模塊105。其中,端口控制模塊101在環(huán)網(wǎng)正常時阻塞輔端口,并在環(huán)網(wǎng)故障時,打開輔端口;本實施例中,該裝置還包括網(wǎng)絡(luò)故障檢測模塊(圖中未顯示),該網(wǎng)絡(luò)故障檢測模塊,用以檢測環(huán)網(wǎng)網(wǎng)絡(luò)并判斷環(huán)網(wǎng)網(wǎng)絡(luò)是否發(fā)生故障。本實施例的故障檢測模塊是定時(例如50ms)發(fā)送鏈路狀態(tài)檢測報文至環(huán)網(wǎng)網(wǎng)絡(luò)中的,根據(jù)檢測輔端口是否在預(yù)定時間內(nèi)接收到鏈路狀態(tài)檢測報文就可以及時判斷是否存在故障,以使得各設(shè)備中存儲的本地地址表項在網(wǎng)絡(luò)發(fā)生故障后,能進行實時的更新。本實施例的網(wǎng)絡(luò)故障檢測模塊包括檢測消息發(fā)送子模塊(圖中未顯示)、檢測子模塊(圖中未顯示)和判斷子模塊(圖中未顯示)。其中,檢測消息發(fā)送子模塊通過主端口發(fā)送鏈路狀態(tài)檢測報文;檢測子模塊在設(shè)定時間內(nèi)檢測輔端口是否接收到所述鏈路狀態(tài)檢測報文;判斷子模塊根據(jù)檢測子模塊的判斷結(jié)果來確定環(huán)網(wǎng)網(wǎng)絡(luò)是否發(fā)生故障,當在設(shè)定時間內(nèi)未通過輔端口接收到所述鏈路狀態(tài)檢測報文,則確定環(huán)網(wǎng)網(wǎng)絡(luò)故障。在本實施例中,檢測消息發(fā)送子模塊通過主端口定時(50ms)發(fā)送鏈路狀態(tài)檢測報文,檢測子模塊在設(shè)定時間(50ms)內(nèi)檢測輔端口是否接收到鏈路狀態(tài)檢測報文,判斷子模塊則根據(jù)檢測子模塊的檢測結(jié)果來判斷環(huán)網(wǎng)網(wǎng)絡(luò)是否存在故障。具體地,若在設(shè)定時間內(nèi)通過輔端口接收到該鏈路狀態(tài)檢測報文,則確定環(huán)網(wǎng)網(wǎng)絡(luò)正常;反之,若在設(shè)定時間內(nèi)未通過輔端口接收到該鏈路狀態(tài)檢測報文,則確定環(huán)網(wǎng)網(wǎng)絡(luò)故障。存儲模塊102用以本地存儲環(huán)網(wǎng)中其他各設(shè)備的IP地址;在端口控制模塊101打開輔端口后,廣播報文構(gòu)造模塊103則基于存儲模塊102保存的環(huán)網(wǎng)中其他各設(shè)備的IP地址構(gòu)造ARP廣播報文;發(fā)送模塊104通過主端口和輔端口廣播廣播報文構(gòu)造模塊103構(gòu)造的ARP廣播報文;接收模塊105接收環(huán)網(wǎng)中其他各設(shè)備針對接收的ARP廣播報文單播返回的ARP單播響應(yīng)報文;本實施例中,在環(huán)網(wǎng)中其他各設(shè)備接收到發(fā)送模塊104廣播的ARP廣播報文后,會判斷出地址沖突,接著,各設(shè)備通過地址學習端口單播返回ARP單播響應(yīng)報文至網(wǎng)絡(luò)設(shè)備的接收模塊105。存儲模塊102獲取接收的ARP單播響應(yīng)報文的源IP地址并將本地存儲的環(huán)網(wǎng)中各設(shè)備的IP地址替換成該獲取的源IP地址。發(fā)送模塊104通過除接收到ARP單播響應(yīng)報文的端口(即地址學習端口)之外的另一端口廣播接收的ARP單播響應(yīng)報文,其中,當接收到ARP單播響應(yīng)報文的端口為主端口時,所述另一端口為輔端口;當接收到ARP單播響應(yīng)報文的端口為輔端口時,所述另一端口為主端口。在一具體實施例中,該裝置還包括格式轉(zhuǎn)換模塊(圖中未顯示),格式轉(zhuǎn)換模塊將接收的ARP單播響應(yīng)報文修改為廣播報文,再由發(fā)送模塊104通過除接收到ARP單播響應(yīng)報文之外的另一端口發(fā)送廣播報文,使得環(huán)網(wǎng)中其他各設(shè)備能夠主動、迅速刷新其存儲的地址表項。具體地,報文格式轉(zhuǎn)換模塊包括:將接收的ARP單播響應(yīng)報文的二層目的MAC地址修改為設(shè)定的廣播MAC地址,ARP單播響應(yīng)報文中的源MAC地址不變,修改后的ARP單播響應(yīng)報文為廣播報文。本實施例中,若網(wǎng)絡(luò)故障檢測模塊檢測到環(huán)網(wǎng)故障消除,端口控制模塊101則關(guān)閉已打開的輔端口,以恢復(fù)環(huán)網(wǎng)網(wǎng)絡(luò)的通信速度。在端口控制模塊101關(guān)閉已打開的輔端口后,端口控制模塊101在環(huán)網(wǎng)故障消除時,關(guān)閉已打開的輔端口;廣播報文構(gòu)造模塊103基于存儲模塊102保存的每一IP地址構(gòu)造ARP廣播報文;發(fā)送模塊104通過主端口廣播廣播報文構(gòu)造模塊103構(gòu)造的ARP廣播報文;接收模塊105接收環(huán)網(wǎng)中其他各設(shè)備針對本設(shè)備發(fā)送的ARP廣播報文單播返回的ARP單播響應(yīng)報文;存儲模塊102獲取接收的ARP單播響應(yīng)報文的源IP地址并將本地存儲的環(huán)網(wǎng)中各設(shè)備的IP地址替換成該獲取的源IP地址;報文格式轉(zhuǎn)換模塊將接收的ARP單播響應(yīng)報文修改為廣播報文;發(fā)送模塊104通過主端口廣播報文格式轉(zhuǎn)換模塊獲得的廣播報文。使得在環(huán)網(wǎng)發(fā)生變化后,環(huán)網(wǎng)中其他各設(shè)備不用被動等待刷新,而是主動、快速更新本地地址表項。本實施例的環(huán)網(wǎng)地址表項更新機制裝置,在環(huán)網(wǎng)網(wǎng)絡(luò)故障后放開輔端口,并偽造各設(shè)備廣播免費的ARP廣播報文,各設(shè)備在判斷出地址沖突后主動單播回應(yīng)ARP單播響應(yīng)報文,使得網(wǎng)絡(luò)設(shè)備實時獲得環(huán)網(wǎng)中其他各設(shè)備的地址學習端口,并通過除該設(shè)備的地址學習端口之外的另一端口廣播ARP單播響應(yīng)報文,從而使得環(huán)網(wǎng)中的其他各設(shè)備能夠迅速、主動更新本地地址表項,而無需等待地址表項老化后再被動更新。以上所述僅為本申請的較佳實施例而已,并不用以限制本申請,凡在本申請的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本申請保護的范圍之內(nèi)。當前第1頁1 2 3