1.ISDN介紹
ISDN是綜合業(yè)務(wù)數(shù)字網(wǎng)(Integrated Services Digital Network)的英文縮寫,它由電話綜合數(shù)字網(wǎng)(IDN)演變而成,提供端到端的數(shù)字連接,支持一系列廣泛的業(yè)務(wù)(包括話音和非話音業(yè)務(wù))。
ISDN為用戶提供一組有限的標(biāo)準(zhǔn)多用途用戶-網(wǎng)絡(luò)接口(UNI),ITU-T的I.412建議中為用戶-網(wǎng)絡(luò)接口規(guī)定了兩種接口結(jié)構(gòu):基本接口(BRI)和一次群速率接口(PRI),BRI帶寬為2B+D,PRI帶寬為30B+D或23B+D。其中:
B信道為用戶信道,用來傳送話音、數(shù)據(jù)等用戶信息,傳送速率是64Kbps;
D信道為控制信道,它傳送公共信道信令,這些信令用來控制同一接口的B信道上的呼叫。D信道的速率是64 Kbps(PRI)或16 Kbps(BRI)。
ITU-T Q.921是D信道的數(shù)據(jù)鏈路層協(xié)議,它定義了用戶到網(wǎng)絡(luò)接口上第2層實(shí)體間經(jīng)D信道交換信息的規(guī)則,同時(shí)支持第3層實(shí)體的接入。ITU-T Q.931是D信道的網(wǎng)絡(luò)層協(xié)議,它提供在通信應(yīng)用實(shí)體間建立、保持和終接網(wǎng)絡(luò)連接的方法。
2.1 ISDN接口的物理故障
ISDN接口的物理故障可能是由以下原因造成的:
(1) PRI接口
采用display controller e1命令可以查詢該接口物理連接是否正確。如果該cE1/PRI接口處于DOWN狀態(tài),說明物理連接不正確,可能是接口脫落導(dǎo)致,或者同軸電纜接反,需要將接頭插緊或者調(diào)整同軸電纜連接即可。如果已經(jīng)確認(rèn)接口的物理連接正確,但是仍然無法進(jìn)入U(xiǎn)P狀態(tài),則檢查電纜兩端的物理幀格式封裝,Quidway26/36系列路由器缺省采用NO-CRC4幀格式校驗(yàn)。只有當(dāng)電纜兩端幀格式校驗(yàn)配置一致,cE1/PRI接口才能正常進(jìn)入U(xiǎn)P狀態(tài)。
(2) BRI接口
沒有呼叫時(shí)其接口始終處于去激活狀態(tài)。當(dāng)路由器一上電啟動,使用display interfaces bri命令就能查詢到該接口物理狀態(tài)為UP,協(xié)議狀態(tài)是spoofing,因此在沒有呼叫時(shí)無法判斷BRI接口物理狀態(tài)是否正常。
2.2 ISDN接口的鏈路故障
當(dāng)PRI接口物理狀態(tài)正常時(shí),或采用BRI接口進(jìn)行呼叫時(shí),如果使用debug isdn q921命令只顯示SABME幀,而無法顯示收發(fā)的RR幀,則說明Q.921鏈路建立失敗。
如果確認(rèn)是Q.921鏈路建立失敗,由于Q.921建議描述了非對稱設(shè)備之間的通訊參數(shù)和規(guī)程,即電纜兩端必須一端作用戶側(cè),一端作網(wǎng)絡(luò)側(cè)。Quidway26/36系列路由器目前只支持用戶側(cè),因此與之相連的交換機(jī)必須配置為網(wǎng)絡(luò)側(cè),否則無法成功建鏈。
2.3 Modem的物理故障
Modem的物理故障可能是由以下原因造成的:
Modem通過V.24同軸電纜與路由器的同步(或異步)接口相連,如果使用debug modem at命令后始終不顯示“ok”,說明Modem不正常,可以嘗試關(guān)電源重新復(fù)位Modem。
如果能看到“ok”,主叫端Modem一直在撥號,但接收端沒有摘機(jī)(伴隨有“卡嗒”聲),則需要查看Modem的自動應(yīng)答屬性是否正確。有些Modem的屬性是自動應(yīng)答,路由器就應(yīng)該采用undo modem auto-answer命令取消自動應(yīng)答;如果Modem屬性是非自動應(yīng)答,路由器就需要采用modem auto-answer命令來配置自動應(yīng)答屬性。Modem撥號成功率與Modem本身質(zhì)量和線路質(zhì)量都有關(guān),需要耐心多嘗試。
如果無法確認(rèn)Modem是否為自動應(yīng)答,可以采用超級終端連接Modem,采用AT命令at&v來查看。如果查看結(jié)果中ats0=1表示為自動應(yīng)答,ats0=0表示為非自動應(yīng)答。如果需要設(shè)置Modem的自動應(yīng)答屬性,則使用ats0=0命令設(shè)置為非自動應(yīng)答,或者采用ats0=1設(shè)置為自動應(yīng)答,并且用at&w命令來保存配置。
如果已經(jīng)確認(rèn)Modem正常,并且呼叫總是出現(xiàn)忙音,說明被叫端占線,可能對端線路正在使用;或者出現(xiàn)兩端同時(shí)在嘗試呼叫對端,從而出現(xiàn)呼叫沖突。對于被呼線路正在使用的情況,可以等待對端掛斷后再嘗試呼叫;如果出現(xiàn)呼叫沖突,可以采用配置dialer timer enable命令將兩端的呼叫間隔設(shè)置為不同的值,從而避免下次呼叫再發(fā)生呼叫沖突。
2.4 同/異步Modem撥號的配置問題
首先確定采用同步撥號,還是異步撥號。
對于同步撥號,其接口必須是同步撥號接口;對于異步撥號,如果采用同/異步接口(即Serial接口),則必須先使用命令physical-mode asynchronous命令把該接口設(shè)置為異步口,同時(shí)采用命令modem設(shè)置Modem撥號屬性;對于異步接口(即Async接口),直接采用modem命令設(shè)置Modem撥號屬性。
2.5 無法發(fā)起撥號
撥號接口的IP或者IPX路由失敗
如果使用debug ip packet命令打開調(diào)試開關(guān)后顯示路由失敗的提示,則使用display ip route命令查看路由是否正確,使用display current-configuration 查看撥號接口的配置,檢查撥號接口上的IP或者IPX地址是否配置正確。
撥號接口沒有使能
使用debug dialer event命令打開撥號調(diào)試開關(guān),如果顯示“
DCC: DCC must be Configured on the interface”的提示,則使用采用display current-configuration命令查看撥號接口配置,如果是輪循DCC必須采用dialer enable-circular命令使能DCC;如果是共享DCC(撥號接口采用PPP封裝)必須采用dialer user命令和dialer bundle命令來使能。
未配置撥號觸發(fā)條件
使用debug dialer event和debug dialer packet命令打開DDR相應(yīng)的調(diào)試開關(guān),如果能看到 “DCC: The interface has no dialer-group.”或“DCC: it is an uninteresting packet” 提示信息,則采用display current-configuration命令查看撥號口配置,如果沒有在撥號口上配置dialer-group命令,則需添加配置;如果已經(jīng)配置了dialer-group則查看dialer-group的序號與dialer-rule對應(yīng)的序號是否一致,并且dialer-rule設(shè)置的觸發(fā)報(bào)文類型或者條件是否正確(切記dialer-rule缺省是禁止觸發(fā)撥號,除非配置為permit)。只有出現(xiàn)“DCC: it is an interesting packet”時(shí)才可能正確撥號。
未配置撥號串
使用debug dialer event和debug dialer packet命令,打開DDR相應(yīng)的調(diào)試開關(guān),如果出現(xiàn)“DCC: there is not a dialer route matching this address”和“DCC: there is not a dialer number on the interface,failed,discard packet”調(diào)試信息,則使用display current-configuartion命令查看撥號口配置。如果在呼出的接口上既沒有配置dialer route命令又沒有配置dialer number命令,則說明沒有配置撥號串(對于共享DCC必須采用配置dialer number;對于輪循DDR采用二者之一來配置)。對于被呼的接口,如果是同步撥號口則必須同樣配置撥號串;如果是其他接口,則可以省略該配置。
2.6 撥號串設(shè)置錯(cuò)誤
主呼端已經(jīng)發(fā)起呼叫,使用debug dialer packet、debug dialer event、debug modem at、debug isdn q931命令打開對應(yīng)的調(diào)試開關(guān),如果在被呼端沒有接收到呼叫的信息提示,則首先檢查被呼端的物理連接是否正確,如果連接正確,則需要確認(rèn)被呼端的中繼號、BRI號或者電話號與主呼端配置的撥號串是否一致。
2.7 呼叫的建鏈過程失敗
主呼端已經(jīng)發(fā)起呼叫,使用debug dialer packet和debug dialer event命令打開DDR調(diào)試開關(guān)后,如果提示信息正常;而使用debug ppp packet(如果物理接口封裝為PPP)沒有任何PPP報(bào)文輸出,并提示“DCC:wait-for-carrier-timeout on a link on interface ***,shutdown!start enable-time”,然后呼叫掛斷。按照如下步驟進(jìn)行分析:
如果采用Modem撥號,使用debug modem at和debug modem event命令打開Modem調(diào)試開關(guān),如果提示線路忙說明設(shè)置的呼叫號碼是自己。如果提示“DCC:wait-for-carrier-timeout on a link on interface ***,shutdown!start enable-time”則可能對端正在使用,或者出現(xiàn)呼叫沖突,也有可能是線路質(zhì)量比較差。
如果采用ISDN撥號,使用debug isdn q921和debug isdn q931命令打開ISDN調(diào)試開關(guān),如果出現(xiàn)RR幀則說明物理連接和Q.921協(xié)議運(yùn)行正常,再通過查看Q.931消息Disconnect或者Release、Release Complete中的Cause原因值來獲取呼叫掛斷的原因,然后根據(jù)具體原因進(jìn)行修改。
在采用ISDN撥號時(shí)交換機(jī)的最小和最大號碼長度判斷很嚴(yán)格。如果在發(fā)起呼叫的Setup消息之后,交換機(jī)返回Disconnect消息,并且Cause原因值為9c則表明呼叫號碼不正確,需要確認(rèn)交換機(jī)配置的最小號長或者最大號長是否正確。
2.8 呼叫沖突
兩臺路由器同時(shí)向?qū)Χ税l(fā)起呼叫時(shí),按照如下步驟進(jìn)行分析:
兩端同時(shí)發(fā)起呼叫,如果對端正在被使用,則只有等待對端掛斷;
兩端采用自動呼叫間隔,并以同樣的時(shí)間發(fā)起呼叫,需要調(diào)整自動撥號間隔(命令dialer autodial-interval)或者兩次撥號使能時(shí)間間隔(命令dialer timer enable),使兩端的間隔不一致;
兩端都配置了DCC接口負(fù)載閾值(命令dialer threshold 0),一個(gè)通道呼叫成功后,其他通道的呼叫本應(yīng)該幾乎同時(shí)UP,卻每次都參差不齊、沒有規(guī)律,甚至其他通道都可能無法呼叫成功。此時(shí),需要取消一端的dialer threshold配置。
2.9 用戶認(rèn)證失敗
主呼端已經(jīng)發(fā)起呼叫,使用debug dialer packet和debug dialer event命令打開DDR調(diào)試開關(guān),查看到呼叫正常;使用debug ppp packet命令打開PPP調(diào)試開關(guān),已經(jīng)有PPP報(bào)文收發(fā)。按照如下步驟進(jìn)行分析:
查看PPP協(xié)商報(bào)文,如果有PAP或者CHAP認(rèn)證報(bào)文,但是認(rèn)證過程失敗,則使用display current-configuration命令查看兩端配置的用戶名和密碼是否匹配。
如果在撥號口配置的dialer route命令中有name選項(xiàng),也要確認(rèn)該用戶名與對端的IP是否對應(yīng)。
對于共享DCC來說,由于是通過用戶名來區(qū)分每個(gè)Dialer口,因此如果作為主呼端,必須在Dialer接口上配置ppp authentication命令來要求對端發(fā)送用戶名和密碼。如果共享DCC作為被呼端,需要通過對端的用戶名來查找所屬的父接口,因此必須在共享DCC采用的物理接口上配置ppp authentication命令來要求對端發(fā)送用戶名和密碼。
2.10 IP地址協(xié)商錯(cuò)誤
呼叫開始且PPP協(xié)商成功,但呼叫被掛斷。按照如下步驟進(jìn)行分析:
使用debug dialer event和debug dialer packet命令打開DDR調(diào)試開關(guān),如果看到“DCC:peeraddr matching error on interface ***,shutdown link”的提示,說明對端的IP地址與本端dialer map配置的IP地址一致,所以呼叫被拒絕。
采用dialer string命令進(jìn)行配置,問題解決。
2.11 PPP回呼失敗
PPP回呼的Client端呼叫成功,但Server端沒有掛斷呼叫也沒有回呼。按照如下步驟進(jìn)行分析:
使用debug dialer event和debug dialer packet命令打開DDR調(diào)試,如果沒有出現(xiàn)“DCC: Link layer transfer callback request with name '' and dialstring '' to DCC on interface”信息,則查看Client端是否配置ppp callback client命令,或者Server端是否配置ppp callback server命令。
如果出現(xiàn)“: Link layer transfer callback request with name '' and dialstring '' to DDR on interface”信息,但沒有出現(xiàn)“DCC: Ready to callback, disconnect the income-call first.”信息,則需要查看Server端是否配置dialer callback server命令,如果配置為dialer callback-center user,則表明采用dialer route中與username匹配的撥號串回呼;如果配置為dialer callback-center dial-number則采用local-user 命令中的callback-dialstring來回呼,因此需要查找對應(yīng)的回呼撥號串是否存在并且正確。
2.12 ISDN回呼失敗
ISDN被呼端接收到呼叫,但沒有掛斷呼叫并回呼。按照如下步驟進(jìn)行分析:
使用debug isdn q931和debug dialer event命令打開調(diào)試開關(guān),顯示出 “DDR: Receive CALL_CONN_IND”和“DDR: Received
a Caller with ID ' ' in interface”信息,如果ID為空或者ID與Server端的dialer call-in配置的ID不一致,回呼就會失敗。
ISDN回呼需要交換機(jī)的配合,需要在交換機(jī)上配置成:將主叫號碼前轉(zhuǎn)并發(fā)送給被呼端,這樣ISDN回呼才能成功。
2.13 呼叫掛斷后,再次呼叫失敗
使用debug dialer event和debug dialer packet命令打開DDR調(diào)試開關(guān),顯示“DDR:Enable-timeout is effective ,failed”的提示,則為了防止呼叫過于頻繁,DDR要求兩次呼叫之間必須有間隔,如果提示“DDR:Enable-timeout is effective ,failed”,則說明該間隔時(shí)間還沒有超時(shí),只需等待即可。如果設(shè)置的時(shí)間比較長,可以使用dialer timer enable命令進(jìn)行修改。