[asterisk-users] Fax throughput - Asterisk 1.6.1.9
Kevin P. Fleming
kpfleming at digium.com
Wed Dec 16 07:43:38 CST 2009
Cyprus VoIP wrote:
> Yes. I saw the message and the required addition in the sip.conf. The
> problem is that if I set it to 72, other terminating gateways that
> support 400 or more would also be limited to 72.
This is incorrect. First, you would not set it to 72, since the endpoint
is already telling you 72; you would set it to something higher. Second,
as the documentation states (and my email stated), this a minimum
threshold. It does not override the value provided by the endpoint
unless the provided value is *lower*. All of this you would know if you
had already tried it, which probably would have taken less time than
writing the two emails about it have taken :-)
> What doesn't make sense is Asterisk's "commission". Why doesn't it
> simply pass/use whatever it gets without cutting the values? It looks
> like it's a bug.
It is not a bug. Asterisk has to deconstruct incoming UDPTL frames when
they are received, pass them through a bridge, and then construct new
ones on the outbound side. To do this, it has to have knowledge of what
the maximum IFP size each endpoint can receive is, and compute a
reasonable T38FaxMaxDatagram value to tell the *other* endpoint (taking
into account the error correction mode(s) in use) so that when it
receives a UDPTL frame from endpoint A it can be reasonably assured it
will be able to forward it to endpoint B without violating endpoint B's
max datagram size... but when endpoint B has told Asterisk a ludicrous
max datagram size, it must be overridden somewhere to allow FAXes any
reasonable chance of working.
> Alternatively, I could (had I known how ;-)) set this ATA not to relay
> the RTP via Asterisk, in which case maybe Asterisk would leave the
> values unchanged. When I use another port on this ATA from the same
> location to the same destination without passing through the Asterisk,
> the faxes go through. How should I define this peer in sip.conf so that
> Asterisk wouldn't relay the RTP for it?
T.38 FAX can use RTP, but almost never does; in all of the cases you are
dealing with, it is using UDPTL for media transport, not RTP. Asterisk
does not yet support direct UDPTL media between endpoints, so that's not
an option for you. That's not necessary, though, because clearly when
you tell those two endpoints to talk directly to each other, the one
that receives 'T38FaxMaxDatagram: 72' is *ignoring* that restriction and
sending larger packets... it has to, or the FAX would fail. Asterisk
doesn't do that automatically, for safety's sake, it tells the
administrator when this problem is occurring and how to overcome it.
--
Kevin P. Fleming
Digium, Inc. | Director of Software Technologies
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
skype: kpfleming | jabber: kpfleming at digium.com
Check us out at www.digium.com & www.asterisk.org
More information about the asterisk-users
mailing list