Document ID: 116280
Updated: 2013 年 8 月 20 日
著者:Cisco TAC エンジニア、John Casale および David Whiteford
このドキュメントでは、Fax over IP(FoIP)が IP サービス プロバイダーとの Cisco Unified Border Element (CUBE)コール フローでどのように動作するかを説明します。
次の項目に関する知識が推奨されます。
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。 Cisco Integrated Services Router(ISR)シリーズ 2800、3800、2900、3900、3900e 上の Cisco IOS® リリース 12.4T、15.0M、15.0T、15.1M、15.1T、15.2M、15.2T、15.3T または Cisco AS5400XM ユニバーサル ゲートウェイ
本書の情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。 稼働中のネットワークで作業を行う場合、コマンドの影響について十分に理解したうえで作業してください。
FoIP と CUBE の連携はさまざまな環境で動作し、現在の VoIP ネットワークを活用して信頼性の高い FAX サービスを実現するために導入されます。 CUBE では、複数の FAX プロトコルと多数のスイッチオーバー メカニズムがサポートされます。 ただし、IPサービス プロバイダーのコンテキストでは、シスコの外部のベンダーによってサポートされている FAX プロトコルとスイッチオーバー方式に準拠する必要があります。
FoIP コール フローでは、CUBE は終端ゲートウェイ(TGW)と発信ゲートウェイ(OGW)の間にあります。 シグナリングの観点からは、CUBE の設定によって音声コールから FAX コールへのスイッチオーバーが許可または拒否されます。 VoIP 環境では FoIP プロトコルはエンドツーエンドでネゴシエートされるため、OGW から TGW まであらゆるものが同じ FoIP プロトコルを使用するように設定される必要があります。
信頼性の高い FAX 通信を確保するには、TGW とOGW だけでなく、CUBE でサポートされる FoIP フローと必要な設定を理解することが重要です。
サービス プロバイダーの環境には通常シスコ機器とシスコ以外の機器が混在しているため、音声コールから FAX コールへの切り替えには業界標準の方式を使用するのが重要です。 つまり、Named Signaling Event(NSE)は使用できません。NSE はシスコ独自の方式だからです。 このルールには例外はありますが、非常にまれです。
このドキュメントでは、FAX パススルーと T.38 FAXリレーの 2 つの FoIP 転送方式について説明します。
FAX パススルーは、T30 信号とページ データが、Real-Time Transport Protocol(RTP)フレームに包まれたパルス符号変調(PCM)エンコード データとして IP ネットワーク経由で転送される FAX 転送方式です。
FAX パススルーのスイッチオーバーは、TGW の V.21 プリアンブルの検出によってトリガーされます。 その結果として生成される INVITE(SIP の場合)またはリクエスト モード(H323 の場合)は、CUBE とそれ以外の OGW へのシグナリング パスを介して送信されます。
FAX パススルーのスイッチオーバーにより、あらゆる音声コーデックが FAX パススルー設定で定義されたコーデックに切り替えられます(このプロセスについては、このドキュメントの後半で説明します)。
FAX リレーは、TGW と OGW が T30 信号とページ データを検出する FAX 転送方式です。 ゲートウェイはこの信号を受信し、それをアナログ信号のデジタル表現であるリレー メッセージに変換します。 これらのリレー メッセージは、こうしてIPネットワーク経由で送信されます。
T.38 FAX リレーのスイッチオーバーも、TGW の V.21 プリアンブルの検出によってトリガーされます。
デバッグの例は、このドキュメントの「トラブルシューティング」の項にあります。
CUBE では、FoIP は voice service voip の下(グローバル)と dial-peer の下の 2 ヵ所で設定できます。 特定のコールに一致した dial-peer の設定は、常にグローバル設定よりも優先されます。 T.38 と FAX パススルーは、異なる dial-peer の下であれば同時に設定できます。そのため、両方のプロトコルを同時にサポートできます。
voice service voip の下に FAX パススルーを設定するには、次のコマンド(太字で表示)を使用します。
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 に FAX パススルーを設定するには、次のコマンド(太字で表示)を使用します。
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
voice service voip の下に T.38 バージョン 0(G3 FAX スピード)を設定するには、次のコマンド(太字で表示)を使用します。
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
dial-peer に 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
voice service VoIP の下、または dial-peer に T.38 バージョン 3 を設定するには、次のコマンドを使用します。
fax protocol t38 version 3 ls-redundancy 0 hs-redundancy 0 fallback none
CUBE を通したネットワークで Media Transfer Protocol(MTP)を使用する場合は、MTP がコーデック パススルーをサポートしている必要があります。 Cisco Unified Communications Manager (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 ゲートウェイの場合は、次の設定が FAX パススルーに使用されます。
voice service voip
no modem passthrough
fax protocol none
no fax-relay sg3-to-g3
CUBE と連携する SIP および H.323 TDM ゲートウェイに FAX パススルーを設定するには、次のコマンドを入力します。
voice service voip
no modem passthrough
no fax-relay sg3-to-g3
fax protocol pass-through g711ulaw
CUBE と連携する SIP および H.323 TDM ゲートウェイに T.38 を設定するには、次のコマンドを入力します。
voice service voip
no modem passthrough
fax protocol t38 version 0 ls-redundancy 0 hs-redundancy 0 fallback none
CUBE と連携する MGCP TDM ゲートウェイに FAX パススルーを設定するには、次のコマンドを入力します。
no mgcp fax-relay sg3-to-g3
no mgcp package fxr-package
mgcp fax t38 inhibit
no mgcp modem passthrough voip mode nse
現在、この設定に使用できる確認手順はありません。
CUBE でこの問題をトラブルシューティングするには、次のデバッグをイネーブルにする必要があります。
SIP に対して次のデバッグをイネーブルにします。
debug voip ccapi inout
debug ccsip mess
音声コールが設定されると、TGW は CUBE 経由で OGW に SIP ReINVITE を送信します。 スイッチオーバーが正常に行われると、OGW は適切な Session Description Protocol(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 RequestMode を送信します。 スイッチオーバーが正常に行われると、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
}
この問題が発生した場合は、次の手順を実行してください。
この問題が発生した場合は、次の手順を実行してください。
このドキュメントは有用でしたか。 はい いいえ
フィードバックいただき、ありがとうございました。
Cisco サポート コミュニティでは、フォーラムに参加して情報交換することができます。
このドキュメントで使用されている表記法の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。