Hi Robert,
All the time there is space for more :). This blog post is the first
from a set of docs trying to explain the routing with OpenSIPS.
Including some feedback from you, I can draft as following chapters:
1) how to insert a balancer in your SIP traffic - like dialog
statefull proxy, transaction statefull proxy, stateless proxy, etc....
2) routing modules in opensips, like dispatcher versus drouting
versus load-balancer..
In your classification, I noticed many missing features for Dynamic Routing:
- in memory matching with prefix-tree - O(prefix_len)
- has gui in Control Panel
- destination pinging, failover, re-enable
- clustering capabilities for the state of the GW/destinations
- rule fallback (on matching)
......
Again, any feedback is more the welcome as it will give us some ideas
about the hot topics from the user perspective.
Best regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com
OpenSIPS Bootcamp 2017, Houston, US
http://opensips.org/training/OpenSIPS_Bootcamp_2017.html
On 06/15/2017 09:36 PM, Mundkowsky, Robert wrote:
This is helpful. But would like a little more details there. Such as:
1) openSIPS when it actions as a Load Balancer is always a SIP proxy during the
complete dialog. In other words, the caller RTP is direct connected backend
gateway, but openSIPS is always between them for the SIP traffic.
2) Some information for the traffic distributions modules is stored in the
database, but some info is only in memory (e.g. which gateway is enabled, count
of active dialogs)
This might be naïve details for most telecom folks, but helpful for naïve users
like myself.
I haven't played with "Carrier Route","Dispatcher", and "Dynamic Routing", but
similar notes for those would be helpful too.
The following video was very helpful in describing the different traffic
distributions modules openSIPS supports:
https://www.youtube.com/watch?v=yTLPs1-X0SM
Not sure if my notes are helpful, but they are below.
Routing modules:
Carrier Route
- old module and not maintained, but seems to work
- features: routing, load balancing, blacklisting
- not installed by default
- no web GUI
- performs longest prefix matching
- you use longest preefix to pull "least cost" route out of database table
- strips prefix, adds prefix/suffix
- probabilities to load balancer
Load Balancer
- light weight
- balancing based on load
- can config via GUI
- single database table
- features:
- no prefix/suffix changing
- with version 1.8, you can keep counters in database
- docs:
Tutorial
http://www.opensips.org/Documentation/Tutorials-LoadBalancing-1-9
DB schema:
https://www.opensips.org/Documentation/Install-DBSchema-2-2#AEN6455
module
http://www.opensips.org/html/docs/modules/2.2.x/load_balancer.html
Dispatcher
- computes hash over parts of request and selects an address from the
destination list
- can config via GUI
- CallerID, From URI, To URI, Request URI
- via config file or databaseas
- does not strip or append prefix/suffix
- out of service destinations detected by probing
- can mark as out of service
- can mark as in service when gateway comes back online
Dynamic Routing
- heavy weight
- multiple criteria to determine route
- prefix, caller, group, time, priority
- databse only
4 tables (groups, rules, carriers, gateways)
- functions
- do_routing() uses all 4 tables
- route_to_carrier uses carriers & gateways tables
- route_to_gateway - uses gateways table
Robert Mundkowsky
-----Original Message-----
From: Devel [mailto:[email protected]] On Behalf Of
Bogdan-Andrei Iancu
Sent: Thursday, June 15, 2017 2:01 PM
To: [email protected]; developensips <[email protected]>;
[email protected]; [email protected]
Subject: [OpenSIPS-Devel] [Blog] Traffic balancing – load, weights, round robin
??
Many times, during discussion about various OpenSIPS based solutions, I noticed
that people make a confusion when comes to the meaning of “load balancing”.....
https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fblog.opensips.org%2F2017%2F06%2F15%2Ftraffic-balancing-load-weights-round-robin%2F&data=02%7C01%7Crmundkowsky%40ets.org%7Ce9218868262d4ce369ac08d4b4189373%7C0ba6e9b760b34fae92f37e6ddd9e9b65%7C0%7C0%7C636331465027654678&sdata=0acaS2xE6vYbvzOIyBIJC48oMhOLKF7j3YqKnDp98nI%3D&reserved=0
Enjoy the reading :)
--
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.opensips-solutions.com&data=02%7C01%7Crmundkowsky%40ets.org%7Ce9218868262d4ce369ac08d4b4189373%7C0ba6e9b760b34fae92f37e6ddd9e9b65%7C0%7C0%7C636331465027664682&sdata=lUNkjOnT%2FEZ%2FR%2Fvr%2B9wyPoECMq3B%2FFwU4OjzvlwN7yY%3D&reserved=0
OpenSIPS Bootcamp 2017, Houston, US
https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fopensips.org%2Ftraining%2FOpenSIPS_Bootcamp_2017.html&data=02%7C01%7Crmundkowsky%40ets.org%7Ce9218868262d4ce369ac08d4b4189373%7C0ba6e9b760b34fae92f37e6ddd9e9b65%7C0%7C0%7C636331465027664682&sdata=uT%2FNvQ3PfVFHXwSzRvis9FUw08RP%2Fwa5Uz0cj6by1Ec%3D&reserved=0
_______________________________________________
Devel mailing list
[email protected]
https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.opensips.org%2Fcgi-bin%2Fmailman%2Flistinfo%2Fdevel&data=02%7C01%7Crmundkowsky%40ets.org%7Ce9218868262d4ce369ac08d4b4189373%7C0ba6e9b760b34fae92f37e6ddd9e9b65%7C0%7C0%7C636331465027664682&sdata=Vx7JpSMTsxpa2hgUL%2FR1poHxfIYTJJ83iK6v0RqVU2U%3D&reserved=0
________________________________
This e-mail and any files transmitted with it may contain privileged or
confidential information. It is solely for use by the individual for whom it is
intended, even if addressed incorrectly. If you received this e-mail in error,
please notify the sender; do not disclose, copy, distribute, or take any action
in reliance on the contents of this information; and delete it from your
system. Any other use of this e-mail is prohibited.
Thank you for your compliance.
________________________________
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
_______________________________________________
News mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/news