Closed Bug 790370 Opened 12 years ago Closed 11 years ago

windows proxy discovery via WPAD needs caching

Categories

(Core :: Networking: HTTP, enhancement)

16 Branch
x86_64
Windows 7
enhancement
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: mcmanus, Assigned: rdow)

Details

josh and taras have data over in https://etherpad.mozilla.org/chromehangs that shows WPAD is causing large amounts of hangs on windows. (as I understand it this is the dominant hang)

769764 will make that stop being a chrome hang, but the long delays will still show up as serialization delays in between transactions resulting in a slow experience.

hopefully some of this is fixed with 787757

but beyond that, some caching away from the OS layer needs to be done to stop running this code path so often in cases where there is no proxy or the pac file is given to firefox for evaluation.

INTERNET_PER_CONN_AUTODISCOVERY_FLAGS from msdn.microsoft.com/en-us/library/windows/desktop/aa385145(v=vs.85).aspx might hold some promise here - if that doesn't work out we can always add some kind of cache layer in nsWindowsSystemProxySettings
Summary: windows proxy discovery via WPAD causes serialziation → windows proxy discovery via WPAD needs caching
Assignee: nobody → rdow
787757 added the use of INTERNET_PER_CONN_FLAGS_UI if available. INTERNET_PER_CONN_FLAGS_UI is apparently an optimizing update for Windows 7 & 8 introduced in WinINET ( http://stackoverflow.com/questions/2871510/unable-to-query-proxy-automatically-detect-settings-on-windows-7 ) for the purpose of letting the OS cache the proxy query. Since chrome supports multiple OS versions, we should indeed add a caching layer. Will investigate.
Status: NEW → ASSIGNED
Current results on the WPAD bug. We should run this through XP when possible. 
This appears to be a non-problem -- is something missing?

Summary of Results
==================

Windows XP
----------
 Waiting for Installable ISO image and corresponding license

Windows Vista
-------------
  IE
    "Automatically detect settings"
      fetches http://wpad/wpad.dat one time

  Firefox Nightly
    "Use system proxy settings"
      wpad is ignored (not obeying system proxy settings) - see bug 820486

    "Auto-detect proxy settings for this network"
      fetches http://wpad/wpad.dat one time

Windows 7
---------
  IE
    "Automatically detect settings"
      fetches http://wpad/wpad.dat one time

  Firefox Nightly
    "Use system proxy settings"
      wpad is ignored (not obeying system proxy settings) - see bug 820486

    "Auto-detect proxy settings for this network"
      fetches http://wpad/wpad.dat one time

MacOS (10.8.2)
--------------
  Safari
    "Auto Proxy Discovery"
      fetches http://wpad/wpad.dat one time

  Firefox Nightly
    "Use system proxy settings"
      wpad is ignored (not obeying system proxy settings) - see bug 820486

    "Auto-detect proxy settings for this network"
      fetches http://wpad/wpad.dat one time

Methodology
===========

1) set up an HTTP server for the local domain
2) create a wpad.dat file and place in the Documents root
3) Trace network using tcpdump / Wireshark, verify accesses
5) verify DNS lookups and accesses to the WPAD file in the network trace
4) verify contents of HTTP access logs
5) change settings in native browser (IE and Safari) and test
6) change settings in Firefox Nightly and tes

Requirements
------------
1) Build Platforms
   - Windows XP (this is still outstanding, to be done)
   - Windows Vista
   - Windows 7
   - MacOS

2) Build Nightly
  - using Windows 7 environment
  - using MacOS environment

3) Install Nightly on each platform
   Install .DLLs as needed

4) Permute through all configuration settings, fetching multple URLs and multiple domains.
Status: ASSIGNED → UNCONFIRMED
Ever confirmed: false
Final status:

Windows XP, with current Nightly, 20.0a1 works the same as FF under Vista and Win7. It appears that the previously mentioned changes have fixed this problem along the way.
My tests definitely show that this is no longer a problem. --> RESOLVED.
Status: UNCONFIRMED → RESOLVED
Closed: 11 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.