<div dir="ltr"><div dir="ltr">Sorry, sent by mistake<div>continuation of email. DIspatcher module.  Is this what you are referring to? Or are you referring to something else.</div><div><ul class="gmail-itemizedlist" type="disc" style="color:rgb(0,0,0);font-family:Helvetica,Arial"><li class="gmail-listitem" style=""><p style="font-size:12px;text-align:justify"><span class="emphasis"><em>alg</em></span> - the algorithm(s) used to select the destination address (variables are accepted).</p><div class="gmail-itemizedlist" style=""><ul class="gmail-itemizedlist" type="circle" style="font-size:medium"><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">0</span>”</span> - hash over callid</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">1</span>”</span> - hash over from uri.</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">2</span>”</span> - hash over to uri.</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">3</span>”</span> - hash over request-uri.</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">4</span>”</span> - round-robin (next destination).</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">5</span>”</span> - hash over authorization-username (Proxy-Authorization or "normal" authorization). If no username is found, round robin is used.</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">6</span>”</span> - random (using rand()).</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">7</span>”</span> - hash over the content of PVs string. Note: This works only when the parameter hash_pvar is set.</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">8</span>”</span> - the first entry in set is chosen.</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">9</span>”</span> - The <span class="emphasis"><em>pvar_algo_pattern</em></span> parameter is used to determine the load on each server. If the parameter is not specified, then the first entry in the set is chosen.</p></li><li class="gmail-listitem"><p style="font-size:12px;text-align:justify"><span class="gmail-quote">“<span class="gmail-quote">X</span>”</span> - if the algorithm is not implemented, the first entry in set is chosen.</p></li></ul><div style="text-align:justify"><span style="font-size:12px">From what we have always seen on the SBC's is the best identifier for looking up the registration cache is the CONTACT header.  As this will have the TGRP and Trunk-Context in it.</span></div></div></li></ul></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 31, 2022 at 1:00 PM Kevin Kennedy <<a href="mailto:kennedy4260@gmail.com">kennedy4260@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">I am pretty new to Opensips, so maybe I am not understanding what you mean by hashing.  The only place I see hashing is on the dispatcher module <div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 31, 2022 at 12:44 PM Giovanni Maruzzelli <<a href="mailto:gmaruzz@gmail.com" target="_blank">gmaruzz@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">We all understood what you are doing and why<div dir="auto"><br></div><div dir="auto">It's just that... the answer is inside you! And it's wrong :) (famous quote from an Italian comedian)<br><br><div dir="auto">answered from mobile, please pardon terseness and typos,<br>-giovanni</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 31, 2022, 20:41 Kevin Kennedy <<a href="mailto:kennedy4260@gmail.com" target="_blank">kennedy4260@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Thank you all for your responses.  Maybe I am going about this all wrong.  Maybe I can explain it better with a drawing of what I am trying to do.  I am trying to front end customers with Opensips to Load balance Registrations to 4 different SBC's.  These SBC's will have their own Registration cache and pass the Registration to the Application servers.  I need Opensips to send the INVITE/SUBSCRIBE to the SBC that it has sent the Registration to in order to match the Registration cache in that device.  The only way I saw to do this was with Mid-Registrar and Dispatcher since Loadbalancer would not handle Registrations/Subscribes, etc.<div><br></div><div><img src="cid:ii_l9x6mx7a0" alt="image.png" width="562" height="321"><br></div><div>Hopefully that can explain what I am trying to do better and help you understand what I am trying to accomplish.</div><div><br></div><div>Thank you</div><div><br>Kevin</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 31, 2022 at 6:07 AM Giovanni Maruzzelli <<a href="mailto:gmaruzz@gmail.com" rel="noreferrer" target="_blank">gmaruzz@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">On Mon, Oct 31, 2022 at 1:59 PM Giovanni Maruzzelli <<a href="mailto:gmaruzz@gmail.com" rel="noreferrer" target="_blank">gmaruzz@gmail.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><div class="gmail_quote"><div>You can use the hashing Bogdan proposed, so ds_select will go to the same machine because it gets the same result from hashing the same input. In this case, you must find "something" (eg a cleaned TO for register and a cleaned FROM for INVITE) </div></div></div></blockquote><div><br></div><div>or cleaned TO and cleaned TO, for inbound calls</div><div><br></div><div>-giovanni</div><div><br></div></div></div>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opensips.org" rel="noreferrer" target="_blank">Users@lists.opensips.org</a><br>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" rel="noreferrer noreferrer" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
</blockquote></div>
</blockquote></div>
</blockquote></div>
</blockquote></div>