Not that this will help much, but, I've seen a problem like this
when loose_route() fails to identify the message as being
to ser (that is myself). For example if the GW is at the same IP
address but a different port and the port is not included in an alias.<br>
<br>
Mark<br><br><div><span class="gmail_quote">On 9/9/05, <b class="gmail_sendername">Corey S. McFadden</b> <<a href="mailto:csm-lists@csma.biz">csm-lists@csma.biz</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>Guys,<br><br>I was able to figure out why I was getting occasional sl_send_reply errors<br>with some ACK messages. I don't know if this is something that needs to<br>be corrected at a deeper level, but I'll give you the rundown:
<br><br>1. UA Makes a call to a bad number<br>2. Bad number is actually valid so it gets routed to the GW<br>3. GW responds 404<br>4. ACK loop occurs.<br><br>When the ACK loop happens, SIP captures reveal the following (watch the
<br>Max-Forwards):<br><br>#1<br>..<br>Max-Forwards: 9<br>Record-Route: <sip:ser;ftag=0014a934057d001145ed0fa2-6f6f2e8e;lr=on><br>Via: SIP/2.0/UDP ser;branch=0<br>Via: SIP/2.0/UDP <a href="http://192.168.249.83:5060">
192.168.249.83:5060</a>;received=otherip;branch=z9hG4bK140d833e<br>..<br>#2<br>..<br>Record-Route: <sip:ser;ftag=0014a934057d001145ed0fa2-6f6f2e8e;lr=on><br>Max-Forwards: 8<br>Record-Route: <sip:ser;ftag=0014a934057d001145ed0fa2-6f6f2e8e;lr=on>
<br>Via: SIP/2.0/UDP ser;branch=0<br>Via: SIP/2.0/UDP ser;branch=0<br>Via: SIP/2.0/UDP<br><a href="http://192.168.249.83:5060">192.168.249.83:5060</a>;received=otherip;branch=z9hG4bK140d833e<br>..<br><br><br>Etc. etc. until Max Forwards counts down to 0, at which point:
<br><br> if (!mf_process_maxfwd_header("10")) {<br> sl_send_reply("483",
"Too Many Hops");<br> break;<br> };<br><br>And naturally:<br> sl_send_reply: I won't send a reply for ACK!!<br><br><br>So, I've obviously been able to avoid this by changing to:<br>
<br>if (!mf_process_maxfwd_header("10")) {<br> if (method!="ACK") {<br> sl_send_reply("483",
"Too Many Hops");<br> };<br> break;<br>};<br><br><br>Now, the greater question: is the ACK loop being generated by a defective<br>message. If so, is it anything to worry about? And in either case is
<br>putting the method check in there a valid solution?<br><br>Can anyone advise?<br><br>Thanks,<br>-Corey<br><br><br>*********************************************<br>This message has been scanned for viruses and<br>dangerous content, and is believed to be clean.
<br><br>_______________________________________________<br>Serusers mailing list<br><a href="mailto:serusers@lists.iptel.org">serusers@lists.iptel.org</a><br><a href="http://lists.iptel.org/mailman/listinfo/serusers">http://mail.iptel.org/mailman/listinfo/serusers
</a><br></blockquote></div><br>