[Kamailio-Devel] Moving forward to Kamailio 2.0: Async core design
Henning Westerholt
henning.westerholt at 1und1.de
Mon Aug 4 15:22:49 CEST 2008
On Saturday 02 August 2008, Adrian Georgescu wrote:
> [..]
> The way to move forward is to switch to using a reliable transport
> like TCP. This is not reliable with the current design, which is
> blocking at every step waiting for an answer from DNS, Radius, SQL
> queries, and TCP putting it into its knees at every connection
> timeout. We are looking at rebuilding the core to be an asynchronous
> reactor that does not block during the processing of SIP messages.
>
> This means a new design and a lot of work to implement it. Here is an
> open question at this stage to get the big picture so that at least we
> know where we stand as a community on this topic:
>
> 1. Do we see this target as high priority for a next generation
> Kamailio 2.0?
> 2. If yes, what timeframe do we see realistic to achieve it?
> 3. Are you as a software developer or company willing to put any
> energy into it?
Hi Adrian,
having a reliable and performant TCP implementation is also one of our
priorities. As i don't see a huge point in maintaining all the core stuff
(like polling) by yourself i evaluated [1] already some event libraries that
could used as a foundation for the network layer.
I did some preliminary tests, and changed the core networking code to use
libevent to handle incoming data for the UDP protocol (i admin this is the
easy case). TCP don't work with this at the moment, the organisational stuff
keeped me away from this work. I plan to upload some patches on the tracker
if i get TCP working and did some more tests.
Cheers,
Henning
[1] http://www.openser.org/dokuwiki/doku.php/development-event-evaluation
More information about the Devel
mailing list