Re: [asterisk-users] Asterisk High-Capacity Stability
On May 14, 2007, at 11:27 PM, Atlanticnynex wrote: I'm curious what kind of configuration/features/modules you could recommend for my setup. Can you explain further what you mean by OpenSER to Asterisk? If you want to go Open Source, I think OpenSER is a good choice. You won't need to do any hacking to make it work..I'd suggest making 1 or 2 openser boxes to act as registrars for your user agents, and use the openser dispatcher module to point at one or more openser boxes that do LCR for calls that go directly out, and at one or more asterisk boxes for feature servers if you need them. Using Asterisk realtime and the database extensions for OpenSER you can share the user database between them and things should just work. Write your CDRs to a separate database (as to separate business data and call flow datajust in case someone does a complex CDR query you don't want your PDD to go through the roof) and come up with some kind of CDR remediataion for billing. ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
On May 14, 2007, at 1:55 PM, Daryl Jurbala wrote: On May 14, 2007, at 1:29 PM, Zoa wrote: Several people do use it for handling 50k minutes a day. (I'm one of them). Yes, you need to know what you are doing, and have a nice design, but it is possible.Our code is only slightly altered. (mainly for billing purposes). That's great if you're good enough/have the time to make that happen. But when I have issues and call/pay Digium and don't get timely or meaningful answers, it's doesn't make for a good business decision to continue using it for that purpose when I can toss in a Nextone or Sansay and have it just work. All the time. No babysitting. Full professional and timely problem resolution from the vendor, etc, etc, etc. Don't even get me started on Digium not being able to get TC400Bs to properly negotiate g.723.1 5.3k when a client requests 6.3k first (thank god for Cantata). Actually, I suspect that maybe a flaw in Asterisk, since, IIRC, it does not know the difference between 5.3 and 6.3 kbps g.723. IIRC, in Asterisk, the G.723 that it knows about is just one or the other, not both. Though I would like to apologize for your delay, the people responsible for that product are working hard on trying to get the G.723 possibility resolved. Matthew Fredrickson ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
On May 12, 2007, at 4:11 PM, Atlanticnynex wrote: Thanks Alex, some great ideas. I think, however, I'm leaning towards Asterisk at this point- since I have quite a bit of experience there, and very little with SER. At this point, I'm wondering from a dimensioning standpoint, what kind of capacity my machine will have (Dual Core Xeon 2.4GHz 4GB RAM). As I said, I don't plan to do any transcoding. I read the voip-info page on dimensioning and it seems theres some mixed feelings about Asterisk in high-capacity environments. I guess I'm looking for input as to whether Asterisk could handle roughly one DS3's worth of calls (672 calls) just doing the LCR (I've seen some pre-built LCR apps, looks like they all do on-the-fly MySQL queries- I think I'd write my own AGI that would use a cache). With my hardware, could Asterisk run stable for this amount of traffic? What stability issues does Asterisk have at this scale? Simply put, NO. I am on a project now where a client had an OpenSER box acting as an SBC and registrar passing traffic to several asterisk boxes which are doing LCR lookups on the fly as well as writing custom CDRs all through PHP AGI scripts to a Postgres DB. The Asterisk boxes do not scale, and randomly start swallowing calls or, more often, restart the process (safe_asterisk is handling this). There is some light IVR type usage for reporting account balances and the like. With anything more than 80 or 90 calls on the box, the IVR prompts start to break up. Ben through replacing hardware, more memory, different Asterisk builds, etc. I've had an open issue with Digium support on this for at least a couple of weeks, and the best advice so far was try using the SVN build. That makes things better, but it's still not anywhere close to fixed.. It's absolutely incredible that Asterisk works at all for some of the situations its been put in - major kudos to the developers. But I don't think using it for what you're talking about is a long-term business strategy. When the highlight of the 1.6 release is bridging channels, you know high volume sip to sip usage in a carrier class call routing environment is NOT what development is focused on. And that's fine. If you use a wrench to do the job of a screwdriver, you shouldn't complain when you bust your knuckles That being said, I don't meant to trash Asterisk at all. It's a fantastic feature server, and a great PBX, both of which things I use it for very successfully. I just don't think it's ready to handle 50k plus minutes a day SIP to SIP with LCR and billing data, no matter what you do with it. I'm 100% positive there are people out there doing it successfully, but those are the exception, not the rule. And I doubt they are running unmodified code. ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
On Mon, 14 May 2007, Daryl Jurbala said something to this effect: That being said, I don't meant to trash Asterisk at all. It's a fantastic feature server, and a great PBX, both of which things I use it for very successfully. Agreed. And, it's worth pointing out, that's what Asterisk is intended to be at this point; it's an *endpoint*, a UA. Excellent as a feature server, voicemail depository, PBX, IVR, what have you, *not* as a router or a PC-host based softswitch. About the only possible use I could imagine for such a thing in a routing scenario is as a broker that commands superior intelligence and is able to use extensive logic in call decisions (like LCR) and then releases itself from the media and signaling path entirely, but if you want that, you can't really use a B2BUA, and a SIP proxy like OpenSER can do that much better. Fast. Because that's what it's designed to do. I am not sure why so many people want to use it in call routing scenarios, because it's not a transit system. That's what optimised network elements are for; media gateways, proxies, etc. -- Alex Balashov [EMAIL PROTECTED] ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
Several people do use it for handling 50k minutes a day. (I'm one of them). Yes, you need to know what you are doing, and have a nice design, but it is possible.Our code is only slightly altered. (mainly for billing purposes). Zoa Daryl Jurbala wrote: On May 12, 2007, at 4:11 PM, Atlanticnynex wrote: Thanks Alex, some great ideas. I think, however, I'm leaning towards Asterisk at this point- since I have quite a bit of experience there, and very little with SER. At this point, I'm wondering from a dimensioning standpoint, what kind of capacity my machine will have (Dual Core Xeon 2.4GHz 4GB RAM). As I said, I don't plan to do any transcoding. I read the voip-info page on dimensioning and it seems theres some mixed feelings about Asterisk in high-capacity environments. I guess I'm looking for input as to whether Asterisk could handle roughly one DS3's worth of calls (672 calls) just doing the LCR (I've seen some pre-built LCR apps, looks like they all do on-the-fly MySQL queries- I think I'd write my own AGI that would use a cache). With my hardware, could Asterisk run stable for this amount of traffic? What stability issues does Asterisk have at this scale? Simply put, NO. I am on a project now where a client had an OpenSER box acting as an SBC and registrar passing traffic to several asterisk boxes which are doing LCR lookups on the fly as well as writing custom CDRs all through PHP AGI scripts to a Postgres DB. The Asterisk boxes do not scale, and randomly start swallowing calls or, more often, restart the process (safe_asterisk is handling this). There is some light IVR type usage for reporting account balances and the like. With anything more than 80 or 90 calls on the box, the IVR prompts start to break up. Ben through replacing hardware, more memory, different Asterisk builds, etc. I've had an open issue with Digium support on this for at least a couple of weeks, and the best advice so far was try using the SVN build. That makes things better, but it's still not anywhere close to fixed.. It's absolutely incredible that Asterisk works at all for some of the situations its been put in - major kudos to the developers. But I don't think using it for what you're talking about is a long-term business strategy. When the highlight of the 1.6 release is bridging channels, you know high volume sip to sip usage in a carrier class call routing environment is NOT what development is focused on. And that's fine. If you use a wrench to do the job of a screwdriver, you shouldn't complain when you bust your knuckles That being said, I don't meant to trash Asterisk at all. It's a fantastic feature server, and a great PBX, both of which things I use it for very successfully. I just don't think it's ready to handle 50k plus minutes a day SIP to SIP with LCR and billing data, no matter what you do with it. I'm 100% positive there are people out there doing it successfully, but those are the exception, not the rule. And I doubt they are running unmodified code. ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
Daryl Jurbala wrote: There is some light IVR type usage for reporting account balances and the like. With anything more than 80 or 90 calls on the box, the IVR prompts start to break up. Ben through replacing hardware, more memory, different Asterisk builds, etc. Zoa wrote: Several people do use it for handling 50k minutes a day. (I'm one of them). Yes, you need to know what you are doing, and have a nice design, but it is possible.Our code is only slightly altered. (mainly for billing purposes). Zoa, I've been experiencing the IVR prompts breaking up, as Daryl mentioned. The problem also affects queue announcements, but native music-on-hold sounds good. Have you experienced this problem, and if so what steps did you take to correct it? Thank you, Matthew Roth InterMedia Marketing Solutions Software Engineer and Systems Developer ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
On May 14, 2007, at 1:29 PM, Zoa wrote: Several people do use it for handling 50k minutes a day. (I'm one of them). Yes, you need to know what you are doing, and have a nice design, but it is possible.Our code is only slightly altered. (mainly for billing purposes). That's great if you're good enough/have the time to make that happen. But when I have issues and call/pay Digium and don't get timely or meaningful answers, it's doesn't make for a good business decision to continue using it for that purpose when I can toss in a Nextone or Sansay and have it just work. All the time. No babysitting. Full professional and timely problem resolution from the vendor, etc, etc, etc. Don't even get me started on Digium not being able to get TC400Bs to properly negotiate g.723.1 5.3k when a client requests 6.3k first (thank god for Cantata). I guess it all comes down to whether you want things to just work and be able to have tier 1/2 support capable of actually doing anything meaningful, or if you want to have the engineering level people forced to do all the work. From my standpoint, the smart business decision is quite clear. But, as I said, Asterisk is still driving the feature servers, and works well for it. As mentioned by someone else previously in the thread, it makes a great endpoint. If you're having good success with it, that's fantastic. I would hope that you contribute back to the list how you set things up to make this a possibility. ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
Thanks for all the input guys. This is what I had originally expected. Does anyone have any recommendations for other software configurations? I've thought about using OpenSER + rtpproxy(or media proxy), but it seems that OpenSER is not designed to do this sort of thing and would require some tricky hacking(?). I guess I'm wondering if their are any other opensource B2BUA-like softswitches that would fit what I'm looking for. What are these VoIP carriers using? Thanks, kn0x On 5/14/07, Daryl Jurbala [EMAIL PROTECTED] wrote: On May 14, 2007, at 1:29 PM, Zoa wrote: Several people do use it for handling 50k minutes a day. (I'm one of them). Yes, you need to know what you are doing, and have a nice design, but it is possible.Our code is only slightly altered. (mainly for billing purposes). That's great if you're good enough/have the time to make that happen. But when I have issues and call/pay Digium and don't get timely or meaningful answers, it's doesn't make for a good business decision to continue using it for that purpose when I can toss in a Nextone or Sansay and have it just work. All the time. No babysitting. Full professional and timely problem resolution from the vendor, etc, etc, etc. Don't even get me started on Digium not being able to get TC400Bs to properly negotiate g.723.1 5.3k when a client requests 6.3k first (thank god for Cantata). I guess it all comes down to whether you want things to just work and be able to have tier 1/2 support capable of actually doing anything meaningful, or if you want to have the engineering level people forced to do all the work. From my standpoint, the smart business decision is quite clear. But, as I said, Asterisk is still driving the feature servers, and works well for it. As mentioned by someone else previously in the thread, it makes a great endpoint. If you're having good success with it, that's fantastic. I would hope that you contribute back to the list how you set things up to make this a possibility. ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
Actually, OpenSER is just the you will need to scale Asterisk. We have perform a number of OpenSER to Asterisk implementation for 50k plus users -E On 5/14/07, Atlanticnynex [EMAIL PROTECTED] wrote: Thanks for all the input guys. This is what I had originally expected. Does anyone have any recommendations for other software configurations? I've thought about using OpenSER + rtpproxy(or media proxy), but it seems that OpenSER is not designed to do this sort of thing and would require some tricky hacking(?). I guess I'm wondering if their are any other opensource B2BUA-like softswitches that would fit what I'm looking for. What are these VoIP carriers using? Thanks, kn0x -- Thanks in advance and best regards, Ed Pimentel AgileCO Founder Web: http://AgileCO.net Mail: edpimentl[at]gmail.com Mail2: edpimentl[at]ieee.org IM: edpimentl [AOL | Jabber | Yahoo | MSN ] Voip: edpimentl [SKype | GoogleTalk ] Mobile Content Marketing/Management/Digital Delivery http://mobilecentral.ws Mobile ( Context Aware, AmbientIntelligence, Location ) based Social Network http://TagR.mobi (Alpha) Mobile Payment - P2P Payment http://agilepay.ws [S4]Secure Scalable Streaming Storage GridService http://DatR.ws Private Label Social Networks http://GooGaYa.com Sponsor of P2PSIP open source [viasip_ng] project Based on IETF P2PSIP WG https://sourceforge.net/projects/viasip/ http://groups.google.com/group/viasip_ng ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
I'm curious what kind of configuration/features/modules you could recommend for my setup. Can you explain further what you mean by OpenSER to Asterisk? Thanks Much, kn0x On 5/14/07, EdPimentl [EMAIL PROTECTED] wrote: Actually, OpenSER is just the you will need to scale Asterisk. We have perform a number of OpenSER to Asterisk implementation for 50k plus users -E On 5/14/07, Atlanticnynex [EMAIL PROTECTED] wrote: Thanks for all the input guys. This is what I had originally expected. Does anyone have any recommendations for other software configurations? I've thought about using OpenSER + rtpproxy(or media proxy), but it seems that OpenSER is not designed to do this sort of thing and would require some tricky hacking(?). I guess I'm wondering if their are any other opensource B2BUA-like softswitches that would fit what I'm looking for. What are these VoIP carriers using? Thanks, kn0x -- Thanks in advance and best regards, Ed Pimentel AgileCO Founder Web: http://AgileCO.net Mail: edpimentl[at]gmail.com Mail2: edpimentl[at]ieee.org IM: edpimentl [AOL | Jabber | Yahoo | MSN ] Voip: edpimentl [SKype | GoogleTalk ] Mobile Content Marketing/Management/Digital Delivery http://mobilecentral.ws Mobile ( Context Aware, AmbientIntelligence, Location ) based Social Network http://TagR.mobi (Alpha) Mobile Payment - P2P Payment http://agilepay.ws [S4]Secure Scalable Streaming Storage GridService http://DatR.ws Private Label Social Networks http://GooGaYa.com Sponsor of P2PSIP open source [viasip_ng] project Based on IETF P2PSIP WG https://sourceforge.net/projects/viasip/ http://groups.google.com/group/viasip_ng ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Asterisk High-Capacity Stability
Atlanticnynex wrote: whether Asterisk could handle roughly one DS3's worth of calls (672 calls) just doing the LCR (I've seen some pre-built LCR apps, looks like they all do on-the-fly MySQL queries- I think I'd write my own AGI that would use a cache). When appropriately configured, MySQL does a pretty good job of caching results too. [129 lines snipped] /Per Jessen, Zürich -- ENIDAN Technologies GmbH - managed email security. Starting at SFr1/month/user - http://www.spamchek.ch/ ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
[asterisk-users] Asterisk High-Capacity Stability
Thanks Alex, some great ideas. I think, however, I'm leaning towards Asterisk at this point- since I have quite a bit of experience there, and very little with SER. At this point, I'm wondering from a dimensioning standpoint, what kind of capacity my machine will have (Dual Core Xeon 2.4GHz 4GB RAM). As I said, I don't plan to do any transcoding. I read the voip-info page on dimensioning and it seems theres some mixed feelings about Asterisk in high-capacity environments. I guess I'm looking for input as to whether Asterisk could handle roughly one DS3's worth of calls (672 calls) just doing the LCR (I've seen some pre-built LCR apps, looks like they all do on-the-fly MySQL queries- I think I'd write my own AGI that would use a cache). With my hardware, could Asterisk run stable for this amount of traffic? What stability issues does Asterisk have at this scale? On 5/12/07, Alex Balashov [EMAIL PROTECTED] wrote: On Sat, 12 May 2007, Atlanticnynex said something to this effect: 'SIP Redirect Proxy', which I'm understanding to just redirect the SIP requests to the appropriate destination based on the routing logic- and OpenSER is no longer involved in the call process (meaning that accounting can no longer be handled); but I hear their are many different ways for OpenSER to behave, can this include my described configuration? I gather that OpenSER can be combined with rtpproxy to stay in the media path as well, if desired. And really, OpenSER can behave however you want; it allows you full read/write modification of pretty much any SIP header. In terms of what module to use for this, I had a very hard time with this too since, believe it or not, for such a ubiquitous open-source package, it did not offer a straightforward way of making SQL database dips without relying on the particular schema of some module or another. Ultimately, I found that the 'avp' module has a little function called avp_db_query() which can extract query results and stick them in individual AVP values. This function may have just been put there for kicks, since what AVP really implements is some transparent way of storing key/value pairs. So, what I really end up doing for most of my intelligent routing is something like: --- avp_db_query(SELECT ip_addr, port FROM customer_proxies WHERE customer_id = $avp(S:customer_id) AND active = true, $avp(S:proxy_ip);$avp(S:proxy_port)); if(!is_avp_set($avp(S:proxy_ip)) || !is_avp_set($avp(S:proxy_port))) { xlog(L_INFO, target-das - [$ci] - Active proxy not found.\n) ; sl_send_reply(404, Not Found); exit; } xlog(L_INFO, target-das - [$ci] - Resolved proxy $avp(S:proxy_ip):$avp(S:proxy_port)\n); avp_pushto($ru/domain, $avp(S:proxy_ip):$avp(S:proxy_port)); xlog(L_INFO, target-das - [$ci] - Attempting handoff to $ru\n); avp_delete($avp(S:customer_id)); avp_delete($avp(S:proxy_ip)); avp_delete($avp(S:proxy_port)); --- Seems like the simplest approach to me. My SIP users can't know who the Upstream Providers are, so all traffic must be 'relayed' through my server, including media. In that case, use Asterisk as an SBC and keep it in the media path perhaps, or tack on an RTP proxy to OpenSER, although unfortunately I can tell you absolutely nothing about how to go about this. I've confirmed that my SIP users can authenticate to OpenSER via the RADIUS module, but 1) how do I keep track of the call detail records {minutes used, user info, dest. info} and report it back to RADIUS? A decent RADIUS module will have the capability log the accounting information into a RADIUS accounting backend as well, since accounting is a key component of RADIUS. If not, you can use something akin to what I described above to keep the CDRs yourself. how do can OpenSER authenticate to my Upstream Providers? I am not sure if it can. There may have to be a B2BUA somewhere further upstream within your backend platform, as is not infrequently done. In other implementations I've seen, all connections to providers are done on a hard-coded port/IP-mapped peer basis so that proxies can hand calls off straight to them. But another way is to put another SBC-type unit at the egress to the provider(s) to take care of that. Just beware that this comes with the full implications of a B2BUA--distinct logical call legs. Best of luck, -- Alex -- Alex Balashov [EMAIL PROTECTED] ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit:
Re: [asterisk-users] Asterisk High-Capacity Stability
On Sat, 12 May 2007, Atlanticnynex said something to this effect: Thanks Alex, some great ideas. I think, however, I'm leaning towards Asterisk at this point- since I have quite a bit of experience there, and very little with SER. At this point, I'm wondering from a dimensioning standpoint, what kind of capacity my machine will have (Dual Core Xeon 2.4GHz 4GB RAM). As I said, I don't plan to do any transcoding. I read the voip-info page on dimensioning and it seems theres some mixed feelings about Asterisk in high-capacity environments. I guess I'm looking for input as to whether Asterisk could handle roughly one DS3's worth of calls (672 calls) just doing the LCR (I've seen some pre-built LCR apps, looks like they all do on-the-fly MySQL queries- I think I'd write my own AGI that would use a cache). It's really hard to say. My personal impression from discussions I've witnessed on this subject is that you might be able to get away with 1/3rd of a DS3, and under no circumstances more. But that doesn't mean you can't make this work with a few Asterisk servers and a proxy that routes requests to them in a round-robin and/or other load balancing fashion. And of course, I could be completely wrong. I know that one of the main frustrations with Asterisk on the TDM side -- and yes, I know you're talking about SIP-to-SIP -- is that there is no way it can possibly scale to handle a DS3 of PRIs, and that approach at least grants some possibility of hardware offloading. This has led people to have to use TNTs and other things that have DS3 adaptors as media gateways, although finding adequate call logic / call control is not within the economic reach of most. -- Alex -- Alex Balashov [EMAIL PROTECTED] ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users