Talk:Link prefetching

Latest comment: 5 years ago by Proxyma in topic Google might no longer do this

DNS Prefetching

edit

I came across this article while looking to learn more about "DNS prefetching" where modern web browsers do the DNS resolution on potential links included in a web page. This is slightly different from what is being described on this "link prefetching" page where browsers go and cache pages that people might potentially visit. With DNS prefetching, the pages are not retrieved and cached, but rather the domain names are resolved and the IP addresses are cached for faster resolution. Then when someone goes to click on a link, the browser has already done the necessary DNS resolution and can quickly go and load the page.

I don't know whether it makes sense to expand this page on "Link prefetching" to mention that one form of this is for browsers to pre-resolve the domain names - or whether it makes sense to open up a new page on "DNS prefetching". I'll note that what is referred to on this page as HTML5 Prefetching" is, in fact, one of the ways to ensure that a domain name is pre-fetched. I'm not sure why it is called "HTML5 Prefetching".

Some links worth noting about DNS prefetching:

I've found multiple reports that Safari and Opera both implement this as well, although I didn't find pages such as these above specifically about the feature.

Thoughts on whether this should be included in the "Link prefetching" page or split out into a separate page would be welcome. -- Dyork (talk) 19:47, 6 September 2012 (UTC)Reply

Article structure

edit

The web browser example given in the article is just one specific instance of prefetching. Prefetching data carried out by processors is another example.

The article should begin by explaining what prefetching is in a generic sense, and then specifying examples. It could also go into the pros and cons of prefetching. eg. prefetching web pages may be undesirable if you have a data transfer quota, or if a badly designed implemented algorithm were to prefetch large binary files.

--TheParanoidOne 20:15, 3 Apr 2005 (UTC)

Agree. The article need to be rewriten to cover a boarden area. It is not just used in the Internet. --minghong 12:45, 13 Apr 2005 (UTC)

I renamed the article to "Link prefetching". --minghong 21:00, 27 Apr 2005 (UTC)

Mention Fasterfox?

edit

I am going to mention fasterfox, because it allows another brouser (firefox) to prefetch links as well. I think just a mention is good enough. Cabd33 16:16, 9 May 2006 (UTC)Reply

Removed from Mozilla Firefox

edit

The following was removed from Mozilla Firefox with comment "rvt. link prefetching is explain on own article.":


"Link prefetching involves an optimization technique that utilizes the browser's idle time to download or prefetch documents that the user might visit in the near future.

For example, if you search for "internet explorer", Firefox may connect with Microsoft's server (first link returned by Google), even if you eventually choose a link to Wikipedia."


I think it should be mentioned in this article, because this has obvious privacy implications. Also, IMO it is good idea to include the list of browsers that has prefetching (especially non-standard) enabled by default (like Firefox).

Another note: after the sentence "The standard is set out in a web standard." there is link to external source - Mozilla website, which is incorrect -- Mozilla is NOT some stardardization body, so what they say is irrelevant in this case.

Standardization body of HTML is w3c.org. Prefetching used in Firefox (and other Gecko-based web browsers) is enabled by default AND is NOT standardized in the same time. (In FF there is even no GUI to disable this feature. Bugs in Mozilla's Bugzilla related to this are closed with WONTFIX.)

How does prefetching work in FF? When there is somewhere in the page <link rel="prefetch" href="http://some.url"> then browser may in idle time "prefetch" http://some.url. But you know what? There is no value "prefetch" for "rel" in HTML standard! See here then click on "rel", you land here, then click on "link-types" and you finally land on "Link types". You see? There is no "prefetch".

Also, standard says (http://www.w3.org/TR/html4/struct/links.html#h-12.3): (about <link>) "This element defines a link. Unlike A, it may only appear in the HEAD section of a document, although it may appear any number of times." But Firefox (and other Gecko-based browsers) recognizes <link rel="prefetch"> even in <body>. Another breaking of standard. 193.219.28.146 17:29, 21 November 2006 (UTC)Reply

Actually, the HTML specification specifically allows additional link types in §6.12 (“Authors may wish to define additional link types not described in this specification.”). Mozilla's implementation of prefetching is well documented and “an Internet-Draft is in the works”. Also, the acceptance of some out-of-place elements is merely error correction, and not an endorsement of bad code. If you take a look at such a page in the DOM Inspector, you'll see that the misplaced link element is moved to the head. –Wulf 00:47, 22 April 2007 (UTC)Reply

Can't both be right!

edit
  1. iCab was the first browser (February 2001 or earlier[1]) to support prefetching
  2. Mozilla Application Suite (Firefox etc.) and its derivatives - the first browser to support prefetching[citation needed].

I think that firefox should be removed, as it is uncited. (or at least the mention of it being the first)

Kamahl 01:33, 17 May 2007 (UTC)Reply

Chrome addon

edit

I found this addon for chrome that apparently adds this feature https://chrome.google.com/extensions/detail/lcgjcablhbecaaheaiebnjingaocdmdf —Preceding unsigned comment added by 173.89.44.119 (talk) 18:40, 2 July 2010 (UTC)Reply

Standard or not?

edit

Is link prefetching standard or not? Is the article contradicting itself? "Link prefetching is a proprietary syntax", "prefetching is an Internet Draft standard", "Prefetching is not currently explicitly defined by any accepted standards"....

And what of this? http://www.w3.org/TR/html5/links.html#link-type-prefetch

198.175.154.212 (talk) 13:49, 11 October 2011 (UTC)Reply

I think, this is because the link-type prefetch would load the resource, which implies prefetching DNS. But it does not just prefetch the DNS. So .. for me: prefetching another resources (f.e. prefetching of another site) is standardized, but prefetching DNS, just the link of the domain-name to the ip-address, is not standardized. — Preceding unsigned comment added by Simonsimcity (talkcontribs) 11:47, 3 June 2013 (UTC)Reply

Article's internal inconsistencies / browser support is unhelpful

edit

In the section titled "HTML5 prefetching" under "Standard link prefetching" it comments: "executed by most modern browsers"

But then later in the article in the "Browser support" section it makes no reference of this support in ANY browser except maybe Google Chrome (and even that is ambiguous). In general the "Browser support" section isn't fit for purpose. There are four types of prefetching referenced in the "HTML5 prefetching" so I'd expect to see in the Browser support sub-section four qualifiers for if they do or do not support those four things.

In general the "Browser support" section should be re-done completely, so it is more consistant with this article's "Browser support" section: https://en.wikipedia.org/wiki/HTML5_video#Browser_support

For example:

Browser Prefetching Supported
Standard link prefetching DNS prefetching Prerendering Lazy-load (Images)
Android browser Yes Yes No Yes
Chromium Yes Yes Yes No
Google Chrome Yes No Yes Yes
Internet Explorer Yes Yes No Yes
Konqueror Yes No Yes No
Mozilla Firefox No Yes No Yes
Opera Yes Yes Yes No
Safari Yes Yes No No

Google might no longer do this

edit

It might be worth checking whether the Google search engine still does prefetching. I did a little bit of testing with searches that should have triggered this behavior, and was unable to verify that it still works. Rather than testing, of course, a citation would be useful. Proxyma (talk) 19:34, 28 January 2019 (UTC)Reply