此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍IP传真(FoIP)在IP服务提供商的思科统一边界元素(CUBE)呼叫流中如何运行。
Cisco 建议您了解以下主题:
本文档中的信息基于以下软件和硬件版本:Cisco IOS® 12.4T、15.0M、15.0T、15.1M、15.1T、15.2M、15.2T、15.3T版(基于思科集成服务)路由器(ISR)系列2800、3800、2900、3900、3900e或Cisco AS5400XM通用网关
注意:此配置示例不限于此处列出的软件版本和硬件平台。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
带CUBE的FoIP在多种环境中运行,并实施以利用当前VoIP网络提供可靠的传真服务。CUBE支持多种传真协议以及多种切换机制。但是,在IP服务提供商的环境中,您必须遵守思科之外的供应商支持的传真协议和切换方法。
在FoIP呼叫流中,CUBE位于终端网关(TGW)和始发网关(OGW)之间。 从信令角度来看,CUBE配置允许或拒绝从语音呼叫切换到传真呼叫。由于VoIP环境中端到端协商FoIP协议,因此必须配置从OGW到TGW的所有内容,以使用相同的FoIP协议。
为了确保可靠的传真通信,必须了解支持哪些FoIP流以及在CUBE以及TGW和OGW上需要进行哪些配置。
由于IP服务提供商通常拥有思科和非思科设备的混合环境,因此您必须使用行业标准方法从语音呼叫切换到传真呼叫。这意味着不能使用命名信令事件(NSE),因为NSE是思科专有的。这条规则有例外,但极其罕见。
注意:无法使用基于协议的切换意味着瘦呼叫控制协议(SCCP)仅用于使用G711ulaw的IP服务提供商的传真呼叫流,是“尽力而为”。
本文档讨论两种FoIP传输方法:传真直通和T.38传真中继。
传真直通是一种传真传输方法,其中T30信号和页面数据作为脉冲编码调制(PCM)编码数据通过IP网络传输,并封装在实时传输协议(RTP)帧中。
通过检测TGW上的V.21前导码来触发传真直通切换。生成的INVITE(用于SIP)或请求模式(用于H323)通过CUBE和呼叫信令路径的其余部分发送到OGW。
传真直通切换从任何语音编解码器切换到在传真直通配置下定义的编解码器(本文档稍后会概述此过程)。
注意:无法配置MGCP网关以启动G.711的传真直通上行速度。因此,在CUBE上使用直通到MGCP网关的任何传真都必须使用G.711编解码器进行路由。
注意:如果初始编解码器为G.711,则不应将传真直通配置为H.323。这会导致当G.711已协商时,将H.245请求模式发送到切换到G.711。CUCM以H.245请求模式拒绝响应。
传真中继是一种传真传输方法,其中TGW和OGW检测T30信号和页面数据。网关接收这些信号并将其转换为中继消息,这些中继消息是模拟信号的数字表示,然后通过IP网络发送。
T.38传真中继切换也由TGW上V.21前导码的检测触发。
调试示例在本文档的故障排除部分。
CUBE可在两个位置为FoIP配置:在语音服务voip和拨号对等体下全局。拨号对等体上为给定呼叫匹配的配置始终优先于全局配置。如果在不同的拨号对等体下,可以同时配置T.38和传真直通的配置,以便同时支持两个协议。
要在语音服务voip下配置传真直通,请使用以下命令(粗体):
voice service voip
no ip address trusted authenticate
allow-connections h323 to h323
allow-connections h323 to sip
allow-connections sip to h323
allow-connections sip to sip
fax protocol pass-through g711ulaw
要在拨号对等体上配置传真直通,请使用此命令(粗体):
dial-peer voice 1 voip
description T38 Test
destination-pattern ^1000$
session protocol sipv2
session target ipv4:192.168.0.1
dtmf-relay rtp-nte
fax protocol pass-through g711ulaw
no vad
注意:传真直通与传真直通不同。传真直通利用思科网络服务引擎(NSE)从语音呼叫切换到传真呼叫。
注意:T.38版本3(Super G3传真速度)在Cisco IOS版本15.1(1)T及更高版本中受支持。
要在语音服务voip下配置T.38版本0(G3传真速度),请使用以下命令(粗体):
voice service voip
no ip address trusted authenticate
allow-connections h323 to h323
allow-connections h323 to sip
allow-connections sip to h323
allow-connections sip to sip
fax protocol t38 version 0 ls-redundancy 0 hs-redundancy 0 fallback none
要在拨号对等体上配置T.38,请使用此命令(粗体):
dial-peer voice 1 voip
description T38 Test
destination-pattern ^1000$
session protocol sipv2
session target ipv4:192.168.0.1
dtmf-relay rtp-nte
fax protocol t38 version 0 ls-redundancy 0 hs-redundancy 0 fallback none
no vad
要配置T.38第3版(在语音服务VoIP下或在拨号对等体下),请使用以下命令:
fax protocol t38 version 3 ls-redundancy 0 hs-redundancy 0 fallback none
如果在通过CUBE交互工作时使用媒体传输协议(MTP),则它必须支持编解码器直通。思科统一通信管理器(CUCM)MTP支持8.6.1版及更高版本的编解码器直通。Cisco IOS MTP必须在数字信号处理器(DSP)场配置中具有编解码器直通:
dspfarm profile 2 mtp
codec pass-through
codec g729r8
maximum sessions software 50
associate application SCCP
对于SCCP控制的TDM网关,此配置用于传真直通。
voice service voip
no modem passthrough
fax protocol none
no fax-relay sg3-to-g3
注意:此互通的区域设置中的编解码器必须为G.711。如前所述,在与CUBE互通时,SCCP网关不能设置为使用T.38。
要为SIP和H.323 TDM网关配置与CUBE互通的传真直通,请输入:
voice service voip
no modem passthrough
no fax-relay sg3-to-g3
fax protocol pass-through g711ulaw
要为SIP和H.323 TDM网关配置T.38以与CUBE交互工作,请输入:
voice service voip
no modem passthrough
fax protocol t38 version 0 ls-redundancy 0 hs-redundancy 0 fallback none
注意:如果T.38版本3在CUBE上配置,并且受SIP服务提供商支持,则可使用它。
要配置MGCP TDM网关以与CUBE进行传真直通互通,请输入:
no mgcp fax-relay sg3-to-g3
no mgcp package fxr-package
mgcp fax t38 inhibit
no mgcp modem passthrough voip mode nse
注意:由于MGCP网关不支持传真直通的加速,因此MGCP网关和CUBE之间CUCM中的区域必须具有G.711编解码器。
当前没有可用于此配置的验证过程。
要对CUBE上的此问题进行故障排除,必须启用这些调试。
为SIP启用以下调试:
debug voip ccapi inout
debug ccsip mess
建立语音呼叫后,TGW通过CUBE向OGW发送SIP ReINVITE。如果切换成功,OGW会使用正确的会话描述协议(SDP)参数以SIP 200 OK响应。
INVITE sip:2101@10.0.0.1:5060 SIP/2.0
Via: SIP/2.0/UDP 10.0.0.2:5060;branch=z9hG4bK171D71
Remote-Party-ID: <sip:1101@10.0.0.2>;party=calling;screen=no;privacy=off
From: <sip:8141101@10.0.0.2>;tag=8D815D8-646
To: <sip:2101@10.0.0.1>;tag=DD4D344-21B2
Date: Fri, 25 Feb 2011 19:25:15 GMT
Call-ID: 32395B08-403E11E0-818C9D5B-499FBE40@10.0.0.1
Supported: 100rel,timer,resource-priority,replaces,sdp-anat
Min-SE: 1800
Cisco-Guid: 786980147-1077809632-2173148507-1235205696
User-Agent: Cisco-SIPGateway/IOS-12.x
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE,
NOTIFY, INFO, REGISTER
CSeq: 101 INVITE
Max-Forwards: 70
Timestamp: 1298661915
Contact: <sip:8141101@10.0.0.2:5060>
Expires: 180
Allow-Events: telephone-event
Content-Type: application/sdp
Content-Length: 384
v=0
o=CiscoSystemsSIP-GW-UserAgent 3745 9509 IN IP4 10.0.0.2
s=SIP Call
c=IN IP4 10.0.0.2
t=0 0
m=image 17682 udptl t38
c=IN IP4 10.0.0.2
a=T38FaxVersion:0
a=T38MaxBitRate:7200
a=T38FaxFillBitRemoval:0
a=T38FaxTranscodingMMR:0
a=T38FaxTranscodingJBIG:0
a=T38FaxRateManagement:transferredTCF
a=T38FaxMaxBuffer:200
a=T38FaxMaxDatagram:180
a=T38FaxUdpEC:t38UDPRedundancy
!!NOTE!! Not all of the above bolded fields are required.
The above is an example of how Cisco implements T38.
SIP/2.0 100 Trying
Via: SIP/2.0/UDP 10.0.0.2:5060;branch=z9hG4bK171D71
From: <sip:8141101@10.0.0.2>;tag=8D815D8-646
To: <sip:2101@10.0.0.1>;tag=DD4D344-21B2
Date: Fri, 25 Feb 2011 17:48:05 GMT
Call-ID: 32395B08-403E11E0-818C9D5B-499FBE40@10.0.0.1
CSeq: 101 INVITE
Allow-Events: telephone-event
Server: Cisco-SIPGateway/IOS-12.x
Content-Length: 0
176443: Feb 25 17:48:05.360:
//134/2EE85D338187/SIP/Msg/ccsipDisplayMsg:
Sent:
SIP/2.0 200 OK
Via: SIP/2.0/UDP 10.0.0.2:5060;branch=z9hG4bK171D71
From: <sip:8141101@10.0.0.2>;tag=8D815D8-646
To: <sip:2101@10.0.0.1>;tag=DD4D344-21B2
Date: Fri, 25 Feb 2011 17:48:05 GMT
Call-ID: 32395B08-403E11E0-818C9D5B-499FBE40@10.0.0.1
CSeq: 101 INVITE
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE,
NOTIFY, INFO, REGISTER
Allow-Events: telephone-event
Remote-Party-ID: <sip:2101@10.0.0.1>
;party=called;screen=no;privacy=off
Contact: <sip:2101@10.0.0.1:5060>
Supported: replaces
Supported: sdp-anat
Server: Cisco-SIPGateway/IOS-12.x
Supported: timer
Content-Type: application/sdp
Content-Length: 384
v=0
o=CiscoSystemsSIP-GW-UserAgent 5552 9399 IN IP4 10.0.0.1
s=SIP Call
c=IN IP4 10.0.0.1
t=0 0
m=image 16710 udptl t38
c=IN IP4 10.0.0.1
a=T38FaxVersion:0
a=T38MaxBitRate:7200
a=T38FaxFillBitRemoval:0
a=T38FaxTranscodingMMR:0
a=T38FaxTranscodingJBIG:0
a=T38FaxRateManagement:transferredTCF
a=T38FaxMaxBuffer:200
a=T38FaxMaxDatagram:320
a=T38FaxUdpEC:t38UDPRedundancy
ACK sip:2101@10.0.0.1:5060 SIP/2.0
Via: SIP/2.0/UDP 10.0.0.2:5060;branch=z9hG4bK181B79
From: <sip:8141101@10.0.0.2>;tag=8D815D8-646
To: <sip:2101@10.0.0.1>;tag=DD4D344-21B2
Date: Fri, 25 Feb 2011 19:25:15 GMT
Call-ID: 32395B08-403E11E0-818C9D5B-499FBE40@10.0.0.1
Max-Forwards: 70
CSeq: 101 ACK
Allow-Events: telephone-event
Content-Length: 0
INVITE sip:2101@10.0.0.1:5060 SIP/2.0
Via: SIP/2.0/UDP 10.0.0.2:5060;branch=z9hG4bK154F2
Remote-Party-ID: <sip:1101@10.0.0.2>;party=calling;screen=no;privacy=off
From: <sip:8131101@10.0.0.2>;tag=8D66B94-7BF
To: <sip:2101@10.0.0.1>;tag=DD32900-5D4
Date: Fri, 25 Feb 2011 19:23:25 GMT
Call-ID: F12F0BBB-403D11E0-81869D5B-499FBE40@10.0.0.1
Supported: 100rel,timer,resource-priority,replaces,sdp-anat
Min-SE: 1800
Cisco-Guid: 3990792353-1077744096-2172755291-1235205696
User-Agent: Cisco-SIPGateway/IOS-12.x
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE,
NOTIFY, INFO, REGISTER
CSeq: 101 INVITE
Max-Forwards: 70
Timestamp: 1298661805
Contact: <sip:8131101@10.0.0.2:5060>
Expires: 180
Allow-Events: telephone-event
Content-Type: application/sdp
Content-Length: 174
v=0
o=CiscoSystemsSIP-GW-UserAgent 107 1892 IN IP4 10.0.0.2
s=SIP Call
c=IN IP4 10.0.0.2
t=0 0
m=audio 16464 RTP/AVP 0
a=rtpmap:0 PCMU/8000
a=silenceSupp:off - - - -
SIP/2.0 100 Trying
Via: SIP/2.0/UDP 10.0.0.2:5060;branch=z9hG4bK154F2
From: <sip:8131101@10.0.0.2>;tag=8D66B94-7BF
To: <sip:2101@10.0.0.1>;tag=DD32900-5D4
Date: Fri, 25 Feb 2011 17:46:16 GMT
Call-ID: F12F0BBB-403D11E0-81869D5B-499FBE40@10.0.0.1
CSeq: 101 INVITE
Allow-Events: telephone-event
Server: Cisco-SIPGateway/IOS-12.x
Content-Length: 0
SIP/2.0 200 OK
Via: SIP/2.0/UDP 10.0.0.2:5060;branch=z9hG4bK154F2
From: <sip:8131101@10.0.0.2>;tag=8D66B94-7BF
To: <sip:2101@10.0.0.1>;tag=DD32900-5D4
Date: Fri, 25 Feb 2011 17:46:16 GMT
Call-ID: F12F0BBB-403D11E0-81869D5B-499FBE40@10.0.0.1
CSeq: 101 INVITE
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE,
NOTIFY, INFO, REGISTER
Allow-Events: telephone-event
Remote-Party-ID: <sip:2101@10.0.0.1>;party=called;screen=no;privacy=off
Contact: <sip:2101@10.0.0.1:5060>
Supported: replaces
Supported: sdp-anat
Server: Cisco-SIPGateway/IOS-12.x
Supported: timer
Content-Type: application/sdp
Content-Length: 194
v=0
o=CiscoSystemsSIP-GW-UserAgent 4896 2709 IN IP4 10.0.0.1
s=SIP Call
c=IN IP4 10.0.0.1
t=0 0
m=audio 19054 RTP/AVP 0
c=IN IP4 10.0.0.1
a=rtpmap:0 PCMU/8000
a=silenceSupp:off - - - -
ACK sip:2101@10.0.0.1:5060 SIP/2.0
Via: SIP/2.0/UDP 10.0.0.2:5060;branch=z9hG4bK16A56
From: <sip:8131101@10.0.0.2>;tag=8D66B94-7BF
To: <sip:2101@10.0.0.1>;tag=DD32900-5D4
Date: Fri, 25 Feb 2011 19:23:25 GMT
Call-ID: F12F0BBB-403D11E0-81869D5B-499FBE40@10.0.0.1
Max-Forwards: 70
CSeq: 101 ACK
Allow-Events: telephone-event
Content-Length: 0
为H323启用以下调试:
debug voip ccapi inout
debug cch323 all
debug h225 asn1
debug h245 asn1
建立语音呼叫后,TGW通过CUBE向OGW发送H245请求模式。如果切换成功,OGW会以RequestModeAck响应。
value MultimediaSystemControlMessage ::= request : requestMode :
{
sequenceNumber 1
requestedModes
{
{
{
type dataMode :
{
application t38fax :
{
t38FaxProtocol udp : NULL
t38FaxProfile
{
fillBitRemoval FALSE
transcodingJBIG FALSE
transcodingMMR FALSE
version 0
t38FaxRateManagement transferredTCF : NULL
t38FaxUdpOptions
{
t38FaxMaxBuffer 200
t38FaxMaxDatagram 72
t38FaxUdpEC t38UDPRedundancy : NULL
}
}
}
bitRate 144
}
}
}
}
}
001378: May 31 20:56:19.745: H245 MSC OUTGOING PDU ::=
value MultimediaSystemControlMessage ::= response :
requestModeAck :
{
sequenceNumber 1
response willTransmitMostPreferredMode : NULL
}
value MultimediaSystemControlMessage ::= request : requestMode :
{
sequenceNumber 1
requestedModes
{
{
{
type audioMode : g711Ulaw64k : NULL
}
}
}
}
value MultimediaSystemControlMessage ::= response :
requestModeAck :
{
sequenceNumber 1
response willTransmitMostPreferredMode : NULL
}
如果遇到此问题,请完成以下步骤:
如果遇到此问题,请完成以下步骤: