Hi Daniel, thank you for looking into this. I understand what you are saying and what is happening is very similar.
 The linksys is set to 10 secs, so around 8 secs it sends a new registration. Kamailio replies with 30 but the linksys
ignores it and keeps sending the registration every 8 secs. But the fact is that the AOR is being updated every
8 seconds, as you can see below [at the bottom of the email], which can be a problem with a lot of customers
and registration interval of 2-3 secs.


mysql> select username,contact,received,expires,cseq,last_modified,user_agent from location where username = '300';
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| username | contact                   | received | expires             | cseq  | last_modified       | user_agent              |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| 300      | sip:300@192.168.1.6:41264 | NULL     | 2011-08-19 07:47:54 | 21584 | 2011-08-19 07:47:24 | Linksys/PAP2T-5.1.6(LS) |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
1 row in set (0.00 sec)

mysql> select username,contact,received,expires,cseq,last_modified,user_agent from location where username = '300';
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| username | contact                   | received | expires             | cseq  | last_modified       | user_agent              |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| 300      | sip:300@192.168.1.6:41264 | NULL     | 2011-08-19 07:48:02 | 21585 | 2011-08-19 07:47:32 | Linksys/PAP2T-5.1.6(LS) |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
1 row in set (0.00 sec)

mysql> select username,contact,received,expires,cseq,last_modified,user_agent from location where username = '300';
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| username | contact                   | received | expires             | cseq  | last_modified       | user_agent              |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| 300      | sip:300@192.168.1.6:41264 | NULL     | 2011-08-19 07:48:10 | 21586 | 2011-08-19 07:47:40 | Linksys/PAP2T-5.1.6(LS) |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
1 row in set (0.00 sec)

mysql> select username,contact,received,expires,cseq,last_modified,user_agent from location where username = '300';
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| username | contact                   | received | expires             | cseq  | last_modified       | user_agent              |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| 300      | sip:300@192.168.1.6:41264 | NULL     | 2011-08-19 07:48:18 | 21587 | 2011-08-19 07:47:48 | Linksys/PAP2T-5.1.6(LS) |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
1 row in set (0.00 sec)

mysql> select username,contact,received,expires,cseq,last_modified,user_agent from location where username = '300';
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| username | contact                   | received | expires             | cseq  | last_modified       | user_agent              |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
| 300      | sip:300@192.168.1.6:41264 | NULL     | 2011-08-19 07:48:26 | 21588 | 2011-08-19 07:47:56 | Linksys/PAP2T-5.1.6(LS) |
+----------+---------------------------+----------+---------------------+-------+---------------------+-------------------------+
1 row in set (0.00 sec)


REGISTER sip:192.168.1.194 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.6:41264;branch=z9hG4bK-9b668c64
From: 300 <sip:300@192.168.1.194>;tag=b5ca67bbbdf6bco0
To: 300 <sip:300@192.168.1.194>
Call-ID: f9529c78-63628117@172.31.196.45
CSeq: 21584 REGISTER
Max-Forwards: 70
Authorization: Digest username="300",realm="192.168.1.194",nonce="Tk5OZ05OTTsZu75W6fbHxQjiBwnTxMwHdJ7+cYA=",uri="sip:192.168.1.194",algorithm=MD5,response="14e9fb5fe39d959ad92fc08f0aed1539"
Contact: 300 <sip:300@192.168.1.6:41264>;expires=10
User-Agent: Linksys/PAP2T-5.1.6(LS)
Content-Length: 0
Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER
Supported: x-sipura, replaces


SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.1.6:41264;branch=z9hG4bK-9b668c64
From: 300 <sip:300@192.168.1.194>;tag=b5ca67bbbdf6bco0
To: 300 <sip:300@192.168.1.194>;tag=b27e1a1d33761e85846fc98f5f3a7e58.c5d8
Call-ID: f9529c78-63628117@172.31.196.45
CSeq: 21584 REGISTER
Contact: <sip:300@192.168.1.6:41264>;expires=30
Server: kamailio (3.1.4 (x86_64/linux))
Content-Length: 0

