專利名稱:基于網(wǎng)絡(luò)處理器的數(shù)據(jù)線路偵測(cè)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)互聯(lián)網(wǎng)的寬帶接入技術(shù),具體涉及一種基于網(wǎng)絡(luò)處理 器的數(shù)據(jù)線路偵測(cè)方法。
背景技術(shù):
寬帶接入中客戶端與接入服務(wù)器之間采用協(xié)議完成整個(gè)數(shù)據(jù)通訊過程,
以下結(jié)合PPPOE協(xié)議說明整個(gè)數(shù)據(jù)通訊過程,類似地包括但限制于802. lx 協(xié)議、DHCP協(xié)議、HTTP協(xié)議和WEB+DHCP協(xié)議。
(-)PPPOE協(xié)議通過PPPOE協(xié)議,在一個(gè)共享的以太網(wǎng)上的多個(gè)主機(jī), 可以通過一個(gè)或多個(gè)簡(jiǎn)單的橋接入設(shè)備,與遠(yuǎn)程接入集中器進(jìn)行多個(gè)PPP 會(huì)話。PPPOE包含發(fā)現(xiàn)和PPP會(huì)話兩個(gè)階段,發(fā)現(xiàn)階段是無狀態(tài)的 Client/Server模式,目的是獲得PPPOE終結(jié)端的以太網(wǎng)MAC地址,并建立 一個(gè)唯一的PPPOE SESSION—ID。發(fā)現(xiàn)階^殳結(jié)束后,就進(jìn)入標(biāo)準(zhǔn)的PPP會(huì) 話階段。PPPOE協(xié)議可詳見RFC2516文獻(xiàn)。
t)PPPOE通信流程,如圖l所示,分為兩個(gè)不同的階段,具體是
①發(fā)現(xiàn)階段,發(fā)現(xiàn)階段有四個(gè)步驟100-103,當(dāng)此階段完成,通信的兩 端都知道PPPOE SESSION_ID和對(duì)端的以太網(wǎng)地址,他們一起唯一定義 PPPOE會(huì)話。這些步驟包括
100)主機(jī)廣播一個(gè)PPPOE發(fā)起分組報(bào)文PPPoE Active Discovery Initiation,簡(jiǎn)稱PADI報(bào)文;
101 ) —個(gè)或多個(gè)接入集中器發(fā)送PPPOE給予分組報(bào)文The PPPoE Active Discovery Offer,簡(jiǎn)稱PADO報(bào)文;
102 )主機(jī)發(fā)送單播會(huì)話請(qǐng)求分組報(bào)文The PPPoE Active Discovery Request,筒稱PADR報(bào)文;
103)選擇的接入集中器發(fā)送一個(gè)確認(rèn)分組報(bào)文The PPPoE Active Discovery Session-confirmation, 簡(jiǎn)稱PADS才艮文。
當(dāng)主機(jī)接收到確認(rèn)分組,它可以開始進(jìn)行PPP會(huì)話階段。當(dāng)接入集中器 發(fā)送出確認(rèn)分組,它可以開始進(jìn)行PPP會(huì)話階段。
PPPOE還有一個(gè)終結(jié)會(huì)話報(bào)文The PPPoE Active Discovery Terminate,, 簡(jiǎn)稱PADT報(bào)文,它可以在會(huì)話建立后的任何時(shí)候發(fā)送,來終止PPPOE會(huì) 話。它可以由主機(jī)或者接入集中器發(fā)送。當(dāng)接收到一個(gè)PADT,不再允許使 用這個(gè)會(huì)話來發(fā)送PPP業(yè)務(wù)。在發(fā)送或接收PADT后,即使正常的PPP終 止分組也不必發(fā)送。PPP對(duì)端應(yīng)該使用PPP協(xié)議自身來終止PPPOE會(huì)話, 但是當(dāng)PPP不能使用時(shí),可以使用PADT。 PADT和PADI等發(fā)現(xiàn)階段報(bào)文 一樣,ETHER—TYPE都是0x8863 。
②PPP會(huì)話階段, 一旦PPPOE會(huì)話開始,PPP數(shù)據(jù)就可以以任何其它 的PPP封裝形式發(fā)送,即步驟104):進(jìn)入PPP會(huì)話階段,傳輸PPP數(shù)據(jù)。 其中,所有的以太網(wǎng)幀都是單播的,且PPPOE會(huì)話的SESSION一ID—定不 能改變,并且必須是發(fā)現(xiàn)階段分配的值。
完整的PPPOE通信流程還包括步驟105 ):發(fā)送PADT報(bào)文,結(jié)束PPPOE會(huì)話。
G)PPPOE的異常中斷過程正常情況下,用戶結(jié)束PPPOE下網(wǎng),會(huì)主 動(dòng)向?qū)拵Ы尤敕?wù)器Broadband Access Server,簡(jiǎn)稱BAS,發(fā)PADT報(bào)文, BAS收到后,動(dòng)作不同。有的廠商BAS回應(yīng)一個(gè)PADT報(bào)文確認(rèn)PPPOE 終結(jié),有的廠商BAS不^t動(dòng)作,不回應(yīng)。
在某些異常情況下,網(wǎng)元業(yè)務(wù)中斷,用戶的PPPOE被強(qiáng)行終結(jié),這種 情況下BAS無法收到用戶上行發(fā)送的PADT報(bào)文。由于在會(huì)話階段BAS會(huì) 定期向用戶主機(jī)發(fā)送Echo—Request報(bào)文,來判斷會(huì)話的狀態(tài)。如果它多次 沒有收到主機(jī)回饋信號(hào),則認(rèn)為用戶為異常下線,從而要求遠(yuǎn)程驗(yàn)證用戶撥 入服務(wù)器Remote Authentication Dial In User Service,簡(jiǎn)稱RADIUS,終止計(jì) 費(fèi),釋放IP資源,并下發(fā)PADT報(bào)文,終結(jié)PPPOE會(huì)話。
卿PPPOE斷流檢測(cè)運(yùn)營(yíng)商通常對(duì)掉線率很關(guān)注,統(tǒng)計(jì)掉線率直接的
辦法需要采集RADIUS的信息,但往往一個(gè)城市只有幾臺(tái)RADIUS SERVER,其信息量極大,無法做出實(shí)時(shí)統(tǒng)計(jì),所以不可能對(duì)掉線率進(jìn)行實(shí) 時(shí)監(jiān)控。由于以上原因,目前沒有實(shí)際有效的實(shí)時(shí)監(jiān)控方法,使得在網(wǎng)管正 常的情況下即便大量的網(wǎng)元業(yè)務(wù)中斷,即大量用戶PPPOE斷流,網(wǎng)管上也 不會(huì)有任何告警,造成運(yùn)營(yíng)商無法作出恢復(fù)或任何減輕損失的舉動(dòng)來處理該 惡性故障。
另外,目前設(shè)備商提供了多種遠(yuǎn)端modem環(huán)回測(cè)試技術(shù)供運(yùn)營(yíng)商來進(jìn) 一步定位故障位置,其中ATM環(huán)回偵測(cè)雖然可以確認(rèn)ATM層鏈路是否正 常,但不能確認(rèn)之上的數(shù)據(jù)鏈路是否正常。而digital環(huán)回技術(shù)定位故障位置 時(shí),會(huì)將所有的數(shù)據(jù)都打環(huán),導(dǎo)致用戶無法上網(wǎng)。
(E)基于網(wǎng)絡(luò)處理器的數(shù)據(jù)報(bào)文捕獲當(dāng)前各主流網(wǎng)絡(luò)處理器Network Processor,具體可以是定制的ASIC芯片或FPGA芯片,均支持對(duì)于特定數(shù) 據(jù)報(bào)文的捕獲功能,其工作機(jī)制是這樣的程序員可以設(shè)定用于捕獲特定數(shù) 據(jù)報(bào)文的報(bào)文過濾器filter, filter—旦設(shè)置生效并應(yīng)用到端口后,當(dāng)端口接 收到匹配的報(bào)文后,網(wǎng)絡(luò)處理器芯片底層硬件觸發(fā)中斷,然后按照指定的中 斷服務(wù)程序用于報(bào)文捕獲后的數(shù)據(jù)處理。
發(fā)明內(nèi)容
本發(fā)明需要解決的技術(shù)問題是提供一種基于網(wǎng)絡(luò)處理器的數(shù)據(jù)線路偵 測(cè)方法,在網(wǎng)元網(wǎng)管正常的情況下,對(duì)用戶的異常下線,做一個(gè)實(shí)時(shí)監(jiān)控并 向網(wǎng)管發(fā)送告警,供其輸出告警或做統(tǒng)計(jì)信息,填補(bǔ)目前該領(lǐng)域的空白。
本發(fā)明的上述技術(shù)問題這樣解決,提供一種基于網(wǎng)絡(luò)處理器的數(shù)據(jù)線 路偵測(cè)方法,用戶主機(jī)通過DSLAM設(shè)備連接接入集中器,包括以下步驟
1.1) 確定待偵測(cè)線路對(duì)應(yīng)DSLAM設(shè)備用戶端口 ;
1.2) 網(wǎng)絡(luò)處理器捕獲反映線路質(zhì)量的上下行關(guān)鍵數(shù)據(jù)報(bào)文;
1.3) 網(wǎng)絡(luò)處理器依數(shù)據(jù)正常和異常通訊流程進(jìn)行邏輯判斷;
1.4) 網(wǎng)絡(luò)處理器根據(jù)邏輯判斷結(jié)果選擇輸出異常報(bào)警;
1.5) 根據(jù)所述異常報(bào)警進(jìn)一步進(jìn)行分析和處理。 按照本發(fā)明提供的偵測(cè)方法,所述關(guān)鍵數(shù)據(jù)報(bào)文是PPPOE協(xié)議上下行 PADT包或上行PADI包。
按照本發(fā)明提供的偵測(cè)方法,所述關(guān)鍵數(shù)據(jù)報(bào)文是802. lx協(xié)議下行 EAPOL-Encapsulated-ASF-Alert包。
按照本發(fā)明提供的偵測(cè)方法,所述數(shù)據(jù)異常通訊流程是指設(shè)備或鏈路故 障所造成的線路通訊結(jié)束;所述數(shù)據(jù)正常通訊流程是指通訊完成所造成的線 路通訊結(jié)束。
按照本發(fā)明提供的偵測(cè)方法,所述邏輯判斷是指區(qū)分所述線路通訊結(jié)束情況。
按照本發(fā)明提供的偵測(cè)方法,所述異常報(bào)警可以是目的地址是網(wǎng)管的包 含斷流信息的數(shù)據(jù)報(bào)文。
按照本發(fā)明提供的偵測(cè)方法,所述異常報(bào)警包含斷流信息,可以直接輸 出給與DSLAM設(shè)備端口連接的PC機(jī)。
按照本發(fā)明提供的偵測(cè)方法,所述斷流告警包括所述用戶端口和發(fā)生狀 況時(shí)間。
按照本發(fā)明提供的偵測(cè)方法,所述網(wǎng)絡(luò)處理器可以是定制的ASIC芯片 或FPGA芯片。
按照本發(fā)明提供的偵測(cè)方法,所述網(wǎng)絡(luò)處理器可以是定制的ASIC芯片 或FPGA芯片。
按照本發(fā)明提供的偵測(cè)方法,所述步驟1.2)、 1.3)和1.4)網(wǎng)絡(luò)處理器對(duì) 應(yīng)于所述用戶端口的捕獲規(guī)則和處理腳本由管理或測(cè)試人員預(yù)先或測(cè)試前 通過DSLAM設(shè)備人機(jī)接口配置。。
本發(fā)明提供的基于網(wǎng)絡(luò)處理器的數(shù)據(jù)線路偵測(cè)方法,利用網(wǎng)絡(luò)處理器捕 獲異常斷流的關(guān)鍵報(bào)文結(jié)合邏輯判斷向網(wǎng)管發(fā)送告警信息,滿足了運(yùn)營(yíng)商急 需DSLAM自動(dòng)線路偵測(cè)的需求,并可在本發(fā)明的基礎(chǔ)上,為進(jìn)一步發(fā)展線 路定位故障技術(shù)提供了契機(jī),完善modem遠(yuǎn)端環(huán)回檢測(cè)等手段;以便今后 在偵測(cè)出線路故障的情況時(shí),可以上發(fā)網(wǎng)管告警,并由網(wǎng)管采取檢測(cè)手段進(jìn) 行進(jìn)一步的故障定位工作,以獲取具體的故障位置等相關(guān)信息,因此具有較
高的應(yīng)用前景。
下面結(jié)合附圖和具體實(shí)施例進(jìn)一步對(duì)本發(fā)明進(jìn)行詳細(xì)說明。
圖1為寬帶接入PPPOE通信流程示意圖。
圖2為本發(fā)明方法應(yīng)用在DSLAM設(shè)備用戶端口上的處理流程示意圖。
具體實(shí)施例方式
下面以PPPOE協(xié)議為例詳細(xì)說明本發(fā)明
首先,說明本發(fā)明的關(guān)鍵根據(jù)BAS服務(wù)器對(duì)PPPOE異常中斷后的處 理流程,利用網(wǎng)絡(luò)處理器的數(shù)據(jù)報(bào)文捕獲功能,在此基礎(chǔ)上做出一系列相應(yīng) 判斷處理,具體如下
1. 首先利用在上文提到的數(shù)據(jù)報(bào)文捕獲機(jī)制,應(yīng)用到有需要的用戶端 口上,對(duì)上行的數(shù)據(jù)流偵測(cè)捕獲PADT包,如果捕獲到PADT包,DSLAM 內(nèi)部全局變量置位,然后上行轉(zhuǎn)發(fā)。
2. 如果捕獲上行PADT包后,在一段時(shí)間后,又捕獲到PADI包,說 明上游BAS如背景技術(shù)三中描述是不回應(yīng)PADT包的類型,先前是正常的 PPPOE終結(jié),所以將全局變量清零。
3. 同時(shí)對(duì)下行的數(shù)據(jù)流也開始捕獲PADT包,如果捕獲到PADT包, 下行繼續(xù)轉(zhuǎn)發(fā)。
4. 如果捕獲到下行的PADT包,通過查詢?nèi)肿兞渴欠裰?來判斷之 前是否捕獲到了上行的PADT包,如果有上行PADT包,說明上游BAS是 回應(yīng)PADT包的類型,可認(rèn)為用戶是正常下網(wǎng),將全局變量置O,如果沒有 則認(rèn)為是異常斷流。
5. 確認(rèn)是異常斷流后,向大網(wǎng)管發(fā)送告警,供大網(wǎng)管記錄統(tǒng)計(jì)。
第二步,本發(fā)明通過DSLAM捕獲PPPOE的PADT包,進(jìn)行邏輯判斷 后,來滿足實(shí)時(shí)監(jiān)控需求。(-)本發(fā)明方法應(yīng)用在DSLAM設(shè)備用戶端口上,
分為正常和異常情況,具體是
1. 正常情況下,用戶結(jié)束PPPOE下網(wǎng),會(huì)主動(dòng)向BAS上行發(fā)PADT 報(bào)文,這種情況下DSLAM首先在用戶口抓到了上行的PADT報(bào)文,置位該 端口對(duì)應(yīng)的全局變量表示收到上行的PADT報(bào)文,然后將其上行轉(zhuǎn)發(fā)。
2. BAS收到后,下行回復(fù)一個(gè)PADT報(bào)文確認(rèn)PPPOE終結(jié),DSLAM 抓到后,查詢?nèi)肿兞肯惹岸丝谑欠袷盏缴闲械腜ADT報(bào)文,發(fā)現(xiàn)收到過, 說明是用戶正常的終結(jié)PPPOE,轉(zhuǎn)發(fā)下行的PADT報(bào)文,將對(duì)應(yīng)全局變量 清零,終結(jié)PPPOE。
3. 如果BAS是收到PADT報(bào)文后,不回復(fù)的類型,在用戶的下次 PPPOE上網(wǎng)時(shí),DSLAM抓到用戶撥號(hào)的PADI報(bào)文,查詢?nèi)肿兞渴欠?置位,如有即將對(duì)應(yīng)全局變量清零,上行轉(zhuǎn)發(fā)PADI報(bào)文。
4. 在某些異常情況下,網(wǎng)元業(yè)務(wù)中斷,用戶的PPPOE被強(qiáng)行終結(jié),鏈 路中斷,BAS就無法收到用戶上行發(fā)送的PADT報(bào)文。如上文在背景技術(shù) 三,PPPOE的異常中斷過程中描述,在會(huì)話階段BAS會(huì)定期向用戶主機(jī)發(fā) 送Echo—Request報(bào)文,來判斷會(huì)話的狀態(tài)。如果它多次沒有收到主機(jī)回饋 信號(hào),則認(rèn)為用戶為異常下線,會(huì)主動(dòng)下發(fā)PADT報(bào)文,終結(jié)PPPOE會(huì)話。 這時(shí)DSLAM抓到了下行的PADT報(bào)文,查詢?nèi)肿兞肯惹岸丝谑欠袷盏缴?行的PADT報(bào)文,發(fā)現(xiàn)沒有收到過,說明是異常的PPPOE終結(jié)。
5. 將端口信息發(fā)送給網(wǎng)管告警,供網(wǎng)管統(tǒng)計(jì)分析。
(二)本發(fā)明方法應(yīng)用在DSLAM設(shè)備用戶端口上的處理流程,具體如圖2 所示,包括步驟
200 )DSLAM設(shè)備開啟綁定在端口上的過濾器filter對(duì)PPPOE的上下行 0x8863報(bào)文持續(xù)進(jìn)行抓包;根據(jù)抓包的具體情況選擇進(jìn)入步驟210)、步驟 220)或步驟230);
210) 抓到上行PADI報(bào)文;
211) 檢查全局變量是否置位,如果置位就清零;
212) 將上行PADI報(bào)文繼續(xù)向上轉(zhuǎn)發(fā);轉(zhuǎn)入結(jié)束步驟END); 220 )抓到上行PADT l艮文;
221 )置位全局變量(即設(shè)為1,該全局變量原為0);
222)將上行PADT報(bào)文繼續(xù)向上轉(zhuǎn)發(fā);轉(zhuǎn)入結(jié)束步驟END);
230) 抓到下行PADT報(bào)文;
231) 判斷全局變量是否為1 是,進(jìn)入步驟231 l);否,進(jìn)入步驟2312); 2311 )說明是正常終結(jié),將下行PADT報(bào)文繼續(xù)轉(zhuǎn)發(fā),將全局變量清零; 2312)說明是異常終結(jié),轉(zhuǎn)發(fā)下行PAI)T報(bào)文,并向大網(wǎng)管告警。 END)結(jié)束此次腳本處理,返回步驟200)繼續(xù)進(jìn)行抓包。
權(quán)利要求
1、一種基于網(wǎng)絡(luò)處理器的數(shù)據(jù)線路偵測(cè)方法,用戶主機(jī)(1)通過DSLAM設(shè)備連接接入集中器(2),其特征在于,包括以下步驟1.1)確定待偵測(cè)線路對(duì)應(yīng)DSLAM設(shè)備用戶端口;1.2)網(wǎng)絡(luò)處理器捕獲反映線路質(zhì)量的上下行關(guān)鍵數(shù)據(jù)報(bào)文;1.3)網(wǎng)絡(luò)處理器依數(shù)據(jù)正常和異常通訊流程進(jìn)行邏輯判斷;1.4)網(wǎng)絡(luò)處理器根據(jù)邏輯判斷結(jié)果選擇輸出異常報(bào)警;1.5)根據(jù)所述異常報(bào)警進(jìn)一步進(jìn)行分析和處理。
2、 根據(jù)權(quán)利要求1所述偵測(cè)方法,其特征在于,所述關(guān)鍵數(shù)據(jù)報(bào)文 是PPPOE協(xié)議上下行PADT包或上行PADI包。
3、 根據(jù)權(quán)利要求1所述偵測(cè)方法,其特征在于,所述關(guān)鍵數(shù)據(jù)報(bào)文 是802. lx協(xié)議下行EAPOL-Encapsulated-ASF-Alert包。
4、 根據(jù)權(quán)利要求1所述偵測(cè)方法,其特征在于,所述數(shù)據(jù)異常通訊 流程是指設(shè)備或鏈路故障所造成的線路通訊結(jié)束;所述數(shù)據(jù)正常通訊流程是 指通訊完成所造成的線路通訊結(jié)束。
5、 根據(jù)權(quán)利要求1或4所述偵測(cè)方法,其特征在于,所述邏輯判斷 是指區(qū)分所述線路通訊結(jié)束情況。
6、 根據(jù)權(quán)利要求1所述偵測(cè)方法,其特征在于,所述異常報(bào)警可以 是目的地址是網(wǎng)管的包含斷流信息的數(shù)據(jù)報(bào)文。
7、 根據(jù)權(quán)利要求1所述偵測(cè)方法,其特征在于,所述異常報(bào)警包含 斷流信息,可以直接輸出給與DSLAM設(shè)備端口連接的PC機(jī)。
8、 根據(jù)權(quán)利要求6或7所述偵測(cè)方法,其特征在于,所述斷流告警 包括所述用戶端口和發(fā)生狀況時(shí)間。
9、 根據(jù)權(quán)利要求1所述偵測(cè)方法,其特征在于,所迷網(wǎng)絡(luò)處理器可 以是定制的ASIC芯片或FPGA芯片。
10、 根據(jù)權(quán)利要求1所述偵測(cè)方法,其特征在于,所述步驟1.2)、 1.3) 和1.4)網(wǎng)絡(luò)處理器對(duì)應(yīng)于所述用戶端口的捕獲規(guī)則和處理腳本由管理或測(cè) 試人員預(yù)先或測(cè)試前通過DSLAM設(shè)備人機(jī)接口配置。
全文摘要
本發(fā)明涉及一種基于網(wǎng)絡(luò)處理器的數(shù)據(jù)線路偵測(cè)方法,用戶主機(jī)(1)通過DSLAM設(shè)備連接接入集中器(2),包括確定待偵測(cè)線路對(duì)應(yīng)用戶端口;捕獲反映質(zhì)量的關(guān)鍵數(shù)據(jù)報(bào)文;邏輯判斷;選擇輸出異常報(bào)警;分析和處理。這種方法利用網(wǎng)絡(luò)處理器捕獲關(guān)鍵報(bào)文進(jìn)行邏輯判斷,能夠自動(dòng)偵測(cè)線路斷流,并可進(jìn)一步發(fā)展現(xiàn)有線路定位故障技術(shù),完善modem遠(yuǎn)端環(huán)回檢測(cè)等手段;以便在偵測(cè)出線路故障的情況時(shí),可以上發(fā)網(wǎng)管告警,并由網(wǎng)管采取可能的檢測(cè)手段進(jìn)行進(jìn)一步的故障定位工作,以獲取具體的故障位置等相關(guān)信息,因此具有很高的應(yīng)用前景。
文檔編號(hào)H04L12/26GK101192998SQ200610144829
公開日2008年6月4日 申請(qǐng)日期2006年11月21日 優(yōu)先權(quán)日2006年11月21日
發(fā)明者楠 吳, 李宗明, 熊文杰, 邢思遠(yuǎn) 申請(qǐng)人:中興通訊股份有限公司