I spent some time today working on HA option number 1. I don't know if I'd 
really call it HA, given that the phones need to have a high registration 
frequency to get around a server failing. How often do you have the phones 
re-register? Once a minute? Imagine that multiplied by thousands of phones, and 
even that's too high. A downtown of 60s isn't acceptable.
 
You really need to have a) registrations replicated between all Asterisk 
servers, or b) a SIP Realtime working to a central db (replicated or clustered 
of course), although we can skip that because SIP realtime doesn't work in that 
configuration.
 
We're using BLF too. With this model, no BLF. When the phone sends a SUBSCRIBE 
message, if it's using SRV, the SUBSCRIBE message could go to any Asterisk 
server. Another Asterisk system starts/ends a call, and that Asterisk box 
wouldn't have a copy of the SUBSCRIBE.
 
Also.. the SIP MESSAGE message... for instant messaging.... Asterisk doesn't 
support it... won't even process it.
 
Doug.
 
 

        -----Original Message----- 
        From: Gabriel Afana [mailto:[EMAIL PROTECTED] 
        Sent: Thu 3/16/2006 1:38 AM 
        To: Asterisk Users Mailing List - Non-Commercial Discussion 
        Cc: 
        Subject: [Asterisk-Users] Feedback from VON expo! Info on * HA and 
Polycomphone!!
        
        

        Hey group,
            I just got back from the VON expo.  It was insane....there were so 
many
        companies there.  The #1 thing ***EVERY*** company focused on was
        "convergance" - getting all your communication devices to intergrate 
with
        eachother.  There were some nifty products out there that did some cool
        stuff :-)
        
            Of course Digium/Asterisk was there and I had a list of questions 
for
        them.  I went by several times asking more and more questions...by the 
last
        visit, these guys were running from me because I was driving them nuts 
:-)
        Here are all the questions I asked them (this is not word for 
word...just a
        summary):
        
            Q:  What are the plans for HA?
            A:  With a configuration using DNS-SRV and DUNDi, you can create a
        pretty resiliant setup now.
        
            Q:  What about failover without losing a call
            A:   IBM has been able to make asterisk do this.  However, at this 
time
        we are not working on any solution to offer this as part of the program.
        
            Q:  Do you plan on offering support for other distros for Asterisk
        Business Edition?
            A:  [uncertain answer]  Not really sure...maybe SuSE...not sure
        
            Q:  When is asterisk going to fully support video?
            A:  Asterisk can complety support video using H.261, H.263 and we
        recently added support for H.264
        
            Q:  What do you recommend as the best solution for HA?
            I got two different answers for this from two different people 
there.
        Both made good sense and are basically what everyone is doing now.  Here
        both approaces are in a nut-shell:
        
            Approach 1 (seemed to be the preferred method):  Use DNS-SRV 
lookups for
        all registrations.  This will distribute the calls among the * servers.
        Next, you configure your servers using regexten and DUNDi.  You use 
regexten
        to dynamically create the "exten => 1234,1,NoOp" when a phone registers 
with
        that server.  Then when a call comes in, you use DUNDi to try to 
complete
        the call locally.  If the phone is not registered to that server, then 
do a
        DUNDi lookup to find the server that the phone is registered to and then
        pass the call over IAX to that server to take it to the phone.  Of 
course
        the phones will need to have a short registration expiration so they 
update
        frequently because if the server they are registered to crashes, until 
it
        re-registered, no server can access it.  But by doing this, the phone 
will
        re-register to another server and then the next DUNDi lookup will then 
go to
        this new server.  I asked about the load of having many phones 
registering
        frequently and he said it is no big deal at all.  He also said it was 
very
        important to make sure cache is disabled in DUNDi!!!  Each call that is 
made
        should result in a new query.  This will ensure the calls are not 
getting
        old cached info which may no longer be accurate.
        
            Approach 2: Use a SER box to handle all registrations.  The SER box 
will
        take care of distributing the load between the * boxes.  You do not use
        DUNDi or regexten in this case.  Just let each * box function on its 
own.
        If one of the servers fails, SER will not use it to terminate calls.  
Sinces
        the phones are registering to SER, and all incoming calls will be 
routed to
        SER, you do not need to worry much about the * boxes.  You just need to 
make
        sure you have your SER boxes in a cluster to fail-over in the event of
        failure.
        
            Overall theme of the Asterisk stand:  selling third-party products. 
 In
        the there section, Digium had 10 seperate vendors that have teamed with 
them
        to sell special programs/products/services that intergrate with 
Asterisk.
        One was a call-center program, another was a resellers package, another 
delt
        with firewalls and NAT, another for voice recognition, another was Intel
        (that has partnered with Digium to offer drivers in the ABE for the 
intel
        cards), another was some email, fax, chat, presence, etc. kind of box 
that
        sits in front of * to combine all these services....and some others I 
dont
        remember.  It felt like I was walking into an infomercial!
        
        
            I also spoke with Polycom guys a great deal and asked many 
questions:
        
            Q:  Do you plan on offering 10/100/1000 ports on the phones?
            A:  Yes, in the near future
        
            Q:  Do you plan on offering a standard phone jack for failover 
purposes?
            A:  No, we have no talks of this.  However, I will take this idea 
to the
        production development team.
        
            Q:  What is the "services" button ever used for?
            A:  This is only operable in the 601 and is used to launch the XML
        browser.  We have partned with many companies to offer you sports, 
weather,
        stock, movie ticket info...etc that can be fed directly to the phones
        screen.
        
            Q:  What the deal with the limit on the number of people you can 
monitor
        for presence?
            A:  There is no limit in the phone.  This is an Asterisk limitation.
        
            Q:  How can you get the name of the person you are calling to 
appear on
        the phone instead of their extension? (they had a demo of their phones 
there
        and they were doing this!!!)
            A:  You enter the information into the phone book directly via the 
XML
        script loaded from the bootserver.  Since all the phones will use the 
same
        bootserver to fetch the XML script, they will all have each others 
extension
        numbers and associated names.  When you call another extension, their 
name
        will then appear.
        
            Q:  When the phone is unable to make a call through the primary 
server
        and it redirects to the secondary server, does it just make the call or 
does
        it also register with the secondary server?
            A:  No, it will not register with the secondary server 
automatically.
        This is done on purpose to help reduce unneccessary registrations.
        
            Q:  Whats the best way to program the phone to handle failover?
            A:  Use a DNS-SRV address for the primary server.  When the phone
        queries the DNS server, it will receive a list of all the possible 
servers
        to send the call to.  The phone will try to register to the first 
server; if
        this fails, it will go to the second server...and so on through the list
        until it can register.  Once it is registered with a server, if that 
server
        fails (or the phone is unable to reach that exact server for some 
reason),
        the phone will *not* go to the secondary server!!!  The results of the 
DNS
        lookup are saved on the phone so if the call doesn't go through to the
        server its registered with, it will recall the saved list of servers
        available and go through that list.  Because of this, there is no need 
to go
        to the secondary server section since it will simply loop through all 
the
        servers it received during the DNS-SRV lookup.
        
        
            I am sure there were many things I left out or forgot to say.  If I
        remember, I'll be sure to post them.
        
        - Gabe
        
        
        _______________________________________________
        --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

Reply via email to