REGISTER sip:192.168.1.194 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.6:41264;branch=z9hG4bK-5777b8c
From: 300 <sip:300@192.168.1.194>;tag=b5ca67bbbdf6bco0
To: 300 <sip:300@192.168.1.194>
Call-ID: f9529c78-63628117@172.31.196.45
CSeq: 21585 REGISTER
Max-Forwards: 70
Authorization: Digest username="300",realm="192.168.1.194",nonce="Tk5OZ05OTTsZu75W6fbHxQjiBwnTxMwHdJ7+cYA=",uri="sip:192.168.1.194",algorithm=MD5,response="14e9fb5fe39d959ad92fc08f0aed1539"
Contact: 300 <sip:300@192.168.1.6:41264>;expires=10
User-Agent: Linksys/PAP2T-5.1.6(LS)
Content-Length: 0
Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER
Supported: x-sipura, replaces

SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.1.6:41264;branch=z9hG4bK-5777b8c
From: 300 <sip:300@192.168.1.194>;tag=b5ca67bbbdf6bco0
To: 300 <sip:300@192.168.1.194>;tag=b27e1a1d33761e85846fc98f5f3a7e58.7c3e
Call-ID: f9529c78-63628117@172.31.196.45
CSeq: 21585 REGISTER
Contact: <sip:300@192.168.1.6:41264>;expires=30
Server: kamailio (3.1.4 (x86_64/linux))
Content-Length: 0

REGISTER sip:192.168.1.194 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.6:41264;branch=z9hG4bK-e85319a5
From: 300 <sip:300@192.168.1.194>;tag=b5ca67bbbdf6bco0
To: 300 <sip:300@192.168.1.194>
Call-ID: f9529c78-63628117@172.31.196.45
CSeq: 21586 REGISTER
Max-Forwards: 70
Authorization: Digest username="300",realm="192.168.1.194",nonce="Tk5OZ05OTTsZu75W6fbHxQjiBwnTxMwHdJ7+cYA=",uri="sip:192.168.1.194",algorithm=MD5,response="14e9fb5fe39d959ad92fc08f0aed1539"
Contact: 300 <sip:300@192.168.1.6:41264>;expires=10
User-Agent: Linksys/PAP2T-5.1.6(LS)
Content-Length: 0
Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER
Supported: x-sipura, replaces

SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.1.6:41264;branch=z9hG4bK-e85319a5
From: 300 <sip:300@192.168.1.194>;tag=b5ca67bbbdf6bco0
To: 300 <sip:300@192.168.1.194>;tag=b27e1a1d33761e85846fc98f5f3a7e58.a8fb
Call-ID: f9529c78-63628117@172.31.196.45
CSeq: 21586 REGISTER
Contact: <sip:300@192.168.1.6:41264>;expires=30
Server: kamailio (3.1.4 (x86_64/linux))
Content-Length: 0



this is how the AOR in memory looks like if the linksys is set to 3 secs, it sends it roughly every 1 sec

[root@mia-sbc-registrar1 sbin]# ./kamctl ul show
Domain:: location table=512 records=1 max_slot=1
        AOR:: 300
                Contact:: sip:300@192.168.1.6:41264 Q=
                        Expires:: 29
                        Callid:: f9529c78-63628117@172.31.196.45
                        Cseq:: 21798
                        User-agent:: Linksys/PAP2T-5.1.6(LS)
                        State:: CS_DIRTY
                        Flags:: 0
                        Cflag:: 0
                        Socket:: udp:192.168.1.194:5060
                        Methods:: 4767
[root@mia-sbc-registrar1 sbin]# ./kamctl ul show
Domain:: location table=512 records=1 max_slot=1
        AOR:: 300
                Contact:: sip:300@192.168.1.6:41264 Q=
                        Expires:: 29
                        Callid:: f9529c78-63628117@172.31.196.45
                        Cseq:: 21799
                        User-agent:: Linksys/PAP2T-5.1.6(LS)
                        State:: CS_DIRTY
                        Flags:: 0
                        Cflag:: 0
                        Socket:: udp:192.168.1.194:5060
                        Methods:: 4767
