[OpenSIPS-Users] Feature-request: AVPs for nat_traversal
Dan Pascu
dan at ag-projects.com
Thu Jun 11 14:29:43 CEST 2009
On 11 Jun 2009, at 14:46, Thomas Gelf wrote:
> As you asked for real-world example for the "per-user-ping-type"
> feature request: while preparing our new VoIP platform I've switched
> to nat_traversal and configured NOTIFY, as it seemed to be the more
> elegant variant.
>
> This went well, unless I've met problems with some UACs (tested AVM,
> Snom, Grandsteam - don't remember which one had the problem) behind
> an enterprise firewall (Nokia Checkpoint or Juniper Netscreen, both
> cluster installations - don't remember even here which one it has
> been). There have no longer been no replies to my NOTIFY, I switched
> to OPTIONS and it worked.
Hmm. Up to now I haven't encountered any device that doesn't reply to
a request. If it doesn't understand it, it should at least reply with
"Not supported". Having devices that completely ignore a request is
bad for communication, because you cannot discern between the case
where the device is not accessible anymore or it's just not willing to
reply.
> I must confess that I didn't try to find out who caused the problem
> (ALG or UAC) - I've just seen issues with NOTIFY and opted for the
> second option (OPTIONS). Nonetheless I would welcome the possibility
> to switch back to NOTIFY and use OPTIONS just where I encounter
> problems.
There are some problems I see with your proposal:
1. It adds little value to the solution, but increases a lot the need
to provision, monitor and manage this per device. This is a background
activity and one should not need to manually configure it too much or
at all. It should simply work as automatically as possible.
2. Sending pings with different methods may require different headers
to be present. So it is not enough to just specify the method. It
should rather have a few available profiles and let you choose from
them.
IMO, a better solution would be to make it adaptive. It could monitor
the replies and if it doesn't get a reply for a ping it can switch to
use the other method for that particular endpoint. For example the
first time the proxy has to send a ping to a newly added endpoint, it
should send both a NOTIFY and an OPTIONS. If it gets a reply for both,
it will use whatever the module is configured to use by default. If it
only gets a reply for one of them, it will use that no matter what the
module uses by default.
--
Dan
More information about the Users
mailing list