Trunk on High Latency Link

davelikebikes
Posts: 1
Member Since:
2011-02-03

I have a Trixbox running Asterisk 1.6.0.26 that is on one side of a high latency link (satellite). I have one trunk setup from the Trixbox to my Asterisk server at our hub on the other side of the satellite WAN link. Calls work fine for the most part, but I constantly see the the Trixbox fall out of registration, and when this happens the calls take a few seconds to setup.
On the Asterisk box at the hub, the Trixbox is setup as a SIP peer.

Here is what I am seeing on a wireshark trace on the hub Asterisk box:
3.662049 222.111.222.3 -> 192.168.2.1 SIP Request: OPTIONS sip:PBX_Client@192.168.2.1
4.661796 222.111.222.3 -> 192.168.2.1 SIP Request: OPTIONS sip:PBX_Client@192.168.2.1
5.661629 222.111.222.3 -> 192.168.2.1 SIP Request: OPTIONS sip:PBX_Client@192.168.2.1
6.661457 222.111.222.3 -> 192.168.2.1 SIP Request: OPTIONS sip:PBX_Client@192.168.2.1
7.661357 222.111.222.3 -> 192.168.2.1 SIP Request: OPTIONS sip:PBX_Client@192.168.2.1
8.661146 222.111.222.3 -> 192.168.2.1 SIP Request: OPTIONS sip:PBX_Client@192.168.2.1
9.662387 222.111.222.3 -> 192.168.2.1 SIP Request: OPTIONS sip:PBX_Client@192.168.2.1
28.020306 192.168.2.1 -> 222.111.222.3 SIP Request: REGISTER sip:222.111.222.3
28.021987 222.111.222.3 -> 192.168.2.1 SIP Status: 100 Trying (1 bindings)
28.022027 222.111.222.3 -> 192.168.2.1 SIP Status: 401 Unauthorized (0 bindings)
28.039675 192.168.2.1 -> 222.111.222.3 SIP Status: 200 OK
28.115258 192.168.2.1 -> 222.111.222.3 SIP Status: 200 OK
28.119900 192.168.2.1 -> 222.111.222.3 SIP Status: 200 OK
28.125345 192.168.2.1 -> 222.111.222.3 SIP Status: 200 OK
28.131278 192.168.2.1 -> 222.111.222.3 SIP Status: 200 OK
28.135782 192.168.2.1 -> 222.111.222.3 SIP Status: 200 OK
28.140916 192.168.2.1 -> 222.111.222.3 SIP Status: 200 OK
28.976539 192.168.2.1 -> 222.111.222.3 SIP Request: REGISTER sip:222.111.222.3
28.976667 222.111.222.3 -> 192.168.2.1 SIP Status: 100 Trying (1 bindings)
28.977492 222.111.222.3 -> 192.168.2.1 SIP Request: OPTIONS sip:PBX_Client@192.168.2.1
28.977650 222.111.222.3 -> 192.168.2.1 SIP Status: 200 OK (1 bindings)
28.977821 222.111.222.3 -> 192.168.2.1 SIP Request: NOTIFY sip:PBX_Client@192.168.2.1
29.761855 192.168.2.1 -> 222.111.222.3 SIP Status: 200 OK
29.765539 192.168.2.1 -> 222.111.222.3 SIP Status: 489 Bad event

Is there a way I can extend the registration time or timeout so that this stops happening?

As a side note, I have another Trixbox running Asterisk 1.4 that does not fall out of registration so often.

Cheers!
Dave



jeffdoubleyou
Posts: 38
Member Since:
2008-02-06
Hey Dave, There are a few

Hey Dave,

There are a few things you can try, but the best solution would be to use a different connection. Satellite connections for voice traffic are far from ideal, just think of when you're watching the news and they bring someone in via satellite link...everyone starts talking over each other.

You can try:

registertimeout = Number : Number of seconds to wait for a response from a SIP Registrar before classifying the SIP REGISTER has timed out. Default 20 seconds. (New in v1.2.x).

minexpiry = ??? I can't find any clear documentation or indication that this setting does anything, but it appears that this would set the minimum expiration time when registering to a server ( in seconds ).

There are also some other expiry settings:

ast_cli(a->fd, " Reg. min duration %d secs\n", min_expiry);
ast_cli(a->fd, " Reg. max duration: %d secs\n", max_expiry);
ast_cli(a->fd, " Reg. default duration: %d secs\n", default_expiry);

You'll probably also want to change any qualify settings to really large values or turn qualify off ( qualify = no ) to just ignore whether or not you see the remote end as being alive.

From voip-info's sip.conf about page:

If you have problems with your network connection going up and down (e.g. an unreliable cable connection) and you keep losing your sip registry, you may want to add registerattempts and registertimeout settings to the general section above the register definitions. Setting registerattempts=0 will force Asterisk to attempt to reregister until it can (the default is 10 tries). registertimeout sets the length of time in seconds between registration attempts (the default is 20 seconds).

--

Jeff Weitz
Fonality Support



jeffdoubleyou
Posts: 38
Member Since:
2008-02-06
Actually, looking at your

Actually, looking at your trace there, I'm not sure how much those will help. It looks like your packets are just taking way too long to reach the server that you're registering to or the responses are taking too long to reach you.

You could play with these, but the real solution is to fix your internet connection.

;
;--------------------------- SIP timers ----------------------------------------------------
; These timers are used primarily in INVITE transactions.
; The default for Timer T1 is 500 ms or the measured run-trip time between
; Asterisk and the device if you have qualify=yes for the device.
;
;t1min=100 ; Minimum roundtrip time for messages to monitored hosts
; Defaults to 100 ms
;timert1=500 ; Default T1 timer
; Defaults to 500 ms or the measured round-trip
; time to a peer (qualify=yes).
;timerb=32000 ; Call setup timer. If a provisional response is not received
; in this amount of time, the call will autocongest
; Defaults to 64*timert1

;registerattempts=10 ; Number of registration attempts before we give up
; 0 = continue forever, hammering the other server
; until it accepts the registration
; Default is 0 tries, continue forever

--

Jeff Weitz
Fonality Support



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.