[SR-Users] BYE processing info

Claudio Furrer elcaio at gmail.com
Tue Oct 25 15:43:14 CEST 2011


Hi Klaus,

> If Kamailio founds out that the topmost Router header is itself, then it will
> remove it and use the nexxt Route header or the Request-URI.

Then, this case, the topmost Route: header is itself, then removes it
(no more Route: headers) and finally must decides to route the
request to the R-URI which is itself but at different port.
However, it is not using that port (7080), but 5060. Why?

In logs, after loose_route() is called, it writes:

ERROR: <script>: WITHINDLG: method BYE with sip:321456@<sip-router_ip>:7080 _
DEBUG: siputils [checks.c:107]: totag found_
DEBUG: rr [loose.c:85]: is_preloaded: No_
DEBUG: <core> [socket_info.c:502]: grep_sock_info - checking if host==us: 13==13 &&  [<sip-router_ip>] == [<sip-router_ip>]_
DEBUG: <core> [socket_info.c:505]: grep_sock_info - checking if port 5060 matches port 7080_
DEBUG: <core> [forward.c:448]: check_self: host != me_

DEBUG: rr [loose.c:594]: Next hop: 'sip:<sip-router_ip>;lr=on' is loose router_
DEBUG: rr [loose.c:644]: The last route URI: 'sip:<sip-router_ip>;lr=on'_

ERROR: <script>: RELAY: method BYE with sip:<sip-router_ip>;lr=on _
ERROR: <script>: RELAY: calling t_relay() to sip:<sip-router_ip>;lr=on
Message buffer: BYE sip:321456@<sip-router_ip>:7080 SIP/2.0__Via: SIP/2.0/UDP <remote_uac_ip>:5060;branch=z9hG4bKb111e6a26E0306F7__From: <sip:445566@<sip-router_ip>:5060>;tag=4DB62C24-2C3E0621__To: "321456" <sip:321456@<sip-router_ip>:7080>;tag=as369d9f82__Route: <sip:<sip-router_ip>;lr=on>__CSeq: 1 BYE__Call-ID: 15cbe04c69ede18c2e1f5a9221eea388@<sip-router_ip>:7080__Contact: <sip:445566@<remote_uac_ip>:5060>__User-Agent: UAc__Max-Forwards: 69__Content-Length: 0

loose.c finds it as "Next hop" and not as "Topmost route uri".

Claudio

> 
> If Kamailio fails to recognize that the Route header is itself, then it will
> forward the request to the address in the Route header (loop).
> 
> (considering that you use the default config file with loose_route()).
> 
> thus, make sure that the URI in the Route header is recognized by Kamailio as
> itself. (it should be if you use record_route() function).
> 
> Set debug=4 and grep for "myself" when the loose_route() function is called.
> Then you will see if Kamailio matches the topmost Route URI.
> 
> regards
> Klaus
> 
> On 24.10.2011 14:55, Claudio Furrer wrote:
> > Hello,
> > 
> > How does sip-router process this BYE?
> > 
> >    BYE sip:321456@<sip-router_ip>:7080 SIP/2.0
> >    Via: SIP/2.0/UDP<remote_uac_ip>:5060;branch=z9hG4bK7fb4c2325A0617FF
> >    From:<sip:445566 at mydomain.com:5060>;tag=19C8FD8-72B75A25
> >    To: "321456"<sip:321456@<sip-router_ip>:7080>;tag=as28777464
> >    Route:<sip:<sip-router_ip>;lr=on>
> >    CSeq: 1 BYE
> >    Call-ID: 2b9512ef7ea290f07c54db1808e32211@<asterisk_ip>:7080
> >    Contact:<sip:445566@<remote_uac_ip>:5060>
> >    User-Agent: UAc
> >    Max-Forwards: 70
> >    Content-Length: 0
> > 
> > Does it routes the BYE, reading first the RURI or the Route header field?
> > What if<sip-router_ip>:7080 is not itself (myself variable), because
> > currently
> > the proxy is listening at different port (5060)?
> > 
> > Note: proxy working in stateful mode.
> > 
> > Regards,
> > Claudio
> > 
> > pd: I've read section "16.4 Route Information Preprocessing" of rfc but it's
> > not clear for me in this case.
> > 
> > _______________________________________________
> > SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> > sr-users at lists.sip-router.org
> > http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
> 



More information about the sr-users mailing list