3 ms·
When I click any link from Google search results, my computer will perform a DNS translation locally. If Google has done it for me during my search, then it wil
by belleville 12y ago
When I click any link from Google search results, my computer will perform a DNS translation locally. If Google has done it for me during my search, then it will definitely save some time for me.
- yebyen 12y agoHow does Google send the DNS lookup result? That's what I'm not understanding. It could alter the href, but then you lose any information from the hostname. Is there some service I'm not aware of for passing DNS results back to the browser in the document? Something like that seems like it would make the user vulnerable, how does your browser know your local network doesn't have its own DNS server that blackholes advertising domains, etc. I understand the why, but I don't see any potential answer for how. There is no standard way to "Slipstream" DNS resolution into an HTML document or HTTP response body that I know of. Nothing stopping Google from building this into Chrome, but they would have to break dozens of standards in order to do it.
- belleville 12y agoYou meant different objects on the same webpage. Load balancing for them will be different as you suggested. Is this really important? Load balancing for different clients can be achieved easily.
- yebyen 12y agoI mean in the sense that, primitive load balancing is implemented as Round-Robin in that, one DNS name maps to several IP addresses, and the client chooses one at random to ask to serve up the request. That is not the hard part here. The problem is that a URL in an HREF has either an IP or a hostname, and there are more hostnames than IP addresses by some orders of magnitude. So, when running a web server, we will conventionally map more than one hostname to a single IP address, leading to several different hostnames that all have separate potentially unrelated content trees. So, if Google will be pre-fetching DNS queries and passing the results onto clients, how? What I'm saying is, <a href="something", the form of links, and you have to set that href to something specific and concrete, and the browser is going to honor it and send the client request there. That's how web links work. You're suggesting the server should tell the browser what hostname to send in the server request (so the server knows what content to provide), but give it also (unchecked) a pre-calculated IP address to send the request to, so the client saves time looking up that result in DNS. How? And how should the browser client know to trust it? You can't make the browser check if the mapping is valid, or you lose the speed benefit that you hoped to achieve. Also, browsers don't have a pathway to receive this information separately or out-of-band. So, where does it go in-band? The standards weren't written to pass this information apart from each other, the answer is that doing it that way would present a new threat vector and there is no place for it in any standard that exists. (Correct me if I am wrong.)
- belleville 12y agoCan google put the DNS results into the links directly while keeping the hostname as well? Since the IP address is fetched real-time, there won't be any load balancing issue. It doesn't need to change the browser or anything else.
- yebyen 12y ago> Can google put the DNS results into the links directly while keeping the hostname as well? No, that's the problem. They can't. Links have one target, an address of either a remote hostname or an IP address. The browser would need to change to accommodate passing them back separately, because that's not something that current browsers do.