Knowledge (XXG)

Link prefetching

Source đź“ť

167: 517:
requests are said to be "safe", i.e., a user agent that issues one of these requests should expect that the request results in no change on the recipient server. However, it is common for website operators to use these requests outside of this constraint. Plain hyperlinks (which almost universally
521:
Similarly, it is entirely possible for a hosting service to provide a Web front end to manage files, including links that delete one or more files. Users who visit pages containing these types of links, (whilst using a browser which employs an indiscriminate link prefetcher), might find that they
518:
result in GET requests) are often used to implement logout functionality and account verification, e.g., when a user completes an account creation form, and an automated service sends a verification e-mail to the user's given e-mail address.
483:
implemented "Google Instant Pages" in August 2011 which takes advantage of the aforementioned feature, predictive search completion, and preloading search results as the user types in order to improve the performance of the search
152:
Link: <//pagead2.googlesyndication.com>; rel=dns-prefetch, </js/bootstrap.min.js>; as=script; rel=preload, </ads.html>; rel=prerender, </css/bootstrap.min.css>; as=style; rel=preload
547:
Users and website operators who pay for the amount of bandwidth they use find themselves paying for traffic for pages the user might not actually visit, and advertisers might pay for viewed ads on sites that are never
791: 476:
that takes advantage of this feature so as to improve the user experience. If the first hit is considered very probable to be the desired hit, it is assigned as a prefetchable link.
457:
As of version 11, Internet Explorer supports the following set of features to expand its prefetching capabilities: "prerender", "dns-prefetch" and "lazyload" (images only).
573:
In the case of mobile devices or for users with a limited bandwidth allowance, prefetching may result in an unnecessary costly drain on limited bandwidth.
994: 29:
Prefetching is accomplished through hints in web pages. These hints are used by the browser to prefetch links. Resources which can be prefetched include:
795: 583:
warns that improper use may result in the aforementioned increased bandwidth usage, slower loading of other links, and slightly stale content.
1055: 22:
allows web browsers to pre-load resources. This speeds up both the loading and rendering of web pages. Prefetching was first introduced in
890: 201: 186:
Please help improve this article by looking for better, more reliable sources. Unreliable citations may be challenged and removed.
956: 562:
Users may be exposed to more security risks by downloading more pages, or from un-requested sites (additionally compounded as
525:
Additionally, there are a number of criticisms regarding the privacy and resource usage implications of link prefetching:
46: 180: 569:
Users may violate acceptable-use policies of their network or organization if prefetching accesses unauthorized content.
175: 247: 392: 1002: 225: 938: 580: 480: 469: 403: 267: 166: 69: 34: 576:
It is possible for implementations to prefetch links even when they are not specified as prefetch links.
708: 84:
Hints to the browser. Common hints include DNS queries, opening TCP connections, and page pre-rendering.
847: 970: 493: 489: 362: 1035: 1025: 870: 343: 910: 684: 447: 42: 407: 946: 592: 563: 537: 443: 414: 305: 132: 122: 960: 674: 766: 942: 427: 324: 230: 104: 1040: 559:
may become less reliable due to registering page hits that were never seen by the user.
73: 38: 809: 1049: 552: 433: 286: 118: 108: 930: 505:
An issue inherent to indiscriminate link prefetching involves the misuse of "safe"
240: 235: 145: 688: 998: 973: 950: 530: 506: 934: 65: 30: 556: 514: 436:
supports prefetching of linked web content by "prerendering", as of version
1030: 824: 510: 641: 492:
has employed the use of prefetching and preloading since the release of
473: 1041:
A WordPress plugin that implements the true dynamic prerender meta tag
666: 965: 679: 396: 90: 23: 614: 541: 388: 399:
are the first referenced browsers to support link prefetching.
160: 522:
have been logged out or that their files have been deleted.
57:
There are two W3C standards covering prefetching for HTML5:
417:
proxy appliance is known to use non‑compliant prefetching.
113:<link rel="dns-prefetch" href="http://example.com/"> 99:<link rel="prefetch" href="http://www.example.com/"> 865: 863: 825:"Link Prefetching in Mozilla: A Server-Driven Approach" 1036:
Prerender and prefetch support in Internet Explorer 11
891:"Internet Explorer 9 Network Performance Improvements" 544:
merely because a malware-spreading link is prefetched.
127:<link rel="prerender" href="/page/to/prerender"> 551:
Web statistics such as browser usage, search engine
97:
Standard link prefetch (supported by most browsers):
871:"Web Developer's Guide to Prerendering in Chrome" 792:"Getting to the Content You Want, Faster in IE11" 406:(discontinued product, may technically be called 49:connections can also be hinted for prefetching. 810:"Bug 730101 - Implement prerendering in Firefox" 529:Cookies set or sent to third parties compromise 794:. IEBlog, Microsoft. 2013-12-04. Archived from 64:Hints to specific URLs. Common hints include 8: 430:supports DNS prefetching, as of version 3.5. 786: 784: 782: 780: 778: 776: 761: 759: 757: 755: 753: 751: 749: 213: 964: 747: 745: 743: 741: 739: 737: 735: 733: 731: 729: 678: 446:supports prefetching of IP addresses by " 202:Learn how and when to remove this message 16:Allows web browsers to pre-load resources 603: 7: 959:. p. 50. sec. 9.1.1. 952:Hypertext Transfer Protocol—HTTP/1.1 636: 634: 609: 607: 137:<img src="image.jpg" lazyload> 566:become more advanced and diverse). 14: 713:Resource Hints: W3C Working Draft 941:; Masinter, Larry; Leach, Paul; 165: 823:Fisher, Darin; Saksena, Gagan. 536:Enables essentially/borderline 464:Popular sites using prefetching 1: 848:"Controlling DNS prefetching" 579:In the case of prerendering, 1026:Mozilla Link Prefetching FAQ 769:. Steve Souders. 2013-10-07. 709:"Resource Hints (Example 6)" 93:methods for prefetch hints: 1056:Hypertext Transfer Protocol 450:prefetching", as of version 37:, image, audio, video, and 1072: 1031:Test for Prefetch support 955:. Network Working Group. 540:malware installation via 393:Mozilla Application Suite 226:Standard link prefetching 219: 216: 665:Nottingham, M. (2010). 472:is the most well-known 174:Some of this article's 911:"About Google Instant" 812:. Mozilla. 2014-10-18. 404:Google Web Accelerator 220:Prefetching Supported 995:"Mouseover Prefetch?" 501:Issues and criticisms 131:Lazy-load of images ( 494:Internet Explorer 11 117:Page pre-rendering ( 53:Prefetching in HTML5 997:. Gervase Markham, 937:; Mogul, Jeffrey; 564:drive-by downloads 241:Lazy-load (Images) 593:Cache prefetching 538:Zero-click attack 444:Internet Explorer 402:Browsing using a 380: 379: 306:Internet Explorer 212: 211: 204: 133:Internet Explorer 123:Internet Explorer 1063: 1014: 1013: 1011: 1010: 1001:. Archived from 993:various (2009). 990: 984: 983: 981: 980: 968: 966:10.17487/RFC2616 943:Berners-Lee, Tim 927: 921: 920: 918: 917: 907: 901: 900: 898: 897: 887: 881: 880: 878: 877: 867: 858: 857: 855: 854: 844: 838: 837: 835: 834: 829: 820: 814: 813: 806: 800: 799: 788: 771: 770: 763: 724: 723: 721: 720: 705: 699: 698: 696: 695: 682: 680:10.17487/RFC5988 662: 656: 655: 653: 652: 642:"Resource Hints" 638: 629: 628: 626: 625: 611: 453: 439: 214: 207: 200: 196: 193: 187: 169: 161: 148:: Example below. 143: 138: 128: 114: 100: 20:Link prefetching 1071: 1070: 1066: 1065: 1064: 1062: 1061: 1060: 1046: 1045: 1022: 1017: 1008: 1006: 992: 991: 987: 978: 976: 939:Frystyk, Henrik 929: 928: 924: 915: 913: 909: 908: 904: 895: 893: 889: 888: 884: 875: 873: 869: 868: 861: 852: 850: 846: 845: 841: 832: 830: 827: 822: 821: 817: 808: 807: 803: 790: 789: 774: 765: 764: 727: 718: 716: 707: 706: 702: 693: 691: 664: 663: 659: 650: 648: 640: 639: 632: 623: 621: 613: 612: 605: 601: 589: 503: 496:(October 2013). 466: 451: 437: 428:Mozilla Firefox 424: 422:Modern browsers 385: 325:Mozilla Firefox 231:DNS prefetching 208: 197: 191: 188: 185: 170: 159: 157:Browser support 154: 141: 136: 126: 112: 105:Mozilla Firefox 98: 81:Resource hints 55: 17: 12: 11: 5: 1069: 1067: 1059: 1058: 1048: 1047: 1044: 1043: 1038: 1033: 1028: 1021: 1020:External links 1018: 1016: 1015: 985: 947:"Safe Methods" 922: 902: 882: 859: 839: 815: 801: 798:on 2014-05-12. 772: 725: 700: 657: 630: 602: 600: 597: 596: 595: 588: 585: 571: 570: 567: 560: 549: 545: 534: 502: 499: 498: 497: 487: 486: 485: 479:Specifically, 465: 462: 461: 460: 459: 458: 441: 431: 423: 420: 419: 418: 411: 400: 384: 381: 378: 377: 374: 371: 368: 365: 359: 358: 355: 352: 349: 346: 340: 339: 336: 333: 330: 327: 321: 320: 317: 314: 311: 308: 302: 301: 298: 295: 292: 289: 283: 282: 279: 276: 273: 270: 264: 263: 260: 257: 254: 251: 244: 243: 238: 233: 228: 222: 221: 218: 210: 209: 176:listed sources 173: 171: 164: 158: 155: 151: 150: 149: 139: 129: 115: 111:, and others): 103:DNS prefetch ( 101: 88: 87: 86: 85: 79: 78: 77: 54: 51: 15: 13: 10: 9: 6: 4: 3: 2: 1068: 1057: 1054: 1053: 1051: 1042: 1039: 1037: 1034: 1032: 1029: 1027: 1024: 1023: 1019: 1005:on 2009-05-31 1004: 1000: 996: 989: 986: 975: 972: 967: 962: 958: 954: 953: 948: 945:(June 1999). 944: 940: 936: 932: 931:Fielding, Roy 926: 923: 912: 906: 903: 892: 886: 883: 872: 866: 864: 860: 849: 843: 840: 826: 819: 816: 811: 805: 802: 797: 793: 787: 785: 783: 781: 779: 777: 773: 768: 767:"Prebrowsing" 762: 760: 758: 756: 754: 752: 750: 748: 746: 744: 742: 740: 738: 736: 734: 732: 730: 726: 714: 710: 704: 701: 690: 686: 681: 676: 672: 668: 667:"Web Linking" 661: 658: 647: 646:w3c.github.io 643: 637: 635: 631: 620: 619:w3c.github.io 616: 610: 608: 604: 598: 594: 591: 590: 586: 584: 582: 577: 574: 568: 565: 561: 558: 554: 550: 546: 543: 539: 535: 532: 528: 527: 526: 523: 519: 516: 512: 508: 500: 495: 491: 488: 482: 478: 477: 475: 471: 468: 467: 463: 456: 455: 449: 445: 442: 435: 434:Google Chrome 432: 429: 426: 425: 421: 416: 412: 409: 405: 401: 398: 394: 390: 387: 386: 382: 375: 372: 369: 366: 364: 361: 360: 356: 353: 350: 347: 345: 342: 341: 337: 334: 331: 328: 326: 323: 322: 318: 315: 312: 309: 307: 304: 303: 299: 296: 293: 290: 288: 287:Google Chrome 285: 284: 280: 277: 274: 271: 269: 266: 265: 261: 258: 255: 252: 249: 246: 245: 242: 239: 237: 234: 232: 229: 227: 224: 223: 215: 206: 203: 195: 183: 182: 177: 172: 168: 163: 162: 156: 147: 140: 134: 130: 124: 120: 119:Google Chrome 116: 110: 109:Google Chrome 106: 102: 96: 95: 94: 92: 83: 82: 80: 75: 72:, images and 71: 67: 63: 62: 61:Link preload 60: 59: 58: 52: 50: 48: 44: 40: 36: 32: 27: 25: 21: 1007:. Retrieved 1003:the original 988: 977:. Retrieved 951: 925: 914:. Retrieved 905: 894:. Retrieved 885: 874:. Retrieved 851:. Retrieved 842: 831:. Retrieved 818: 804: 796:the original 717:. Retrieved 712: 703: 692:. Retrieved 670: 660: 649:. Retrieved 645: 622:. Retrieved 618: 578: 575: 572: 524: 520: 507:HTTP methods 504: 236:Prerendering 198: 189: 178: 146:HTTP headers 125:and others): 89: 56: 28: 19: 18: 999:MozillaZine 935:Gettys, Jim 531:Web privacy 179:may not be 1009:2009-12-16 979:2009-12-16 916:2014-05-09 896:2014-05-09 876:2014-05-09 853:2014-05-09 833:2014-05-09 719:2016-10-31 694:2016-03-19 651:2016-03-19 624:2016-03-19 599:References 408:precaching 383:Historical 66:JavaScript 45:names and 31:JavaScript 615:"Preload" 557:page hits 553:referrers 415:Blue Coat 192:July 2021 74:web fonts 39:web fonts 1050:Category 673:. IETF. 671:RFC 5988 587:See also 548:visited. 511:HTTP GET 268:Chromium 250:browser 217:Browser 181:reliable 484:engine. 474:website 248:Android 689:367264 687:  581:Google 555:, and 509:. The 481:Google 470:Google 452:  438:  395:, and 363:Safari 828:(PDF) 715:. W3C 685:S2CID 397:WebTV 344:Opera 91:HTML5 24:HTML5 974:2616 957:IETF 542:0day 515:HEAD 513:and 490:Bing 413:The 389:iCab 370:Yes 348:Yes 332:Yes 329:Yes 319:Yes 316:Yes 313:Yes 310:Yes 297:Yes 294:Yes 291:Yes 278:Yes 275:Yes 272:Yes 253:Yes 144:for 142:Link 971:RFC 961:doi 675:doi 454:9. 448:DNS 440:11. 376:No 373:No 367:No 357:No 354:No 351:No 338:No 335:No 300:No 281:No 262:No 259:No 256:No 70:CSS 47:TCP 43:DNS 35:CSS 26:. 1052:: 969:. 949:. 933:; 862:^ 775:^ 728:^ 711:. 683:. 669:. 644:. 633:^ 617:. 606:^ 391:, 135:): 121:, 107:, 68:, 41:. 33:, 1012:. 982:. 963:: 919:. 899:. 879:. 856:. 836:. 722:. 697:. 677:: 654:. 627:. 533:. 410:) 205:) 199:( 194:) 190:( 184:. 76:.

Index

HTML5
JavaScript
CSS
web fonts
DNS
TCP
JavaScript
CSS
web fonts
HTML5
Mozilla Firefox
Google Chrome
Google Chrome
Internet Explorer
Internet Explorer
HTTP headers

listed sources
reliable
Learn how and when to remove this message
Standard link prefetching
DNS prefetching
Prerendering
Lazy-load (Images)
Android
Chromium
Google Chrome
Internet Explorer
Mozilla Firefox
Opera

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