Douglas Garstang writes:
I'm surprised no one has written a better module for this. In the realworld, you have multiple POPs, your carriers also have multiple POP's,multiple gateways. In the event you get a failure with one carrier, youprobably want to switch to the next cheapest carrier, not anothergateway within the same carrier (as it will probably just fail again).When selecting a carrier gateway, you need to choose the best POP touse before you select the trunk.
it might be possible for you to achieve what you describe using existing lcr module by having only one gw per group and then assign priorities in lcr table in such a way that for prefix +xx highest priority is gw group 1 of the cheapest carrier, then gw group 1 of second cheapest carrier, then gw group 2 of cheapest carrier and finally gw group 2 of second cheapest carrier (assuming two carriers serving +xx).
Juha,
Thanks. I went through that option yesterday. As we have 6 instances of OpenSER running, I would need to have SIX routes defined in the lcr table for a single prefix. For example (IP's modified):
mysql> select * from lcr; +----+--------+---------------+--------+----------+ | id | prefix | from_uri | grp_id | priority | +----+--------+---------------+--------+----------+ | 8 | 1303 | @203.84.213.8 | 1 | 1 | | 9 | 1303 | @203.84.214.8 | 2 | 1 | | 10 | 1303 | @203.84.215.8 | 3 | 1 | | 11 | 1303 | @203.84.216.8 | 4 | 1 | | 12 | 1303 | @203.84.217.8 | 5 | 1 | | 14 | 1303 | @203.84.218.8 | 6 | 1 | +----+--------+---------------+--------+----------+
..... All that .... six rows for a single prefix. Of course, we have thousands of routes for each of our providers... off the top of my head, we have about 17,000 routes between Teleglobe and Verizon... multiply that by 6 and you have almost 120,000 routes. Apart from the administrative hassle, can OpenSER handle 120,000+ routes in the lcr table ok?
Our providers also have sometimes have several gateways in a single POP. However, we don't want to actually try and route calls to every single gateway in a POP, just a few of them. The LCR module doesn't seem to have a way to skip to the next lcr route. Can it do that? If it can't, we have to try every single gateway in a POP before skipping to the next carrier, which just isn't feesible.
Doug.
-- juha
____________________________________________________________________________________ Looking for last minute shopping deals? Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsearch/category.php?category=shopping
Douglas Garstang writes:
Thanks. I went through that option yesterday. As we have 6 instances of OpenSER running, I would need to have SIX routes defined in the lcr table for a single prefix. For example (IP's modified):
i don't follow this. the example you give now is different from earlier one. anyway, it is not a good idea to store 120,000 entries in lcr table.
Our providers also have sometimes have several gateways in a single POP. However, we don't want to actually try and route calls to every single gateway in a POP, just a few of them.
then you could list only those you want to try. there is no capability to skip gateways unless you do it in your script after calling next_gws.
this convinces me that current pstn service model is something we would really need to get rid of. emulating it using sip makes no sense.
-- juha