3 ms·
A little more complicated than that :). So Here's a brief overview of what we're doing and why we're doing it this way. Asterisk doesn't scale without a lot o
by josh2600 13y ago
A little more complicated than that :).
So Here's a brief overview of what we're doing and why we're doing it this way.
Asterisk doesn't scale without a lot of cruft and it's not accessible. At the high end of the market there's only gigantic switches from companies like Cisco/Alcatel etc; and those are $$$. So we see a market space inbetween cheapo asterisk and high-end cisco.
The crux of what we're doing is a lot of work in AMQP (RabbitMQ) to disintermediate the underlying infrastructure from the services. The point is that we don't ultimately want to care what underlying components you run on your network, only that you have components that can be consumed. Think of it as TelecomSDN from a management perspective and a distributed switch from an infrastructure perspective.
The stack as we distribute it today is:
* Kamailio (Border Controller)
* RabbitMQ (AMQP messaging bus)
* FreeSWITCH (Open-source switch)
* BigCouch (Distributed database with Dynamo Quorum to help deal with Network Partitions)
That's the gist of it; all on CentOS and all open-source. We may close source some modules as we go forward, but right now just about everything is open. Using a few clicks in AWS you can run an infrastructure capable of competing against AT&T.
There's a lot of telecom infrastructure that exists which can route calls. There aren't a lot of telecom infrastructures that have built-in fault tolerance and linear scaling.
EDIT: I should note that we've developed custom modules for both Kamailio and FreeSWITCH for our use case. We had to write a multi-threading module for Erlang for FreeSWITCH, as an example.
- voltagex_ 13y agoBlergh, Kamailio. Will it scale down to a Raspberry Pi? I realise I'm completely not your target market but I need something that does VoIP better than my router does it.
- josh2600 13y agoWe ran openSIPS before but we found the pace of development to be higher on Kamailio in general. Plus most of our customers are running it instead of openSIPS. We're currently trying to build the world's smallest cluster; seven raspberry pi's will hopefully support 100 phone calls or so with no single point of failure. If you're looking for something single server you want freeswitch by itself. That thing is a beast if you just want call processing and don't need carrier grade reliability. We made a frontend called BlueBox which is a very popular distribution; we're revamping it for Cluecon (hopefully we'll have it out by then) so if you're going to try this I'd recommend waiting until the new version comes out. Lastly, there's a lot of research going on at FreeSWITCH about running it by itself on the Pi. I believe it is workable now, you'll probably find a bunch of info with a quick google search.
- voltagex_ 13y agoThanks! Best of luck with your project.