> From: "Ben Pfaff" <b...@ovn.org> > To: d...@openvswitch.org > Sent: Tuesday, August 8, 2017 2:43:17 PM > Subject: [ovs-dev] DNS support options > > Open vSwitch currently supports only IP addresses for specifying > OpenFlow and OVSDB remotes. It would be nice to support DNS names. > Open vSwitch can't afford to let DNS resolution block processing, so it > needs some way to resolve DNS asynchronously. I've come up with the > following solutions so far: > > * Implement it ourselves using threads. Probably, this would be > a single worker thread that loops through calls to > getaddrinfo(). > > * glibc has getaddrinfo_a(), an asynchronous version of > getaddrinfo(). *BSD and Windows do not have this function, so > we would still need to implement it ourselves (probably using > threads) if we adopted this approach, so it might be more work > than the first solution. > > * Use an external asynchronous DNS library. GNU adns looks like > a good choice: http://www.chiark.greenend.org.uk/~ian/adns/. > It has a port to Windows but I don't know whether it's > up-to-date. >
With adns_beforepoll()/adns_afterpoll(), it looks like adns might be easy to integrate on top of lib/poll-loop.c. Not requiring a separate thread seems like a plus. > Thoughts? > _______________________________________________ > dev mailing list > d...@openvswitch.org > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev