dns and software, was Re: Reliable Cloud host ?

Owen DeLong owen at delong.com
Thu Mar 1 20:46:40 UTC 2012


On Mar 1, 2012, at 6:26 AM, William Herrin wrote:

> On Thu, Mar 1, 2012 at 7:20 AM, Owen DeLong <owen at delong.com> wrote:
>> The simpler approach and perfectly viable without mucking
>> up what is already implemented and working:
>> 
>> Don't keep returns from GAI/GNI around longer than it takes
>> to cycle through your connect() loop immediately after the GAI/GNI call.
> 
> The even simpler approach: create an AF_NAME with a sockaddr struct
> that contains a hostname instead of an IPvX address. Then let
> connect() figure out the details of caching, TTLs, protocol and
> address selection, etc.  Such a connect() could even support a revised
> TCP stack which is able to retry with the other addresses at the first
> subsecond timeout rather than camping on each address in sequence for
> the typical system default of two minutes.
> 

That's not simpler for the following reasons:

1.	It takes away abilities to manage the connect() process that some
	applications want.

2.	It requires a rewrite of a whole lot of software built on the current
	mechanisms.

Most systems provide a mechanism for overriding the timeout for
connect().

Further, there are lots of classes, libraries, etc. that you can already use
if you want to abstract the gai/gni + connect functionality.

What exists isn't broken at the API level. Please stop trying to fix what
is not broken.

Owen





More information about the NANOG mailing list