国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      端口匯聚trunk成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法及裝置的制作方法

      文檔序號:7745571閱讀:311來源:國知局
      專利名稱:端口匯聚trunk成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法及裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明實(shí)施例涉及通信技術(shù)領(lǐng)域,尤其涉及一種端口匯聚TRUN K成員業(yè)務(wù)報文轉(zhuǎn) 發(fā)狀態(tài)的檢測方法及裝置。
      背景技術(shù)
      隨著通信技術(shù)的不斷發(fā)展,端口匯聚(簡稱TRUNK)技術(shù)已經(jīng)被廣泛使用。所謂 的TRUNK就是一種將多條鏈路綁定成一條鏈路使用的技術(shù),基于TRUNK功能,允許交換機(jī)與 交換機(jī)、交換機(jī)與路由器、主機(jī)與交換機(jī)或路由器之間通過多個接口并行連接同時傳輸,以 提供更高帶寬、更大吞吐量,大幅度提高網(wǎng)絡(luò)能力。在應(yīng)用TRUNK技術(shù)進(jìn)行通信的兩臺設(shè)備所組成的系統(tǒng)中,若TRUNK鏈路中的成員 即接口出現(xiàn)故障,例如出現(xiàn)接口 UP但是鏈路不通的情況,通常會造成業(yè)務(wù)中斷,影響業(yè)務(wù) 質(zhì)量。當(dāng)出現(xiàn)這種鏈路異常情況時,要求做到能夠檢測到該異常情況,并且使得出現(xiàn)異常的 鏈路不再轉(zhuǎn)發(fā)數(shù)據(jù)。現(xiàn)有技術(shù)大多是應(yīng)用鏈路匯聚控制協(xié)議(Link Aggregation Control Protocol ;簡稱LACP)通過構(gòu)造二層的以太網(wǎng)幀來實(shí)現(xiàn),其中LACP協(xié)議是一種實(shí)現(xiàn)鏈路動 態(tài)匯聚的功能性協(xié)議,在數(shù)據(jù)傳輸過程中,LACP通過使得通信雙方周期性的發(fā)送報文來進(jìn) 行端口選擇和狀態(tài)維持,從而實(shí)現(xiàn)利用鏈路聚合(LinkAggregation ;簡稱LA)技術(shù)實(shí)現(xiàn)數(shù) 據(jù)傳輸。在實(shí)現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)當(dāng)應(yīng)用現(xiàn)有技術(shù)進(jìn)行TRUNK鏈路異常檢測時, 要求實(shí)施TRUNK對接的兩臺設(shè)備必須都支持LACP協(xié)議,如果對接的設(shè)備其中一臺不支持, 則此協(xié)議無法生效,無法檢測出鏈路上出現(xiàn)接口 UP但是鏈路不通導(dǎo)致業(yè)務(wù)中斷等接口故 障造成的TRUNK鏈路異常,具有一定的應(yīng)用局限性。

      發(fā)明內(nèi)容
      本發(fā)明實(shí)施例提供一種端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法及裝 置,實(shí)現(xiàn)TRUNK鏈路異常檢測。本發(fā)明實(shí)施例提供一種端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法,包 括獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口 ;以所述至少兩個未開放端口中的至少一個未開放端口作為目的端口,向所述對端 設(shè)備發(fā)送用戶數(shù)據(jù)報協(xié)議UDP報文;當(dāng)沒有接收到所述對端設(shè)備返回的互聯(lián)網(wǎng)控制消息協(xié)議ICMP不可達(dá)報文時,將 發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。本發(fā)明實(shí)施例提供一種主設(shè)備,包括能夠通過端口匯聚TRUNK與對端設(shè)備對接的 數(shù)個端口匯聚成員,還包括獲取模塊,用于獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口 ;第一處理模塊,用于以所述至少兩個未開放端口中的至少一個未開放端口作為目的端口,向所述對端設(shè)備發(fā)送用戶數(shù)據(jù)報協(xié)議UDP報文;第二處理模塊,用于當(dāng)沒有接收到所述對端設(shè)備返回的互聯(lián)網(wǎng)控制消息協(xié)議ICMP 不可達(dá)報文時,將發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀 態(tài)。
      本發(fā)明實(shí)施例提供一種網(wǎng)絡(luò)系統(tǒng),包括上述的主設(shè)備,以及與所述主設(shè)備通過端 口匯聚對接的對端設(shè)備。本發(fā)明實(shí)施例提供的端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法及裝置, 通過向?qū)Χ嗽O(shè)備沒有開放的UDP端口發(fā)送UDP報文,同時檢測回應(yīng)的ICMP不可達(dá)報文來實(shí) 現(xiàn)TRUNK的鏈路檢測,能夠探測到設(shè)備出現(xiàn)的TRUNK鏈路異常,檢測方法適用范圍廣。


      為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使 用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對于本 領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的 附圖。圖1為本發(fā)明一實(shí)施例提供的端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法 流程圖;圖2為本發(fā)明另一實(shí)施例提供的端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方 法流程圖;圖3為本發(fā)明又一實(shí)施例提供的端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方 法流程圖;圖4為本發(fā)明實(shí)施例提供的主設(shè)備結(jié)構(gòu)示意圖;圖5為本發(fā)明實(shí)施例提供的主設(shè)備結(jié)構(gòu)示意圖。
      具體實(shí)施例方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例 中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是 本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員 在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。圖1為本發(fā)明一實(shí)施例提供的端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法 流程圖,本實(shí)施例以兩臺應(yīng)用TRUNK技術(shù)實(shí)施對接的設(shè)備為例進(jìn)行說明,其中一臺為主設(shè) 備,另一臺為對端設(shè)備,各臺設(shè)備中均包括數(shù)個端口匯聚成員(即設(shè)備中通過TRUNK技術(shù)綁 定在一起的數(shù)個物理接口)。如圖1所示,該方法包括步驟100,獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口 ;本發(fā)明實(shí)施例可以通過向?qū)Χ嗽O(shè)備發(fā)送UDP報文,并根據(jù)對端設(shè)備返回的解析互 聯(lián)網(wǎng)控制消息協(xié)議(Internet Control Message Protocol ;以下簡稱ICMP)不可達(dá)報文來 獲得對對端設(shè)備中未開放端口,其中,ICMP協(xié)議是TCP/IP協(xié)議族的一個子協(xié)議,用于在IP 主機(jī)、路由器之間傳遞控制消息??刂葡⑹侵妇W(wǎng)絡(luò)通不通、主機(jī)是否可達(dá)、路由是否可用 等網(wǎng)絡(luò)本身的消息;這些控制消息雖然并不傳輸用戶數(shù)據(jù),但是對于用戶數(shù)據(jù)的傳遞起著重要的作用。例如當(dāng)遇到IP數(shù)據(jù)無法訪問目標(biāo)、IP路由器無法按當(dāng)前的傳輸速率轉(zhuǎn)發(fā)數(shù) 據(jù)包等情況時,會自動發(fā)送ICMP報文。由于當(dāng)主設(shè)備的端口匯聚成員以對端設(shè)備中未開放端口為目的端口向?qū)Χ嗽O(shè)備 發(fā)送UDP報文后,因目的端口為未開放端口,因此對端設(shè)備要返回對應(yīng)的ICMP不可達(dá)報文, 如果接收到對應(yīng)返回的ICMP不可達(dá)報文,則說明該TRUNK鏈路正常?;诖?,可以通過ICMP 不可達(dá)報文進(jìn)行TRUNK鏈路的探測。具體的,為滿足主設(shè)備數(shù)個端口匯聚成員同時探測的要求,需要獲取對端設(shè)備中的至少兩個未開放端口,本發(fā)明實(shí)施例以獲取到5個未開放端口為例進(jìn)行說明,當(dāng)然并不 局限于此。步驟101,以所述至少兩個未開放端口中的至少一個未開放端口作為目的端口,向 所述對端設(shè)備發(fā)送UDP報文;例如在主設(shè)備獲取到對端設(shè)備所述的5個未開放端口后,要分別對主設(shè)備的每個 TRUNK成員進(jìn)行檢測,當(dāng)然對每個TRUNK成員的檢測可以分別進(jìn)行也可以同時進(jìn)行。具體 的,可以在獲取到的5個未開放端口中選取一個或多個未開放端口作為目的端口,通過一 個TRUNK成員向?qū)Χ嗽O(shè)備發(fā)送一個或多個UDP報文。步驟102,當(dāng)沒有接收到所述對端設(shè)備返回的ICMP不可達(dá)報文時,將發(fā)送所述UDP 報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。若接收到對應(yīng)返回的ICMP不可達(dá)報文,則可以說明該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā) 狀態(tài)正常,可以保持該TRUNK成員的業(yè)務(wù)報文的轉(zhuǎn)發(fā)狀態(tài)設(shè)置為的可轉(zhuǎn)發(fā)狀態(tài)。若沒有接 收到對應(yīng)返回的ICMP不可達(dá)報文,則可能是由于該TRUNK成員出現(xiàn)故障,因此本實(shí)施例中 可以直接將發(fā)送UDP報文的該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài),所述 的不可轉(zhuǎn)發(fā)狀態(tài)具體指不能轉(zhuǎn)發(fā)業(yè)務(wù)報文,但是可以繼續(xù)發(fā)送探測報文即UDP報文。本實(shí)施例提供的端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法,通過向?qū)Χ?設(shè)備沒有開放的UDP端口發(fā)送UDP報文,同時檢測回應(yīng)的ICMP不可達(dá)報文來實(shí)現(xiàn)TRUNK的 鏈路檢測,能夠探測到設(shè)備出現(xiàn)的TRUNK鏈路異常。本實(shí)施例方法適用于所有使用TRUNK功 能的設(shè)備,不依賴對端設(shè)備的功能特性上的支持,只需要對端設(shè)備在支持標(biāo)準(zhǔn)的TCP/IP協(xié) 議棧即可,適用范圍比較廣。在上述實(shí)施例中,獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口的方 式可以有多種,例如通過對端設(shè)備主動上報給主設(shè)備的方式獲取等。本實(shí)施例還可以通過 發(fā)送UDP報文的方式探測,即通過向?qū)Χ嗽O(shè)備發(fā)送以被探測端口為目的端口的UDP報文,若 收到對端設(shè)備返回的相應(yīng)的ICMP不可達(dá)報文,則將被探測端口作為未開放端口。該種探測方式具體可以包括主設(shè)備的各TRUNK成員向?qū)Χ嗽O(shè)備中對應(yīng)的TRUNK 成員發(fā)送數(shù)個UDP報文,所述的UDP報文的源端口為該主設(shè)備的源端口、目的端口為對端設(shè) 備的同一探測端口。也就是說,主設(shè)備中的所有TRUNK成員一起向?qū)Χ嗽O(shè)備發(fā)送相同的UDP 報文,該UDP報文的源端口選用該主設(shè)備的源端口、目的端口選用對端設(shè)備中相同的一個 UDP端口作為探測端口。主設(shè)備以這樣的方式通過所有的TRUNK成員發(fā)送數(shù)個相同的UDP 報文。若接收到對端設(shè)備中對應(yīng)的TRUNK成員返回的、數(shù)量相同的ICMP不可達(dá)報文,則 將探測端口記錄為對端設(shè)備中的未開放端口。具體地,若主設(shè)備中各TRUNK成員均接收到對端設(shè)備中對應(yīng)的TRUNK成員返回的ICMP不可達(dá)報文,則可以說明之前發(fā)送的UDP報文中 作為目的端口的探測端口屬于未開放端口,此時主設(shè)備可以記錄下該未開放端口,并繼續(xù) 更新探測端口,按照相同的方式獲取其他的未開放端口。本實(shí)施例中選擇探測端口可以離 散地進(jìn)行選取。獲取到至少兩個未開放端口后,對主設(shè)備中每個TRUNK成員進(jìn)行故障探測是單獨(dú) 進(jìn)行的,具體地,主設(shè)備的一 TRUNK成員向?qū)Χ嗽O(shè)備中對應(yīng)的TRUNK成員發(fā)送UDP報文,所 述的UDP報文的源端口為主設(shè)備的源端口與主設(shè)備中該TRUNK成員的標(biāo)識號之和,目的端 口為至少兩個未開放端口之一。若未接收到ICMP不可達(dá)報文,在另一種情況下,還可以暫 時不將TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài),而是繼續(xù)根據(jù)至少兩個未開 放端口中其它的未開放端口,繼續(xù)進(jìn)行探測以進(jìn)一步進(jìn)行判斷,以下實(shí)施例將針對這種情 況中的其中兩種處理方式進(jìn)行詳細(xì)介紹。圖2為本發(fā)明另一實(shí)施例提供的端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方 法流程圖,如圖2所示,包括步驟200,獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口 ;步驟201,以所述至少兩個未開放端口中的至少一個未開放端口作為目的端口,向 所述對端設(shè)備發(fā)送UDP報文;步驟202,當(dāng)沒有接收到對端設(shè)備返回的ICMP不可達(dá)報文時,則以所述至少兩個 未開放端口中其他探測成功的未開放端口為目的端口向?qū)Χ嗽O(shè)備發(fā)送UDP報文; 步驟203,若仍然沒有接收到ICMP不可達(dá)報文,則將發(fā)送UDP報文的TRUNK成員的 業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。具體地該種情況是,在主設(shè)備中各個TRUNK成員進(jìn)行單獨(dú)探測的時候,當(dāng)沒有接 收到對端設(shè)備返回的ICMP不可達(dá)報文時,可以繼續(xù)以至少兩個未開放端口中其他探測成 功的未開放端口為目的端口向?qū)Χ嗽O(shè)備發(fā)送UDP報文,若仍然沒有接收到ICMP不可達(dá)報 文,則將發(fā)送UDP報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。所述的探 測成功的未開放端口是指能夠通過主設(shè)備的其他TRUNK成員采用發(fā)送UDP報文、并接收到 ICMP不可達(dá)報文的探測方式探測到的未開放端口。具體地,例如主設(shè)備中的1號TRUNK成員以對端設(shè)備的5個未開放端口中的1號未 開放端口為目的端口發(fā)送UDP報文后,未接收到ICMP不可達(dá)報文;但主設(shè)備中的2號TRUNK 成員以5個未開放端口中的2號未開放端口為目的端口發(fā)送UDP報文后,接收到了 ICMP不 可達(dá)報文,說明2號未開放端口探測成功。則1號TRUNK成員可重新以2號未開放端口為 目的端口繼續(xù)發(fā)送UDP報文,由于2號未開放端口已經(jīng)探測成功,則1號TRUNK成員發(fā)送完 該UDP報文后,若仍就沒有接收到ICMP不可達(dá)報文,則可以說明主設(shè)備的1號TRUNK成員 出現(xiàn)故障,可以將其業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。若主設(shè)備的1號TRUNK成員 發(fā)送完該UDP報文后,接收到了 ICMP不可達(dá)報文,則可以說明主設(shè)備的1號TRUNK成員沒 有出現(xiàn)故障,可以將其業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為可轉(zhuǎn)發(fā)狀態(tài)。圖3為本發(fā)明又一實(shí)施例提供的端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方 法流程圖,如圖3所示,包括步驟300,獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口 ;步驟301,以所述至少兩個未開放端口中的至少一個未開放端口作為目的端口,向所述對端設(shè)備發(fā)送UDP報文;步驟302,當(dāng)沒有接收到對端設(shè)備返回的ICMP不可達(dá)報文時,則以所述至少兩個未開放端口中剩余的未開放端口為目的端口,向?qū)Χ嗽O(shè)備發(fā)送UDP報文;步驟303,若仍然沒有接收到ICMP不可達(dá)報文,則將發(fā)送UDP報文的TRUNK成員的 業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。具體地該種情況是,在主設(shè)備中各個TRUNK成員進(jìn)行單獨(dú)探測的時候,當(dāng)沒有接 收到對端設(shè)備返回的ICMP不可達(dá)報文時,可繼續(xù)以至少兩個未開放端口中剩余的未開放 端口為目的端口,向?qū)Χ嗽O(shè)備發(fā)送UDP報文,若仍然沒有接收到ICMP不可達(dá)報文,則將發(fā)送 UDP報文的TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。具體地,例如主設(shè)備中的1號TRUNK成員以5個未開放端口中的1號未開放端口 為目的端口發(fā)送UDP報文后,未接收到ICMP不可達(dá)報文;而且主設(shè)備的其他所有的TRUNK 成員同樣也沒有接收到ICMP不可達(dá)報文,此時,該主設(shè)備中的1號TRUNK成員要分別以5 個未開放端口中除了 1號未開放端口外的其他4個未開放端口為目的端口,發(fā)送4個UDP 報文。若仍就沒有接收到ICMP不可達(dá)報文,則可以說明主設(shè)備中的1號TRUNK成員出現(xiàn)故 障,應(yīng)該將其業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。若主設(shè)備中的1號TRUNK成員發(fā)送 完該UDP報文后,接收到了至少一個ICMP不可達(dá)報文,則可以說明主設(shè)備中的1號TRUNK 成員沒有出現(xiàn)故障,可以保持其業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)為可轉(zhuǎn)發(fā)狀態(tài)。 在上述各情況中,主設(shè)備中的TRUNK成員向?qū)Χ嗽O(shè)備發(fā)送UDP報文的時候,可以是 連續(xù)發(fā)送數(shù)個。具體地,先啟動定時器,然后主設(shè)備的TRUNK成員連續(xù)向?qū)Χ嗽O(shè)備中對應(yīng)的 TRUNK成員發(fā)送數(shù)個UDP報文。當(dāng)然,主設(shè)備中的某個TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)被設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)后, 若在后續(xù)的探測過程中,在向?qū)Χ嗽O(shè)備發(fā)送UDP報文后,接收到對應(yīng)返回的ICMP不可達(dá)報 文,則說明該TRUNK成員的故障排除了,可以將主設(shè)備中該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài) 設(shè)置為可轉(zhuǎn)發(fā)狀態(tài)。以下結(jié)合一個具體的例子介紹本發(fā)明實(shí)施例提供的方法。在主設(shè)備的所有TRUNK 成員上向?qū)Χ嗽O(shè)備發(fā)送UDP報文,該UDP報文的源端口是主設(shè)備的源端口例如為“65000”、 目的端口采用較大的端口例如“50000”;如果收到對端設(shè)備回應(yīng)的ICMP不可到報文,說明 對端端口沒有開放,記錄此端口 ;如果一段時間沒有收到對端設(shè)備回應(yīng)的ICMP不可達(dá)報 文,說明此端口已經(jīng)開放,此時要修改目的端口,直到找到未開放端口為止,此時可以記錄5 個離散的未開放端口。找到對端設(shè)備的未開放端口之后,啟動定時器,連續(xù)向?qū)Χ嗽O(shè)備發(fā)送UDP報文,目 的端口為對端設(shè)備未開放端口,源端口為“65000”加上該TRUNK成員的ID號,并通過此定 時器接收回應(yīng)的ICMP不可達(dá)報文。在一段時間內(nèi),如果連續(xù)沒有收到和此未開放端口相對 應(yīng)的ICMP不可達(dá)報文,說明此未開放端口發(fā)送的報文對端設(shè)備沒有正常處理,該鏈路可能 出現(xiàn)故障,此時,在一種情況下,可以將該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā) 狀態(tài)。在另一種情況下,還可以在其他的TRUNK成員中取一個探測成功的未開放端口,然 后定時向這個端口發(fā)送多個UDP報文;如果還是沒有收到ICMP不可達(dá)報文,說明此鏈路故 障,把此TRUNK成員的業(yè)務(wù)轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài),即不能轉(zhuǎn)發(fā)業(yè)務(wù)報文,但是可以 繼續(xù)發(fā)送探測報文。
      如果其余4個未開放端口均未被探測成功,則可以繼續(xù)以其余的4個未開放端口 為目的端口向?qū)Χ嗽O(shè)備發(fā)送UDP報文,如果沒有收到對端設(shè)備返回的相應(yīng)的ICMP不可達(dá)報 文,則將此TRUNK成員的業(yè)務(wù)轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。上述過程中,如果能收到其中某一個未開放端口回應(yīng)的ICMP不可達(dá)報文,則說明 TRUNK成員的業(yè)務(wù)轉(zhuǎn)發(fā)狀態(tài)正常,此時需要繼續(xù)探測其他未開放端口,使得獲取到的未開放 端口數(shù)量保持在預(yù)定數(shù)量例如5個。為了排除實(shí)際應(yīng)用過程中的某些干擾因素,提高探測的質(zhì)量,保證探測到的TRUNK 成員確實(shí)可以真正實(shí)現(xiàn)業(yè)務(wù)報文的轉(zhuǎn)發(fā),在實(shí)際探測過程中,可以在當(dāng)某個TRUNK成員連 續(xù)接收到對端設(shè)備返回的預(yù)設(shè)數(shù)量的ICMP不可達(dá)報文后將該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā) 狀態(tài)設(shè)置為可轉(zhuǎn)發(fā)狀態(tài)。進(jìn)一步的,若某個TRUNK成員在前一次探測過程中其業(yè)務(wù)轉(zhuǎn)發(fā)狀態(tài)被設(shè)置為不可 轉(zhuǎn)發(fā)狀態(tài),在后續(xù)發(fā)送探測報文后又收到了對端設(shè)備回應(yīng)的ICMP不可達(dá)報文,由此ICMP不 可達(dá)報文獲知與該ICMP不可達(dá)報文對應(yīng)的TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)處于不可轉(zhuǎn)發(fā)狀 態(tài),則可以調(diào)整此TRUNK成員的業(yè)務(wù)轉(zhuǎn)發(fā)狀態(tài)為可轉(zhuǎn)發(fā)狀態(tài)。具體的,主設(shè)備可以記錄其發(fā) 送的UDP報文,若該UDP報文沒有回應(yīng)的ICMP不可達(dá)報文,則主設(shè)備可以通過UDP報文獲 知是通過哪個TRUNK成員,便可以對該TRUNK成員進(jìn)行狀態(tài)設(shè)置。進(jìn)一步的,為了提高探測的準(zhǔn)確性,在將TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)由不可 轉(zhuǎn)發(fā)狀態(tài)轉(zhuǎn)換為可轉(zhuǎn)發(fā)狀態(tài)時,可以預(yù)先設(shè)定轉(zhuǎn)換條件,當(dāng)滿足該轉(zhuǎn)換條件時才能從不可 轉(zhuǎn)發(fā)狀態(tài)轉(zhuǎn)換為可轉(zhuǎn)發(fā)狀態(tài),該轉(zhuǎn)換條件可以時設(shè)定的接收到的ICMP不可達(dá)報文的個數(shù)。 例如,若以5個未開放端口為例,可以預(yù)先設(shè)定主設(shè)備的一個TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀 態(tài)由可轉(zhuǎn)發(fā)狀態(tài)轉(zhuǎn)變成不可轉(zhuǎn)發(fā)狀態(tài)的條件,該條件可以是需要探測的未開放端口數(shù)量。 例如可以設(shè)定需要探測5個未開放端口中的2個未開放端口,若均收到對應(yīng)返回的ICMP不 可達(dá)報文,才將該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為可轉(zhuǎn)發(fā)狀態(tài)。同樣的,將TRUNK成 員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)由不可轉(zhuǎn)發(fā)狀態(tài)變?yōu)榭赊D(zhuǎn)發(fā)狀態(tài),也可以設(shè)定相應(yīng)的轉(zhuǎn)換條件,例 如可以設(shè)定需要連續(xù)收到3個ICMP不可達(dá)的報文才將該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài) 由不可轉(zhuǎn)發(fā)狀態(tài)變?yōu)榭赊D(zhuǎn)發(fā)狀態(tài)。當(dāng)然也可以根據(jù)實(shí)際需要在接收到一個ICMP不可達(dá)的 報文便將其設(shè)置為可轉(zhuǎn)發(fā)狀態(tài)。上述轉(zhuǎn)換條件可以根據(jù)實(shí)際需要具體設(shè)置,在此并不作限 制。本發(fā)明實(shí)施例提供的端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法,通過 向?qū)Χ嗽O(shè)備沒有開放的UDP端口發(fā)送UDP報文,同時檢測回應(yīng)的ICMP不可達(dá)報文來實(shí)現(xiàn) TRUNK的鏈路檢測,能夠在設(shè)備不支持LACP協(xié)議的情況下實(shí)現(xiàn)對TRUNK的鏈路狀態(tài)的檢測, 保證鏈路異常下的業(yè)務(wù)正常;適用于所有使用TRUNK功能的設(shè)備,適用范圍比較廣。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲于一計(jì)算機(jī)可讀取存儲介質(zhì)中,該程序 在執(zhí)行時,執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲介質(zhì)包括R0M、RAM、磁碟或者 光盤等各種可以存儲程序代碼的介質(zhì)。圖4為本發(fā)明實(shí)施例提供的主設(shè)備結(jié)構(gòu)示意圖,如圖4所示,該主設(shè)備包括能夠通 過TRUNK與對端設(shè)備對接的數(shù)個TRUNK成員即物理接口(圖中未示出),還包括獲取模塊 11、第一處理模塊12和第二處理模塊13,其中
      獲取模塊11,用于獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口 ;第一處理模塊12,用于以至少兩個未開放端口中的至少一個未開放端口作為目的端口,向?qū)Χ嗽O(shè)備發(fā)送用戶數(shù)據(jù)報協(xié)議UDP報文;第二處理模塊13,用于當(dāng)沒有接收到對端設(shè)備返回的互聯(lián)網(wǎng)控制消息協(xié)議ICMP 不可達(dá)報文時,將發(fā)送UDP報文的TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。具體地,由于本實(shí)施例是要應(yīng)用ICMP不可達(dá)報文來探測TRUNK鏈路是否正常,因 此主設(shè)備首先要通過獲取模塊11獲取對端設(shè)備中至少兩個未開放端口。在獲取模塊11獲 取到對端設(shè)備至少兩個未開放端口后,要通過第一處理模塊12在獲取到的至少兩個未開 放端口中選取一個或多個作為目的端口,通過一個TRUNK成員向?qū)Χ嗽O(shè)備發(fā)送一個或多個 UDP報文。若接收到對應(yīng)返回的ICMP不可達(dá)報文,則可以說明該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn) 發(fā)狀態(tài)正常,可以保持該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為可轉(zhuǎn)發(fā)狀態(tài)。若沒有接收 到對應(yīng)返回的ICMP不可達(dá)報文,則可能是由于該TRUNK成員出現(xiàn)故障,因此本實(shí)施例中可 以通過第二處理模塊13直接將發(fā)送UDP報文的該TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為 不可轉(zhuǎn)發(fā)狀態(tài),所述的不可轉(zhuǎn)發(fā)狀態(tài)具體指不能轉(zhuǎn)發(fā)業(yè)務(wù)報文,但是可以繼續(xù)發(fā)送探測報 文即UDP報文。本實(shí)施例提供的主設(shè)備,通過向?qū)Χ嗽O(shè)備沒有開放的UDP端口發(fā)送UDP報文,同時 檢測回應(yīng)的ICMP不可達(dá)報文來實(shí)現(xiàn)TRUNK的鏈路檢測,能夠探測到設(shè)備出現(xiàn)的TRUNK鏈路 異常。本實(shí)施例方法適用于所有使用TRUNK功能的設(shè)備,不依賴對端設(shè)備的功能特性上的 支持,只需要對端設(shè)備在支持標(biāo)準(zhǔn)的TCP/IP協(xié)議棧即可,適用范圍比較廣。圖5為本發(fā)明實(shí)施例提供的主設(shè)備結(jié)構(gòu)示意圖,如圖5所示,該主設(shè)備包括能夠通 過TRUNK與對端設(shè)備對接的數(shù)個TRUNK成員即物理接口(圖中未示出),還包括獲取模塊 11、第一處理模塊12和第二處理模塊13。在上述實(shí)施例的基礎(chǔ)上,進(jìn)一步地,第二處理模塊 13包括第一處理子模塊131和/或第二處理子模塊132,其中第一處理子模塊131,用于當(dāng)沒有接收到對端設(shè)備返回的ICMP不可達(dá)報文時,以 至少兩個未開放端口中剩余的未開放端口為目的端口,向?qū)Χ嗽O(shè)備發(fā)送UDP報文,若仍然 沒有接收到ICMP不可達(dá)報文,則將發(fā)送UDP報文的TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不 可轉(zhuǎn)發(fā)狀態(tài);第二處理子模塊132,用于當(dāng)沒有接收到對端設(shè)備返回的ICMP不可達(dá)報文時,以 至少兩個未開放端口中其他探測成功的未開放端口為目的端口向?qū)Χ嗽O(shè)備發(fā)送UDP報文, 若仍然沒有接收到ICMP不可達(dá)報文,則將發(fā)送UDP報文的TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè) 置為不可轉(zhuǎn)發(fā)狀態(tài)。進(jìn)一步的,本實(shí)施例中主設(shè)備中還可以包括第三處理模塊14,用于若處于不可轉(zhuǎn)發(fā)狀態(tài)的TRUNK成員在向?qū)Χ嗽O(shè)備發(fā)送UDP 報文后,接收到對端設(shè)備返回的ICMP不可達(dá)報文,則將TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置 為可轉(zhuǎn)發(fā)狀態(tài)。本發(fā)明實(shí)施例提供的主設(shè)備可以應(yīng)用上述方法實(shí)施例提供的方法進(jìn)行TRUNK成 員的故障探測,具有實(shí)施可參見上述方法實(shí)施例,此處不再贅述。本發(fā)明實(shí)施例提供的主設(shè)備,通過向?qū)Χ嗽O(shè)備沒有開放的UDP端口發(fā)送UDP報文, 同時檢測回應(yīng)的ICMP不可達(dá)報文來實(shí)現(xiàn)TRUNK的鏈路檢測,能夠在設(shè)備不支持LACP協(xié)議的情況下實(shí)現(xiàn)對TRUNK的鏈路狀態(tài)的檢測,保證鏈路異常下的業(yè)務(wù)正常;適用于所有使用TRUNK功能的設(shè)備,適用范圍比較廣。本發(fā)明實(shí)施例還提供一種網(wǎng)絡(luò)系統(tǒng),包括主設(shè)備和對端設(shè)備,其中主設(shè)備與對端 設(shè)備通過TRUNK對接。本網(wǎng)絡(luò)系統(tǒng)中包括的主設(shè)備可以采用上述各裝置實(shí)施例提供的主設(shè) 備,其具體功能和結(jié)構(gòu)可以詳見上述實(shí)施例,此處不再贅述。本實(shí)施例提供的網(wǎng)絡(luò)系統(tǒng),主 設(shè)備通過向?qū)Χ嗽O(shè)備沒有開放的UDP端口發(fā)送UDP報文,同時檢測回應(yīng)的ICMP不可達(dá)報文 來實(shí)現(xiàn)TRUNK的鏈路檢測,能解決設(shè)備在TRUNK鏈路發(fā)生異常的時候,能夠探測到此異常并 保證業(yè)務(wù)正常。最后應(yīng)說明的是以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡 管參照前述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然 可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分技術(shù)特征進(jìn)行等同替 換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精 神和范圍。
      權(quán)利要求
      一種端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法,其特征在于,包括獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口;以所述至少兩個未開放端口中的至少一個未開放端口作為目的端口,向所述對端設(shè)備發(fā)送用戶數(shù)據(jù)報協(xié)議UDP報文;當(dāng)沒有接收到所述對端設(shè)備返回的互聯(lián)網(wǎng)控制消息協(xié)議ICMP不可達(dá)報文時,將發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。
      2.根據(jù)權(quán)利要求1所述的檢測方法,其特征在于,所述當(dāng)沒有接收到所述對端設(shè)備返 回的互聯(lián)網(wǎng)控制消息協(xié)議ICMP不可達(dá)報文時,將發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報 文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)包括當(dāng)沒有接收到所述對端設(shè)備返回的ICMP不可達(dá)報文時,以所述至少兩個未開放端口 中剩余的未開放端口為目的端口,向所述對端設(shè)備發(fā)送UDP報文,若仍然沒有接收到ICMP 不可達(dá)報文,則將發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀 態(tài)。
      3.根據(jù)權(quán)利要求1所述的檢測方法,其特征在于,所述當(dāng)沒有接收到所述對端設(shè)備返 回的互聯(lián)網(wǎng)控制消息協(xié)議ICMP不可達(dá)報文時,將發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報 文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)包括當(dāng)沒有接收到所述對端設(shè)備返回的ICMP不可達(dá)報文時,以所述至少兩個未開放端口 中其他探測成功的未開放端口為目的端口向所述對端設(shè)備發(fā)送UDP報文,若仍然沒有接收 到ICMP不可達(dá)報文,則將發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可 轉(zhuǎn)發(fā)狀態(tài)。
      4.根據(jù)權(quán)利要求1或2或3所述的檢測方法,其特征在于,還包括當(dāng)接收到所述對端設(shè)備返回的ICMP不可達(dá)報文時,則將發(fā)送所述UDP報文的TRUNK成 員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為可轉(zhuǎn)發(fā)狀態(tài)。
      5.根據(jù)權(quán)利要求1或2或3所述的檢測方法,其特征在于,還包括若處于不可轉(zhuǎn)發(fā)狀態(tài)的TRUNK成員在向所述對端設(shè)備發(fā)送UDP報文后,接收到所述對 端設(shè)備返回的ICMP不可達(dá)報文,則將所述TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為可轉(zhuǎn)發(fā)狀 態(tài)。
      6.根據(jù)權(quán)利要求1所述的檢測方法,其特征在于,所述獲取通過TRUNK對接的對端設(shè)備 中的至少兩個未開放端口包括獲取所述對端設(shè)備上報的未開放端口 ;或通過向所述對端設(shè)備發(fā)送以被探測端口為目的端口的UDP報文,若收到所述對端設(shè)備 返回的相應(yīng)的ICMP不可達(dá)報文,則將所述被探測端口作為未開放端口。
      7.一種主設(shè)備,包括能夠通過端口匯聚TRUNK與對端設(shè)備對接的數(shù)個端口匯聚成員, 其特征在于,還包括獲取模塊,用于獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口 ;第一處理模塊,用于以所述至少兩個未開放端口中的至少一個未開放端口作為目的端 口,向所述對端設(shè)備發(fā)送用戶數(shù)據(jù)報協(xié)議UDP報文;第二處理模塊,用于當(dāng)沒有接收到所述對端設(shè)備返回的互聯(lián)網(wǎng)控制消息協(xié)議ICMP不 可達(dá)報文時,將發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。
      8.根據(jù)權(quán)利要求7所述的主設(shè)備,其特征在于,所述第二處理模塊包括第一處理子模塊,用于當(dāng)沒有接收到所述對端設(shè)備返回的ICMP不可達(dá)報文時,以所述 至少兩個未開放端口中剩余的未開放端口為目的端口,向所述對端設(shè)備發(fā)送UDP報文,若 仍然沒有接收到ICMP不可達(dá)報文,則將發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀 態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài);和/或第二處理子模塊,用于當(dāng)沒有接收到所述對端設(shè)備返回的ICMP不可達(dá)報文時,以所述 至少兩個未開放端口中其他探測成功的未開放端口為目的端口向所述對端設(shè)備發(fā)送UDP 報文,若仍然沒有接收到ICMP不可達(dá)報文,則將發(fā)送所述UDP報文的TRUNK成員的業(yè)務(wù)報 文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。
      9.根據(jù)權(quán)利要求7所述的主設(shè)備,其特征在于,還包括第三處理模塊,用于若處于不可轉(zhuǎn)發(fā)狀態(tài)的TRUNK成員在向所述對端設(shè)備發(fā)送UDP報 文后,接收到所述對端設(shè)備返回的ICMP不可達(dá)報文,則將所述TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā) 狀態(tài)設(shè)置為可轉(zhuǎn)發(fā)狀態(tài)。
      10.一種網(wǎng)絡(luò)系統(tǒng),包括如權(quán)利要求7至9任一所述的主設(shè)備,以及與所述主設(shè)備通過 端口匯聚TRUNK對接的對端設(shè)備。
      全文摘要
      本發(fā)明實(shí)施例提供一種端口匯聚TRUNK成員業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)的檢測方法及裝置。該方法包括獲取通過TRUNK對接的對端設(shè)備中的至少兩個未開放端口;以至少兩個未開放端口中的至少一個未開放端口作為目的端口,向?qū)Χ嗽O(shè)備發(fā)送用戶數(shù)據(jù)報協(xié)議UDP報文;當(dāng)沒有接收到對端設(shè)備返回的互聯(lián)網(wǎng)控制消息協(xié)議ICMP不可達(dá)報文時,將發(fā)送UDP報文的TRUNK成員的業(yè)務(wù)報文轉(zhuǎn)發(fā)狀態(tài)設(shè)置為不可轉(zhuǎn)發(fā)狀態(tài)。本發(fā)明實(shí)施例通過向?qū)Χ嗽O(shè)備沒有開放的UDP端口發(fā)送UDP報文,同時檢測回應(yīng)的ICMP不可達(dá)報文來實(shí)現(xiàn)TRUNK的鏈路檢測,探測到設(shè)備TRUNK鏈路的異常情況,保證業(yè)務(wù)正常進(jìn)行,方法適用范圍比較廣。
      文檔編號H04L12/26GK101808043SQ201010142199
      公開日2010年8月18日 申請日期2010年3月12日 優(yōu)先權(quán)日2010年3月12日
      發(fā)明者劉敦輝 申請人:成都市華為賽門鐵克科技有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1