Why Asynchronous DNS

From reSIProcate
Revision as of 14:44, 19 June 2005 by Jason (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

resiprocate uses the ares asynchronous dns library from MIT. We use a forked version of ares that is in the contrib subdirectory of the resip project. The main differences between the MIT version and the resip forked version are that numerous bugs have been fixed particularly on win32 architectures and IPV6 support has been added.

It is impossible to know ahead of time how long a dns query will take. If the dns client library is synchronous care must be taken in the application to avoid blocking while a result is being retrieved. There are two methods of dealing with this problem: asynchronous blah, blah, blah