[root@mia-sbc-registrar1 sbin]# ./kamctl ul show
Domain:: location table=512 records=1 max_slot=1
        AOR:: 300
                Contact:: sip:300@192.168.1.6:41264 Q=
                        Expires:: 29
                        Callid:: f9529c78-63628117@172.31.196.45
                        Cseq:: 21800
                        User-agent:: Linksys/PAP2T-5.1.6(LS)
                        State:: CS_DIRTY
                        Flags:: 0
                        Cflag:: 0
                        Socket:: udp:192.168.1.194:5060
                        Methods:: 4767
[root@mia-sbc-registrar1 sbin]# ./kamctl ul show
Domain:: location table=512 records=1 max_slot=1
        AOR:: 300
                Contact:: sip:300@192.168.1.6:41264 Q=
                        Expires:: 30
                        Callid:: f9529c78-63628117@172.31.196.45
                        Cseq:: 21801
                        User-agent:: Linksys/PAP2T-5.1.6(LS)
                        State:: CS_DIRTY
                        Flags:: 0
                        Cflag:: 0
                        Socket:: udp:192.168.1.194:5060
                        Methods:: 4767
[root@mia-sbc-registrar1 sbin]# ./kamctl ul show






 



Date: Fri, 19 Aug 2011 13:04:29 +0200
From: miconda@gmail.com
To: sr-users@lists.sip-router.org
CC: fborot@hotmail.com
Subject: Re: [SR-Users] min expires question

Hello,

On 8/18/11 6:20 PM, Fabian Borot wrote:
Hello

This is how my registrar module is configured, hoping that min-expires set to 30 wont allow registration attempts more often than 30 seconds, but if I configure a UAC to register every 15 seconds I see that kamailio allows it. Shouldn't it reply with "422 Session Interval Too Small" or "423 Interval Too Brief"?
it will not allow a REGISTER with Expires value less than 30sec. But even the phone sends a REGISTER with Expires 3600 (for example), it can send again in 10 sec another REGISTER with Expires 3600. In order to see if there is something incorrect, send us full REGISTER requests and the replies.

Cheers,
Daniel


# ----- registrar params -----
modparam("registrar", "default_expires", 120)
modparam("registrar", "min_expires", 30)
modparam("registrar", "method_filtering", 1)
/* uncomment the next line to disable parallel forking via location */
# modparam("registrar", "append_branches", 0)
/* uncomment the next line not to allow more than 10 contacts per AOR */
#modparam("registrar", "max_contacts", 10)


 131.380336  192.168.1.6 -> 192.168.1.194 SIP Request: REGISTER sip:192.168.1.194
131.381174 192.168.1.194 -> 192.168.1.6  SIP Status: 200 OK    (1 bindings)

144.386014  192.168.1.6 -> 192.168.1.194 SIP Request: REGISTER sip:192.168.1.194
144.387110 192.168.1.194 -> 192.168.1.6  SIP Status: 200 OK    (1 bindings)

157.395358  192.168.1.6 -> 192.168.1.194 SIP Request: REGISTER sip:192.168.1.194
157.396340 192.168.1.194 -> 192.168.1.6  SIP Status: 200 OK    (1 bindings)

170.404905  192.168.1.6 -> 192.168.1.194 SIP Request: REGISTER sip:192.168.1.194
170.405771 192.168.1.194 -> 192.168.1.6  SIP Status: 200 OK    (1 bindings)

183.414375  192.168.1.6 -> 192.168.1.194 SIP Request: REGISTER sip:192.168.1.194
183.415217 192.168.1.194 -> 192.168.1.6  SIP Status: 200 OK    (1 bindings)

txs fborot


_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla -- http://www.asipto.com
Kamailio Advanced Training, Oct 10-13, Berlin: http://asipto.com/u/kat
http://linkedin.com/in/miconda -- http://twitter.com/miconda