本產品的文件集力求使用無偏見用語。針對本文件集的目的,無偏見係定義為未根據年齡、身心障礙、性別、種族身分、民族身分、性別傾向、社會經濟地位及交織性表示歧視的用語。由於本產品軟體使用者介面中硬式編碼的語言、根據 RFP 文件使用的語言,或引用第三方產品的語言,因此本文件中可能會出現例外狀況。深入瞭解思科如何使用包容性用語。
思科已使用電腦和人工技術翻譯本文件,讓全世界的使用者能夠以自己的語言理解支援內容。請注意,即使是最佳機器翻譯,也不如專業譯者翻譯的內容準確。Cisco Systems, Inc. 對這些翻譯的準確度概不負責,並建議一律查看原始英文文件(提供連結)。
本檔案介紹陸地行動無線電(LMR)或Hoot and Holler(Hootie)功能,此功能允許類比裝置透過啟用多點傳送的LAN與其他(類比和IP)終端通訊。
語音網關充當IP網路和模擬端點之間的分界點,促進模擬音訊和組播即時傳輸協定(RTP)之間的交流。
作者:Kyzer Davis和Matt Snow,思科TAC工程師。
思科建議您瞭解以下主題:
! license boot level appxk9 license boot level uck9 ! or
license boot suite FoundationSuiteK9
license boot suite AdvUCSuiteK9
附註:本檔案未涉及LAN或WAN上多點傳送組態的許多方面。請參閱適用的文檔,以在網路路徑中啟用LAN或WAN裝置上的組播。
ISR4451# show inventory NAME: "Chassis", DESCR: "Cisco ISR4451 Chassis" PID: ISR4451-X/K9 , VID: V03 , SN: XXXXXXXXX NAME: "NIM subslot 0/3", DESCR: "NIM-4E/M Voice Analog Module" PID: NIM-4E/M , VID: V01 , SN: XXXXXXXXX
附註:與ISR 4000語音網關配合使用的模擬NIM卡使用本地NIM DSP。 因此不需要主機板DSP。
潛在使用案例:
附註:以下是一些示例使用情形。應用程式不限於這些功能。
LMR的原始設計手冊未涵蓋最新一代思科語音網關所需的專案。因此,本文檔旨在介紹ISR 4300和4400系列語音網關等IOS-XE裝置的LMR/Hootie功能。
以下是拓撲示例;
第7層信令和媒體
Analog Endpoint <> Ear and Mouth (E&M) Port <> Cisco Voice Gateway (4451-X) <> Multicast Enabled LAN <> IP Endpoint.
提示:請記住,因為IP骨幹網使用多點傳送,語音閘道只需要能夠成功加入所需的多點傳送群組。語音網關並不瞭解其他終端,也不直接與其通訊,因此本文檔詳細說明了一個LMR/Hootie語音網關中的示例配置、調試、顯示命令和故障排除。
步驟1。您必須首先配置操作語音和多播功能所需的IOS-XE許可證。
config t ! license boot level appxk9 license boot level uck9
! or
license boot suite FoundationSuiteK9
license boot suite AdvUCSuiteK9 ! exit ! wr ! reload !
裝置重新通電後,驗證許可證狀態是否與以下show命令輸出匹配:
ISR4451# show license feature Feature name Enforcement Evaluation Subscription Enabled RightToUse appxk9 yes yes no yes yes uck9 yes yes no yes yes
步驟2.接下來,定義包含所需組播IP和埠的組播IP語音撥號對等體;
! dial-peer voice 33333 voip
destination-pattern 33333
session protocol multicast
session target ipv4:239.X.X.X:21000
codec g711ulaw
vad aggressive !
Dial-peer命令語法:
CLI指令 | 說明 |
destination-pattern <number> | 撥號對等體的Match語句。撥號對等體必須可用。 |
會話協定組播 | 指示裝置此撥號對等體用於IP組播功能。 |
會話目標ipv4:<a.b.c.d.>:xxxxx | 這是語音網關加入以傳送/接收組播RTP的組播組的IP和埠。 |
codec <codec> |
定義用於多播RTP資料包的編解碼器。支援的編解碼器是G711ulaw、G711alaw、G729和G726。 |
[no] vad [aggressive] |
當您使用no vad命令禁用VAD時,請為此RTP流禁用語音活動檢測。 使用命令vad aggressive時,VAD雜訊閾值將從–78降低到–62 dBm。低於–62 dBm閾值的雜訊被視為靜音,不會通過網路傳送。此外,未知資料包被視為靜默資料包並被丟棄。來源 附註:使用vad aggressive時,由於不需要從LMR路由器傳送資料包,因此在show ip mroute中可能看不到VIF。 |
步驟3。為了協助多點傳送群組與此語音閘道之間的模擬連線埠永久性(一律為up)連線,您必須定義voice-class permanent,然後將其套用到語音連線埠。
! voice class permanent 1 signal timing oos timeout disabled signal keepalive disabled !
voice-port 0/1/0
voice-class permanent 1
!
voice class permanent command syntax
CLI指令 | 說明 | 來源 |
signal timing oos timeout { disabled | <seconds> } | 禁用信令丟失檢測。或者,可以配置秒數。 | 命令語法指南 |
signal keepalive { disabled | <seconds> } | 指定keepalive信令資料包間隔(以秒為單位)。停用不會傳送keepalive。 | 命令語法指南 |
然後為E&M埠配置所需的連線型別,然後配置命令。(E&M或本文檔未涵蓋的其他模擬特定配置有關詳細資訊,請參閱《E&M配置指南》。)
步驟4. Cisco hoot和holler over IP提供永遠線上的通訊網橋。終端使用者無需撥打任何電話號碼即可與hoot組的其他成員聯絡。為了模擬此功能,Cisco IOS提供一種稱為連線中繼的功能。連線中繼提供永久語音呼叫,由於所有數字均由路由器/網關內部撥號,因此不需要終端使用者進行任何輸入。
此連線中繼將語音埠繫結到您在撥號對等體配置步驟中配置的組播地址。
!
voice-port 0/1/0 connection trunk 33333 !
Analog Port命令語法
CLI指令 | 說明 | 來源 |
connection trunk <number> | 指定模擬與PBX的永久中繼連線的連線。如果沒有任何啟用呼叫,則中繼連線將保持永久。 | 命令語法指南 |
步驟5.語音配置完成後,您需要定義組播配置。
! ip multicast-routing distributed !
interface GigabitEthernet0/0/1
ip address Y.Y.Y.Y 255.255.255.0
ip pim sparse-mode
! interface Vif1
ip address 192.0.2.2 255.255.255.0
ip pim sparse-mode
!
interface Service-Engine0/1/0
ip pim sparse-mode
!
ip pim rp-address 2.x.x.x
!
有關組播配置的說明:
使用本節內容,確認您的組態是否正常運作。
當配置完成時,永久連線將停止。您可以使用此show命令輸出進行驗證;
ISR4451# show call active voice compact <callID> A/O FAX T<sec> Codec type Peer Address IP R<ip>:<udp> VRF Total call-legs: 2 115 ANS T24 g711ulaw TELE P 116 ORG T0 g711ulaw VOIP P33333 239.X.X.X:21000
ISR4451# show voip rtp connections VoIP RTP Port Usage Information: Max Ports Available: 19999, Ports Reserved: 101, Ports in Use: 0 Port range not configured Min Max Ports Ports Ports Media-Address Range Port Port Available Reserved In-use ------------------------------------------------------------------------------ Global Media Pool 8000 48198 19999 101 0 ------------------------------------------------------------------------------ VoIP RTP active connections : No. CallId dstCallId LocalRTP RmtRTP LocalIP RemoteIP MPSS VRF 1 116 115 15986 21000 192.0.2.1 239.X.X.X NO NA Found 1 active RTP connections
ISR4451# show voice port summary IN OUT PORT CH SIG-TYPE ADMIN OPER STATUS STATUS EC =============== == ============ ===== ==== ======== ======== == 0/3/1 -- e&m-imd up up trunked trunked y
ISR4451# show voice call summary PORT CODEC VAD VTSP STATE VPM STATE ============== ========= === ===================== ===================== 0/3/1 g711ulaw y S_CONNECT S_TRUNKED
ISR4451# show voice call status CallID CID ccVdb Port Slot/Bay/DSP:Ch Called # Codec MLPP Dial-peers 0x73 12D0 0x7F7475CF8C08 0/3/1 0/3/1:1 33333 g711ulaw 4 777 33333777/33333 1 active call found
ISR4451# show voice trunk-conditioning supervisory FAST SCAN 0/3/1 : state : TRUNK_SC_CONN_DEFAULT_OOS, voice : off , signal : on ,master status: lost keepalive, trunk connected sequence oos : idle and oos pattern :rx_idle = 0000 rx_oos = 1111 timeout timing : idle = 0, idle_off = 0, restart = 120, standby = 0, timeout = 30 supp_all = 0, supp_voice = 0, keep_alive = 5 timer: oos_ais_timer = 46, timer = 43 ISR4451# show voice trunk-conditioning signaling 0/3/1 : hardware-state ACTIVE signal type is NorthamericanCAS status : lost keepalive, forced playout pattern = 0xF idle monitoring : disabled tx_idle = FALSE, rx_idle = FALSE, tx_oos = FALSE, lost_keepalive = TRUE trunk_down_timer = 0, rx_ais_duration = 0, idle_timer = 0,tx_oos_timer = 0
要驗證IP到模擬複製,首先檢查新的IOS-XE命令:
ISR4451# show platform hardware qfp active feature sbc hootie group SBC Hootie structure : --------------------------------------- VRF = 0 IP = 239.X.X.X Port = 21000 Protocol = 1 Calls in group = 1 SBC Hootie group Statistics --------------------------------------- Total RTP packets received = 2873 Total RTP octects received = 573520 Total RTP packets replicated = 2873 Total RTP octects replicated = 573520 Total RTP packets dropped = 0 Total RTP octects dropped = 0 ISR4451# show platform hardware qfp active feature sbc hootie group SBC Hootie structure : --------------------------------------- VRF = 0 IP = 239.X.X.X Port = 21000 Protocol = 1 Calls in group = 1 SBC Hootie group Statistics --------------------------------------- Total RTP packets received = 3111 Total RTP octects received = 621032 Total RTP packets replicated = 3111 Total RTP octects replicated = 621032 Total RTP packets dropped = 0 Total RTP octects dropped = 0
驗證PIM鄰居:
ISR4451# show ip pim neighbor PIM Neighbor Table Mode: B - Bidir Capable, DR - Designated Router, N - Default DR Priority, P - Proxy Capable, S - State Refresh Capable, G - GenID Capable, L - DR Load-balancing Capable Neighbor Interface Uptime/Expires Ver DR Address Prio/Mode Y.Y.Y.Y GigabitEthernet0/0/1 00:20:13/00:01:41 v2 1 / DR S P G
驗證mroute輸出是否正確:
ISR4451# show ip mroute [snip] (192.0.2.1, 239.X.X.X), 00:01:08/00:02:20, flags: FT Incoming interface: Vif1, RPF nbr 0.0.0.0 Outgoing interface list: GigabitEthernet0/0/1, Forward/Sparse, 00:01:08/00:03:19
驗證清單中是否有多點傳送RP:
ISR4451# show ip igmp member Flags: A - aggregate, T - tracked L - Local, S - static, V - virtual, R - Reported through v3 I - v3lite, U - Urd, M - SSM (S,G) channel 1,2,3 - The version of IGMP, the group is in Channel/Group-Flags: / - Filtering entry (Exclude mode (S,G), Include mode (G)) Reporter: <mac-or-ip-address> - last reporter if group is not explicitly tracked <n>/<m> - <n> reporter in include mode, <m> reporter in exclude Channel/Group Reporter Uptime Exp. Flags Interface *,239.X.X.X 192.0.2.2 00:01:16 01:43 2VA Vi1
驗證組播資料包複製:
RP# show ip mroute count [snip] Group: 239.X.X.X, Source count: 1, Packets forwarded: 2107, Packets received: 2108 RP-tree: Forwarding: 2/0/56/0, Other: 2/0/0 Source: 192.168.19.1/32, Forwarding: 2105/50/158/80, Other: 2106/0/1
RP# show ip mroute count [snip] Group: 239.X.X.X, Source count: 1, Packets forwarded: 2190, Packets received: 2191 RP-tree: Forwarding: 2/0/56/0, Other: 2/0/0 Source: 192.168.19.1/32, Forwarding: 2188/50/159/80, Other: 2189/0/1
Cisco CLI Analyzer(僅供已註冊客戶使用)支援某些 show 指令。使用 Cisco CLI Analyzer 檢視 show 指令輸出的分析。
本節提供的資訊可用於對組態進行疑難排解。
如果連線未建立,請首先透過以下偵錯驗證訊號:
debug vpm signal debug voip vtsp session debug voip ccapi inout
調試示例:
123165: Oct XX 13:21:55.563: htsp_process_event: [0/3/1, S_DOWN, E_HTSP_IF_INSERVICE] 123166: Oct XX 13:21:55.564: %LINK-3-UPDOWN: Interface recEive and transMit 0/3/1, changed state to up 123167: Oct XX 13:21:55.564: recEive and transMit 0/3/1 rx_signal_map: 0 0 0 0 0 0 0 0 8 8 8 8 8 8 8 8 123168: Oct XX 13:21:55.564: recEive and transMit 0/3/1 tx_signal_map: 0 0 0 0 0 0 0 0 C C C C C C C C 123169: Oct XX 13:21:55.564: htsp_process_event: [0/3/1, S_OPEN_PEND, E_HTSP_GO_TRUNK]em_trunk_null_init 123170: Oct XX 13:21:55.564: flex_set_Legerity_impedance: [0/3/1] impedance = 0 123171: Oct XX 13:21:55.704: htsp_process_event: [0/3/1, S_TRUNK_NULL, E_HTSP_INSERVE]default_trunk_down 123172: Oct XX 13:21:55.704: htsp_timer - 6204 msec 123173: Oct XX 13:21:55.919: %SYS-5-CONFIG_I: Configured from console by vty3 (192.168.19.2) 123174: Oct XX 13:22:01.908: htsp_process_event: [0/3/1, S_TRUNK_PEND, E_HTSP_EVENT_TIMER] 123175: Oct XX 13:22:01.908: htsp_timer_stop htsp_setup_ind 123176: Oct XX 13:22:01.908: [0/3/1] get_local_station_id calling num= calling name= calling time=10/08 13:22 orig called= 123177: Oct XX 13:22:01.908: htsp_timer - 2000 msec 123181: Oct XX 13:22:01.909: //-1/80F08D0180E8/CCAPI/cc_api_call_setup_ind_common: Interface=0x7F7475CF8C08, Call Info( Calling Number=,(Calling Name=)(TON=Unknown, NPI=Unknown, Screening=Not Screened, Presentation=Allowed), Called Number=33333(TON=Unknown, NPI=Unknown), Calling Translated=FALSE, Subscriber Type Str=RegularLine, FinalDestinationFlag=TRUE, Incoming Dial-peer=777, Progress Indication=ORIGINATING SIDE IS NON ISDN(3), Calling IE Present=FALSE, Source Trkgrp Route Label=, Target Trkgrp Route Label=, CLID Transparent=FALSE), Call Id=-1 123203: Oct XX 13:22:01.911: //115/80F08D0180E8/CCAPI/ccCallSetupRequest: Calling Number=(TON=Unknown, NPI=Unknown, Screening=Not Screened, Presentation=Allowed), Called Number=33333(TON=Unknown, NPI=Unknown), Redirect Number=, Display Info= Account Number=, Final Destination Flag=TRUE, Guid=80F08D01-CA55-11E8-80E8-8E0AC3C8E4C4, Outgoing Dial-peer=33333 123252: Oct XX 13:22:01.914: //116/80F08D0180E8/CCAPI/cc_api_caps_ack: Destination Interface=0x7F7475CF8C08, Destination Call Id=115, Source Call Id=116, Caps(Codec=g711ulaw(0x1), Fax Rate=FAX_RATE_VOICE(0x2), Fax Version:=0, Vad=AGGRESSIVE(0x4), Modem=OFF(0x0), Codec Bytes=160, Signal Type=2, Seq Num Start=2165) 123253: Oct XX 13:22:01.914: //115/80F08D0180E8/CCAPI/cc_api_caps_ack: Destination Interface=0x7F7471175B68, Destination Call Id=116, Source Call Id=115, Caps(Codec=g711ulaw(0x1), Fax Rate=FAX_RATE_VOICE(0x2), Fax Version:=0, Vad=AGGRESSIVE(0x4), Modem=OFF(0x0), Codec Bytes=160, Signal Type=2, Seq Num Start=2165)
123255: Oct XX 13:22:01.914: //115/80F08D0180E8/VTSP:(0/3/1):-1:1:1/vtsp_call_connect: Connected Name 123256: Oct XX 13:22:01.914: //115/80F08D0180E8/VTSP:(0/3/1):-1:1:1/vtsp_call_connect: Connected Number 33333 123257: Oct XX 13:22:01.914: //115/80F08D0180E8/VTSP:(0/3/1):-1:1:1/vtsp_call_connect: Connected oct3a 0 123258: Oct XX 13:22:01.914: //115/80F08D0180E8/CCAPI/ccCallConnect: Call Entry(Connected=TRUE, Responsed=TRUE) 123265: Oct XX 13:22:01.916: htsp_process_event: [0/3/1, S_TRUNK_W_CUTTHRU, E_HTSP_VOICE_CUT_THROUGH] 123266: Oct XX 13:22:01.916: send_trunk_dsp_voice_chnl_mapping:[0/3/1], 1/0/0 123267: Oct XX 13:22:01.916: send_trunk_dsp_sig_chnl_mapping:[0/3/1], 129/0/0 123268: Oct XX 13:22:01.916: recEive and transMit 0/3/1 rx_signal_map: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 default_trunk_up 123269: Oct XX 13:22:01.916: recEive and transMit 0/3/1 tx_signal_map: 0 0 0 0 0 0 0 0 F F F F F F F F default_trunk_updefault_trunk_up 123270: Oct XX 13:22:01.916: recEive and transMit 0/3/1 rx_signal_map: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 default_trunk_up 123271: Oct XX 13:22:01.916: recEive and transMit 0/3/1 tx_signal_map: 0 0 0 0 0 0 0 0 F F F F F F F F default_trunk_up 123272: Oct XX 13:22:01.916: %HTSP-5-UPDOWN: Trunk port(channel) [0/3/1] is up
如果您看到此錯誤,是因為撥號對等體上的session protocol multicast命令不可用。
%VOICE_IEC-3-GW: H323: Internal Error (H225 chn, sock fail in RAS): IEC=1.1.186.5.81.0
如果問題出在無音訊上,請驗證語音網關是否正確加入組播組。有關工作裝置的基線輸出,請參閱本文檔驗證部分中的命令輸出。特定組播組的show ip mroute命令的傳出介面決不能為Null。如果您看到Null傳出介面,請檢視組播LAN的適用網路配置,因為這表明語音網關無法正確加入組播組。
Null傳出介面示例:
Router# show ip mroute 239.X.X.X (*, 239.X.X.X), 00:22:02/stopped, RP 10.188.0.1, flags: SJCF Incoming interface: GigabitEthernet0/0/1, RPF nbr X.X.X.X Outgoing interface list: Vif1, Forward/Sparse-Dense, 00:18:27/00:02:32 (A.B.C.D, 239.X.X.X), 00:20:34/00:01:23, flags: PFT Incoming interface: Vif1, RPF nbr 0.0.0.0 Outgoing interface list: Null
如果裝置在組播組中正確但音訊問題依然存在,請使用命令show platform hardware qfp active feature sbc hootie group數次驗證裝置是否能夠接收和複製資料包。每次運行該命令時,計數器必須增加。或者,也可以運行show platform hardware qfp active statistics drop命令以檢視語音網關是否丟棄流量。若要清除這些計數器,請運行show platform hardware qfp active statistics drop clear命令。
如果沒有設定IP multicast-routing,則Ipv4mcNoRoute增量的捨棄原因如下:
4451# show platform hardware qfp active statistics drop ------------------------------------------------------------------------- Global Drop Stats Packets Octets ------------------------------------------------------------------------- Ipv4mcNoRoute 728 145272
其他音訊問題也可能發生,例如網關無法將模擬端接收的組播RTP資料包複製到IP端,因為組播配置有問題。當觀察到這些丟棄時,這些問題可能表現為丟棄原因FIAError。觀察到這些配置時,請檢查適用的組播配置,確保網關可以正確加入組播組,並且show ip mroute 命令具有有效的輸出介面。請參閱本文檔的多播部分,瞭解基線命令輸出。
4451# show platform hardware qfp active statistics drop ------------------------------------------------------------------------- Global Drop Stats Packets Octets ------------------------------------------------------------------------- FIAError 724 144800
如果未啟用組播路由,則show ip mroute states的輸出也如此。
ISR4451# sh ip mroute IP Multicast Forwarding is not enabled.
[snip]
為了驗證是否在語音埠上傳送或接收模擬音訊,您可以捕獲PCM。完整PCM文檔
conf t voice pcm capture buffer 200000 voice pcm capture destination bootflash: exit ! test voice port 0/1/0 pcm-dump caplog ffffff duration 255 ! send audio test voice port 0/1/0 pcm-dump disable ! copy flash:/<filename>.dat [ftp://user:pass@ip.address/filename.pcap | tftp://a.b.c.d/filename] ! TAC is required to decode the binary .dat file into SIN/SOUT/RIN audio streams
為了驗證是否傳送或接收了組播RTP,您可以在物理介面上執行資料包捕獲(PCAP)。完整的EPC文檔。
! NOT IN CONFIGURATION TERMINAL monitor capture TAC int gig0/0/1 both monitor capture TAC match any ! monitor capture TAC start ! send audio monitor capture TAC stop ! monitor capture TAC export [flash:/filename.pcap | ftp://user:pass@ip.address/filename.pcap | tftp://a.b.c.d/filename] ! monitor capture TAC clear
如果需要,語音網關上的DSP/PVDM可以在所需方向(網路 — IP-LAN端或本地模擬埠端)生成測試音。
此音調可以定向到DSP以指向IP LAN組播地址。這些命令可用於啟用/禁用。連線必須處於活動狀態,並且必須指定用於測試的模擬埠。
test voice port 0/1/0 inject-tone network 1000 ! A 1000hz tone is now being generated from the analog port to the IP LAN Multicast Address test voice port 0/1/0 inject-tone network disable
為了從DSP輸出模擬埠生成音調,可以使用這些命令來啟用/禁用。連線必須處於活動狀態,並且必須為測試指定模擬埠。
test voice port 0/1/0 inject-tone local 1000 ! A 1000hz tone is now being generated out of the analog port. test voice port 0/1/0 inject-tone local disable
下載VLC Media Player並導航到Media > Open Network Stream
按此格式輸入組播RTP IP地址並按播放
rtp://@239.X.X.X:21000
然後下載並開啟Wireshark。然後選擇資料包捕獲所需的特定介面。
使用rtp過濾器開始捕獲。
如果一切順利,您必須加入組播RP。(可以從RP運行相同的組播命令以驗證加入組播組的PC)。
通過tone命令生成音訊或讓模擬終端發言。
現在,您必須在wireshark中看到資料包。請記住,來源IP必須是VIF IP減去1,因此我們的測試必須是192.0.2.2 -1 = 192.0.2.1。
Cisco CLI Analyzer(僅供已註冊客戶使用)支援某些 show 指令。使用 Cisco CLI Analyzer 檢視 show 指令輸出的分析。
附註:使用 debug 指令之前,請先參閱有關 Debug 指令的重要資訊。
CSCvd18792 - ISR4K - Hoot和Holler E&M埠不能與組播集線器共置
CSCve66876 - ISR4K — 為來自DSP的資料包丟棄組播RP註冊
CSCve71893 - ISR4K - Hoot和Holler組播複製問題
修訂 | 發佈日期 | 意見 |
---|---|---|
2.0 |
29-Apr-2022 |
對文檔的細微更改 |
1.0 |
30-Oct-2018 |
初始版本 |