簡介
本檔案介紹作業階段啟始通訊協定(SIP)可靠臨時回應功能如何運作,以及如何在Cisco Unified Border Element(CUBE)和Cisco Unified Communications Manager(CUCM)上設定。
必要條件
需求
思科建議您瞭解以下主題:
- 思科整合邊界元件(CUBE)企業版
- Cisco Unified Communications Manager Express(CUCME)
- 思科整合通訊管理員(CUCM)
- 作業階段啟始通訊協定(SIP)
採用元件
本文中的資訊係根據以下軟體和硬體版本:
- 思科整合式服務路由器(ISR)上的Cisco IOS版本15.1(4)M4:系列2800、3800、2900、3900
- Cisco ASR 1000系列聚合服務路由器上的Cisco IOS版本15.1(3)S4
附註:此配置示例不限於上面列出的軟體版本和硬體平台;此組態也適用於Cisco AS5400XM通用閘道上的Cisco IOS版本12.4(24)T5。
背景資訊
引入了SIP可靠臨時響應,以便更好地與公共交換電話網路(PSTN)整合。 最常見的場景是在呼叫完成之前建立語音/音訊路徑;因此,呼叫方會聽到PSTN生成的公告或音樂。
例如,在下面的拓撲中,IP電話呼叫一個PSTN會議網橋或一些免費號碼,被呼叫者在應答呼叫之前播放提示。如果CUCM使用延遲提議(INVITE不包含會話描述協定(SDP))發起呼叫,呼叫者將聽不到提示。
在其他情況下,PSTN端產生回鈴音。如果在呼叫連線之前未接通介質,呼叫者可能聽不到回鈴音。
SIP可靠的臨時響應可用於解決上述問題,而不涉及額外的媒體資源(例如媒體傳輸協定(MTP)),因為這些臨時響應和PRACK消息為提議/應答交換提供了額外的機會。
CUBE配置
預設情況下,CUBE支援使用以下配置的可靠響應:
voice service voip
sip
rel1xx supported 100rel
這意味著,作為使用者代理客戶端(UAC),如果它收到帶有標頭Require: 的180/183消息100rel,它會使用PRACK響應;但是,作為使用者代理伺服器(UAS),它不會傳送帶有標頭Require:100rel。
若要強制CUBE使用Require傳送18X:100rel(以便它會等待來自UAC的PRACK),以下是組態範例:
全域性級別:
voice service voip
sip
rel1xx require 100rel
撥號對等體級別:
dial-peer voice 1000 voip
voice-class sip rel1xx require 100rel
附註:撥號對等體設定優先於全域性設定。
CUCM配置
預設情況下,CUCM不支援可靠的響應。但是,您可以更改SIP中繼配置檔案以進行配置:
- 在CUCM管理介面中,轉至Device > Device Setting > SIP Profile。
- 開啟給定SIP中繼使用的SIP配置檔案。
- 從SIP Rel1XX Options下拉選單中選擇Send PRACK for all 1xx Messages。
- 重置給定SIP中繼的SIP中繼配置檔案。
附註:如果給定SIP中繼使用預設SIP中繼配置檔案(標準SIP配置檔案),則最好複製到新配置檔案並應用到SIP中繼;否則,預設SIP中繼配置檔案將影響所有SIP中繼。
附註:即使進行上述更改,CUCM也只能通過以UAC形式傳送PRACK來支援可靠的響應;但是,目前無法使用Required:100rel報頭作為UAS。
典型SIP消息
如果在CUBE上的傳入撥號對等體中配置了可靠響應,則典型的呼叫將類似於以下內容:
// CUBE receives INVITE with delay offer from CUCM.
INVITE sip:2002@10.66.75.246:5060 SIP/2.0
Date: Thu, 04 Apr 2013 05:30:27 GMT
Call-Info: <sip:10.66.75.171:5060>;method="NOTIFY;Event=telephone-event;Duration=500"
Allow: INVITE, OPTIONS, INFO, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY
From: <sip:4832@10.66.75.171>;tag=169850~fb41edd8-7bc7-4ced-b8b0-9b10a31db5c4-19845894
Allow-Events: presence, kpml
P-Asserted-Identity: <sip:4832@10.66.75.171>
Supported: 100rel,timer,resource-priority,replaces,X-cisco-srtp-fallback,Geolocation
Min-SE: 7200
Cisco-Guid: 3228672256-0000065536-0000000027-2873836042
Remote-Party-ID: <sip:4832@10.66.75.171>;party=calling;screen=yes;privacy=off
Content-Length: 0
User-Agent: Cisco-CUCM8.6
To: <sip:2002@10.66.75.246>
Contact: <sip:4832@10.66.75.171:5060;transport=tcp>
Expires: 180
Call-ID: c071a100-15d10ff3-24695-ab4b420a@10.66.75.171
Via: SIP/2.0/TCP 10.66.75.171:5060;branch=z9hG4bK246d9521aba1b
CSeq: 101 INVITE
Session-Expires: 7200
Max-Forwards: 70
SIP/2.0 100 Trying
Via: SIP/2.0/TCP 10.66.75.171:5060;branch=z9hG4bK246d9521aba1b
From: <sip:4832@10.66.75.171>;tag=169850~fb41edd8-7bc7-4ced-b8b0-9b10a31db5c4-19845894
To: <sip:2002@10.66.75.246>
Date: Thu, 04 Apr 2013 05:50:29 GMT
Call-ID: c071a100-15d10ff3-24695-ab4b420a@10.66.75.171
CSeq: 101 INVITE
Allow-Events: telephone-event
Server: Cisco-SIPGateway/IOS-15.2.4.M2.8
Content-Length: 0
// CUBE responds 183 with SDP which also contains Require: 100rel.
SIP/2.0 183 Session Progress
Via: SIP/2.0/TCP 10.66.75.171:5060;branch=z9hG4bK246d9521aba1b
From: <sip:4832@10.66.75.171>;tag=169850~fb41edd8-7bc7-4ced-b8b0-9b10a31db5c4-19845894
To: <sip:2002@10.66.75.246>;tag=42CF0134-1BC8
Date: Thu, 04 Apr 2013 05:50:29 GMT
Call-ID: c071a100-15d10ff3-24695-ab4b420a@10.66.75.171
CSeq: 101 INVITE
Require: 100rel
RSeq: 3344
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
Allow-Events: telephone-event
Contact: <sip:2002@10.66.75.246:5060;transport=tcp>
Supported: sdp-anat
Supported: X-cisco-srtp-fallback
Server: Cisco-SIPGateway/IOS-15.2.4.M2.8
Content-Type: application/sdp
Content-Disposition: session;handling=required
Content-Length: 330
v=0
o=CiscoSystemsSIP-GW-UserAgent 4874 2535 IN IP4 10.66.75.246
s=SIP Call
c=IN IP4 10.66.75.246
t=0 0
m=audio 16442 RTP/AVP 8 0 18 101 19
c=IN IP4 10.66.75.246
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=rtpmap:19 CN/8000
// CUBE receives PRACK from CUCM with SDP
PRACK sip:2002@10.66.75.246:5060;transport=tcp SIP/2.0
Via: SIP/2.0/TCP 10.66.75.171:5060;branch=z9hG4bK246da4c33fa3e
From: <sip:4832@10.66.75.171>;tag=169850~fb41edd8-7bc7-4ced-b8b0-9b10a31db5c4-19845894
To: <sip:2002@10.66.75.246>;tag=42CF0134-1BC8
Date: Thu, 04 Apr 2013 05:30:27 GMT
Call-ID: c071a100-15d10ff3-24695-ab4b420a@10.66.75.171
CSeq: 102 PRACK
RAck: 3344 101 INVITE
Allow-Events: presence, kpml
Max-Forwards: 70
Content-Type: application/sdp
Content-Length: 213
v=0
o=CiscoSystemsCCM-SIP 169850 1 IN IP4 10.66.75.171
s=SIP Call
c=IN IP4 10.66.75.89
t=0 0
m=audio 26662 RTP/AVP 0 101
a=rtpmap:0 PCMU/8000
a=ptime:20
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
// CUBE acknowledges the PRACK.
SIP/2.0 200 OK
Via: SIP/2.0/TCP 10.66.75.171:5060;branch=z9hG4bK246da4c33fa3e
From: <sip:4832@10.66.75.171>;tag=169850~fb41edd8-7bc7-4ced-b8b0-9b10a31db5c4-19845894
To: <sip:2002@10.66.75.246>;tag=42CF0134-1BC8
Date: Thu, 04 Apr 2013 05:50:29 GMT
Call-ID: c071a100-15d10ff3-24695-ab4b420a@10.66.75.171
Server: Cisco-SIPGateway/IOS-15.2.4.M2.8
CSeq: 102 PRACK
Content-Length: 0
// The call is not anwered until now; however, calling and called parties have exchanged SDP,
// and media path is established.
// Other messages omitted.
疑難排解
為了解決CUBE上的此問題,必須啟用以下調試:
debug voip ccapi inout
debug ccsip message
症狀1:CUBE傳送180/183而不使用Require:100rel標頭。
驗證rel1xx require 100rel是否已在適當的撥號對等體或語音服務voip下配置。
症狀2:CUBE繼續使用Require:100rel報頭到CUCM。
當CUCM不支援可靠響應時,通常會出現此問題。要解決此問題,請在CUCM上啟用Rel1xx。
相關資訊