Медленное просмотр в Internet Explorer из-за нескольких вызовов функции isInNet

Эта статья поможет устранить проблему, из-за которой браузер Internet Explorer просматривается медленнее, чем ожидалось.

Применимо к:   Internet Explorer 9, Internet Explorer 10
Исходный номер КБ:   3140773

Симптомы

Рассмотрим следующий сценарий.

  • Internet Explorer настроен на использование файла автоматической настройки прокси-сервера (PAC) или WPAD для параметров прокси-сервера.

  • PAC-файл содержит несколько вызовов isInNet() функции, которые похожи на следующие:

    function FindProxyForURL(url, host)
    {
    
        if (isInNet(host, "192.168.3.4","255.255.255.0")) ||
        isInNet(host, "10.10.1.1", "255.255.255.0") ||
        isInNet(host, "72.10.10.10", "255.240.0.0")) ||
        isInNet(host, "172.16.0.0", "255.240.0.0"))
        {
    
            return PROXY <proxyname:PORT>;
    
        }
    }
    

Если в файле PAC есть несколько таких вызовов, Internet Explorer занимает больше времени, чем ожидалось, для просмотра isInNet() веб-страницы.

Причина

Эта проблема возникает из-за того, что Internet Explorer должен внести дополнительные вызовы в подсистему DNS, чтобы определить IP-адрес параметра хоста. Это необходимо для сравнения IP-адреса параметра хоста с диапазоном IP-адресов, предоставленным в вызове isInNet() функции.

Решение

Чтобы предотвратить эти дополнительные вызовы подсистемы DNS каждый раз, когда хост передается вызову функции, необходимо предпринять действия, чтобы разрешить имя хоста на IP-адрес за пределами вызовов, передав IP-адрес вместо имени isInNet() isInNet() хоста.

Для этого измените пример кода в разделе "Признаки" следующим образом:

function FindProxyForURL(url, host)
{
    var resolved_IP = dnsResolve(host);
    if (isInNet(resolved_IP, "192.168.3.4","255.255.255.0")) ||
    isInNet(resolved_IP, "10.10.1.1", "255.255.255.0") ||
    isInNet(resolved_IP, "72.10.10.10", "255.240.0.0")) ||
    isInNet(resolved_IP, "172.16.0.0", "255.240.0.0"))
    {
        return PROXY <proxyname:PORT>;
    }
}

Ссылки

Дополнительные сведения см. в сведениях об оптимизации производительности с помощью сценариев автоматической настройки прокси-сервера (PAC).