[Home]

Summary:ASTERISK-15201: 488 not acceptable when receiving T.38 at 14400 speed
Reporter:prandini (prandini)Labels:
Date Opened:2009-11-23 08:11:07.000-0600Date Closed:2011-07-26 14:48:24
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Channels/chan_sip/T.38
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) full
Description:When I get a re-INVITE like this one:

INVITE sip:0119209223@91.112.73.125:5060 SIP/2.0^M
Max-Forwards: 19^M
f: <sip:0237009198@82.113.193.76>;tag=2F3F031C-231F^M
t: <sip:50119209223@sip.twt.it>;tag=as7319a027^M
i: B8AC0C90-D5B411DE-AD06EC60-9C02B256@82.113.193.76^M
m: <sip:0237009198@82.113.193.76:5060>^M
CSeq: 102 INVITE^M
Expires: 180^M
User-Agent: Cisco-SIPGateway/IOS-12.x^M
Min-SE: 1800^M
l: 399^M
^M
v=0^M
o=CiscoSystemsSIP-GW-UserAgent 2486 1092 IN IP4 82.113.193.76^M
s=SIP Call^M
c=IN IP4 82.113.193.76^M
t=0 0^M
m=image 16808 udptl t38^M
c=IN IP4 82.113.193.76^M
a=T38FaxFillBitRemoval:0^M
a=T38FaxMaxBuffer:200^M
a=T38FaxMaxDatagram:72^M
a=T38FaxRateManagement:transferredTCF^M
a=T38FaxTranscodingJBIG:0^M
a=T38FaxTranscodingMMR:0^M
a=T38FaxUdpEC:t38UDPRedundancy^M
a=T38FaxVersion:0^M
a=T38MaxBitRate:14400^M

asterisk replies with

SIP/2.0 100 Trying^M
Via: SIP/2.0/UDP 82.113.194.190:5060;branch=z9hG4bK827014-kmbcnrv;cgp=twtmail.twt.it;upaddr=82.113.193.76;received=82.113.194.190;rport=5060^M
Via: SIP/2.0/UDP  82.113.193.76:5060;x-route-tag="cid:3@82.113.193.76";branch=z9hG4bKD701F222C^M
From: <sip:0237009198@82.113.193.76>;tag=2F3F031C-231F^M
To: <sip:50119209223@sip.twt.it>;tag=as7319a027^M
Call-ID: B8AC0C90-D5B411DE-AD06EC60-9C02B256@82.113.193.76^M
CSeq: 102 INVITE^M
User-Agent: Asterisk PBX 1.6.0.11^M
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO^M
Supported: replaces, timer^M
Contact: <sip:0119209223@91.112.73.125>^M
Content-Length: 0^M

and then with

SIP/2.0 488 Not acceptable here^M
Via: SIP/2.0/UDP 82.113.194.190:5060;branch=z9hG4bK827014-kmbcnrv;cgp=twtmail.twt.it;upaddr=82.113.193.76;received=82.113.194.190;rport=5060^M
Via: SIP/2.0/UDP  82.113.193.76:5060;x-route-tag="cid:3@82.113.193.76";branch=z9hG4bKD701F222C^M
From: <sip:0237009198@82.113.193.76>;tag=2F3F031C-231F^M
To: <sip:50119209223@sip.twt.it>;tag=as7319a027^M
Call-ID: B8AC0C90-D5B411DE-AD06EC60-9C02B256@82.113.193.76^M
CSeq: 102 INVITE^M
User-Agent: Asterisk PBX 1.6.0.11^M
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO^M
Supported: replaces, timer^M
Content-Length: 0^M
^M

If I get a re-invite with 9600 speed, everything is ok.
Why on earth is it refusing 14400 ?
Comments:By: Kevin P. Fleming (kpfleming) 2009-11-23 13:46:03.000-0600

It is highly unlikely that Asterisk is rejecting the re-INVITE solely on the basis of the T38MaxBitRate field, but we'd only be guessing why otherwise since you didn't provide any log information to see why Asterisk responded the way it did.

Please run this test again, after setting 'core set debug 10', 'core set verbose 10', 'sip set debug on' and ensuring that all five logger levels are enabled for the 'full' log file. Once the test is complete, upload the relevant part of the 'full' log file as an attachment to this issue. Thanks.

By: prandini (prandini) 2009-11-24 01:14:26.000-0600

I am enclosing the full log, from initial request to fax end.
It is quite simple to find the offending part, simply look for 488.
Unfortunately I couldn't find any hint about the reject in the logs,
so I didn't include them. Anyway I agree that nothing could be a
hint as well...please note that the speed line is not written in the
log even if it is present in the reinvite. Anyhow ( I didn't manage
to do it this time, I tried and tried, but couldn't obtain it ) 14400
is refused in the middle of the reinvite as well.

By: haggard (haggard) 2010-02-09 10:01:24.000-0600

it's just guessing but as i can remember, the default is a max fax rate of 9600 defined in chan_sip.c
on line 1120.

----
/*!< This is default: NO MMR and JBIG transcoding, NO fill bit removal, transferredTCF TCF, UDP FEC, Version 0 and 9600 max fax rate */
static int global_t38_capability = T38FAX_VERSION_0 | T38FAX_RATE_2400 | T38FAX_RATE_4800 | T38FAX_RATE_7200 | T38FAX_RATE_9600;
----

have you tried to add "| T38FAX_RATE_14400" and recompile ?

It works for my setup...

By: prandini (prandini) 2011-01-27 01:29:50.000-0600

Hi Haggard, I didn't notice your note.
No, it is not done in such a way any more, if you have a look at
the sources in 1.6 there is no such block. I patches it in previous
versions like you suggest, and it worked, but now there is 14400
in the various switches in chan_sip.c but it doesn't work properly
anyway.

By: Matthew Nicholson (mnicholson) 2011-07-26 14:48:10.893-0500

Per the Asterisk maintenance timeline page at http://www.asterisk.org/asterisk-versions maintenance (bug) support for the 1.4 and 1.6.x branches has ended. For continued maintenance support please move to the 1.8 branch which is a long term support (LTS) branch. For more information about branch support, please see https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions

If this is still an issue, open a new bug.