[Asterisk-Dev] SIP failover using Asterisk and openais

Mark Aiken aiken.mark at gmail.com
Wed Sep 28 16:43:34 MST 2005


Steven,

I'm not familiar with AIS but if your plan is to support in-call handoff to
a different IP you have issues at the session layer to deal with. That
problem I am familiar with and its not easy to keep a SIP call up and move
the IPs of a SIP server than is in the call-control and/or media path of the
session. Especially if the original server just dies mid-call. DNS tricks
will be of little use mid-call. In fact, without moving the sessions prior
to the switch, I'm not sure its even possible without 'dialing' back the
parties to reestablish the sessions. That may be your only viable option,
and its not such a bad one really. Note aslo that wrt SIP, Asterisk is a
B2BUA and has 2 call-control (SIP) and often 2 media (RTP) sessions for each
call between UAs (SIP phones).

Certainly it will be an interesting project.

Mark

On 9/28/05, Steven Dake <sdake at mvista.com> wrote:
>
> Fellow developers,
>
> I maintain the open source project openais
> http://developer.osdl.org/dev/openais which is an open source version of
> the Service Availability Forum's AIS specification.
>
> This implementation provides checkpointing and application failover.
> I'd like to create an integration between the SIP channel module and
> openais AMF/checkpointing and perhaps have it integrated into the
> asterisk source base as a proof of concept of AIS.
>
> The integration would allow multiple servers to maintain an
> active/standby the state of all SIP sessions. Then the active server
> for which the IP phone is communicating with would continue to operate
> and maintain its session in the event the active server failed.
>
> Would someone be kind enough to point me to the data structures or
> functions where the state of a SIP session is recorded. Is it possible
> just to record SIPs state, or does the rest of the asterisk server that
> loads the sip module contain state about the SIP session?
>
> In SIP, is an IP phone configured to talk to one specific IP address, or
> is there a discovery process to determine the SIP server's ip address?
>
> Finally in do_monitor, I notice there is a ast_sched_wait, followed by
> an ast_io_wait. ast_io_wait appears to dispatch any pending i/o events
> as derived from poll. I need to plug in here with an ast_io_add to add
> my "healthchecking" for the SIP server. My question is with
> ast_sched_wait.. Will it timeout immediately if there is I/O waiting?
> In other event systems, timers and events are usually integrated.. I'm
> not sure how these two work in asterisk by looking at the code.
>
> Thanks for the help
>
> regards
> -steve
>
>
> _______________________________________________
> Asterisk-Dev mailing list
> Asterisk-Dev at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-dev
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-dev/attachments/20050928/6bc53eca/attachment.htm


More information about the asterisk-dev mailing list