[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Comments on addr-select-sol



Thank you for your comment.
This is the 1st comment I received on list for this draft :)

Rémi Denis-Courmont wrote:
	Hello,

Been reviewing the draft, and I am a bit puzzled as to why the implementability and compatibility with RFC3493 falls in the "other issues" category.
Most IPv6-enabled applications are currently relying on getaddrinfo then 
connect/sendto APIs, or variants thereof. getaddrinfo() queries DNS or 
whatever, and gives an ordered list of possible destination address, then 
connect() or sendto() decide which source address to use to reach a given 
destination. It might be worth noting that sendto() is non-blocking, so 
essentially any exchange with the network has to be done in getaddrinfo().
Now, that still leaves a lot of room for doing lots of fancy and advanced 
stuff in getaddrinfo(), along the DNS query. But I think it is worth looking 
deeper at. I do think we should avoid deprecating RFC3493 unless there is 
really a very very compelling reason to do so.
Good point.
I had no idea how to set-up a requirement item that covers "other issues". "compability with RFC3493" looks like a good requirement item.
I am a bit suspicious as to whether the "trial-and-error" approach can actually work with these considerations in mind.
IMO, trial-and-error approach can work with RFC3493.
You may suppose that the kernel changes the source address of the
existing connections, but it doesn't. The kernel just stores cache
for successful/unworkable address selection and utilize it for the
next address selection.

Rather, I am suspicious about "question-and-answer" approach about
this point. How can we implement that in getaddrinfo() without
changing the APIs ?