В настоящее время я использую коробку Windows, использую Chrome 27 на канале разработчика, и у меня есть то, что я считаю необычно большим количеством прослушивающих подключений, связанных с процессом.
Следующая команда возвращает 268 прослушивающих портов:
netstat -aon|find /i /c "11692"
( где в этом случае 11692 является основным процессом chrome )
Вот как некоторые порты выглядят из netstat:
UDP 0.0.0.0:62483 : 11692
UDP 0.0.0.0:62486 : 11692
UDP 0.0.0.0:62487 : 11692
UDP 0.0.0.0:62488 : 11692
UDP 0.0.0.0:62489 : 11692
UDP 0.0.0.0:62492 : 11692
UDP 0.0.0.0:62493 : 11692
UDP 0.0.0.0:62494 : 11692
UDP 0.0.0.0:62495 : 11692
UDP 0.0.0.0:62496 : 11692
UDP 0.0.0.0:62498 : 11692
UDP 0.0.0.0:62499 : 11692
UDP 0.0.0.0:62500 : 11692
UDP 0.0.0.0:62501 : 11692
UDP 0.0.0.0:62502 : 11692
UDP 0.0.0.0:62503 : 11692
UDP 0.0.0.0:62504 : 11692
UDP 0.0.0.0:62505 : 11692
UDP 0.0.0.0:62506 : 11692
UDP 0.0.0.0:62509 : 11692
UDP 0.0.0.0:62510 : 11692
UDP 0.0.0.0:62511 : 11692
UDP 0.0.0.0:62512 : 11692
UDP 0.0.0.0:62513 : 11692
UDP 0.0.0.0:62541 : 11692
UDP 0.0.0.0:62542 : 11692
UDP 0.0.0.0:62543 : 11692
UDP 0.0.0.0:62544 : 11692
UDP 0.0.0.0:62545 : 11692
UDP 0.0.0.0:62547 : 11692
UDP 0.0.0.0:62786 : 11692
UDP 0.0.0.0:62787 : 11692
UDP 0.0.0.0:62789 : 11692
UDP 0.0.0.0:62790 : 11692
UDP 0.0.0.0:62791 : 11692
UDP 0.0.0.0:62792 : 11692
UDP 0.0.0.0:62793 : 11692
UDP 0.0.0.0:62794 : 11692
UDP 0.0.0.0:62796 : 11692
UDP 0.0.0.0:62797 : 11692
UDP 0.0.0.0:62798 : 11692
UDP 0.0.0.0:62799 : 11692
UDP 0.0.0.0:62800 : 11692
UDP 0.0.0.0:62801 : 11692
UDP 0.0.0.0:62802 : 11692
UDP 0.0.0.0:62803 : 11692
UDP 0.0.0.0:62805 : 11692
UDP 0.0.0.0:62806 : 11692
UDP 0.0.0.0:62807 : 11692
UDP 0.0.0.0:62808 : 11692
UDP 0.0.0.0:62809 : 11692
UDP 0.0.0.0:62810 : 11692
UDP 0.0.0.0:62812 : 11692
UDP 0.0.0.0:62813 : 11692
UDP 0.0.0.0:62814 : 11692
UDP 0.0.0.0:62815 : 11692
UDP 0.0.0.0:62817 : 11692
UDP 0.0.0.0:62818 : 11692
UDP 0.0.0.0:62820 : 11692
UDP 0.0.0.0:62821 : 11692
UDP 0.0.0.0:62822 : 11692
UDP 0.0.0.0:62823 : 11692
UDP 0.0.0.0:62824 : 11692
UDP 0.0.0.0:62825 : 11692
UDP 0.0.0.0:62826 : 11692
UDP 0.0.0.0:62827 : 11692
UDP 0.0.0.0:62828 : 11692
UDP 0.0.0.0:62829 : 11692
UDP 0.0.0.0:62830 : 11692
UDP 0.0.0.0:64681 : 11692
UDP 0.0.0.0:64682 : 11692
UDP 0.0.0.0:64683 : 11692
UDP 0.0.0.0:65017 : 11692
Может быть, я что-то упускаю при чтении netstat, но это кажется необычно высоким.
Это повторная проблема. Единственное, что нужно, чтобы вызвать огромное количество прослушиваний портов, - это запустить Chrome. Кроме того, когда я закрываю Chrome, всегда по крайней мере один процесс все еще работает после того, как я закрываю браузер, и кажется, что он работает бесконечно ( это не процесс, связанный с большим количеством открытых портов - или, по крайней мере, не сам по себе), как порты уходят, когда я закрываю браузер ).
Кто-нибудь знает:
- Если это нормально?
- Если это не нормально, что это может объяснить?
- Как я мог узнать больше информации о том, что на самом деле происходит?
У меня установлен Wireshark, но это, кажется, всегда мешает моему пониманию, и я пока не испытывал желания его обманывать. Кроме того, журнал событий Windows ничего не показывает.
Обратите внимание, что это не дубликат вопроса. Зачем Google так много открытых портов? поскольку эти порты не предназначены и не связаны с какими-либо веб-сайтами вообще.
Заранее спасибо.
источник
Ответы:
Асинхронный DNS в Chrome, подробнее об этом читайте в проектах Chromium
Короче говоря: Chrome по умолчанию использует собственные разрешения синхронного DNS для Windows, что означает, что он должен ждать каждого разрешения последовательно, независимо от того, сколько вкладок одновременно загружается, что добавит заметную задержку к их загрузке в зависимости от порядка, в котором они решают новые. хосты. Предложенное решение состояло в том, чтобы сделать этот компонент асинхронным, так как Chrome должен был обойти собственный компонент DNS Windows, добавить один из его собственных и, таким образом, открыть несколько портов UDP при необходимости.
Такое поведение, в главном вопросе, связано с тем, что компонент находится на стадии разработки и, следовательно, будет выглядеть так, иметь много связей, будучи неограниченным и тратящим ресурсы. Это происходило только в том случае, если пользователь вручную изменил флаг в Chrome, чтобы активировать эту функцию, обычно зарезервированную для разработчиков или участников. См. «Устаревший ответ» для объяснения того, как получить доступ к более старым версиям Chrome.
В более новых версиях Chrome, я могу сказать, что для v43 это поведение было исправлено, и теперь он использует меньше портов UDP в зависимости от количества неизвестных хостов, которые необходимо разрешить, в противном случае он будет использовать кэшированные разрешения и меньше открытых портов.
Насколько я могу судить, в текущих версиях Chrome нет флага для его включения, он существует и может быть включен с помощью переключателя на chrome.exe. По умолчанию он отключен .
Отредактируйте ярлыки Chrome и добавьте --enable-async-dns после цели chrome.exe " , разделите их пробелом. В Windows 7 для закрепленного ярлыка щелкните правой кнопкой мыши на булавке, в меню плиток щелкните правой кнопкой мыши ярлык Google Chrome над опцией Unpin this program ... и откройте ее свойства, отредактируйте Target там.
Чтобы узнать, включен ли асинхронный DNS, зайдите в chrome: // net-internals / # dns, и там должен быть листинг под названием Внутренний DNS-клиент включен: true или false
Устаревший ответ (опция существует в более старых версиях, около 27):
Введите это в адресной строке Google Chrome:
Прокрутите список вниз и убедитесь, что « Встроенный асинхронный DNS » отключен.
источник