Obecnie używam Windowsa, z Chrome 27 na kanale deweloperskim, i mam, jak sądzę, niezwykle dużą liczbę odsłuchowych połączeń związanych z tym procesem.
Następujące polecenie zwraca 268 nasłuchujących portów:
netstat -aon|find /i /c "11692"
( gdzie w tym przypadku głównym procesem chrome jest 11692 )
Tak wyglądają niektóre porty z 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
Może brakuje mi czegoś w czytaniu netstat, ale wydaje się to niezwykle wysokie.
To jest powtarzający się problem. Aby wywołać ogromną liczbę portów nasłuchujących, wystarczy uruchomić Chrome. Ponadto po zamknięciu przeglądarki Chrome po zamknięciu przeglądarki nadal działa co najmniej jeden proces i wydaje się on działać w nieskończoność ( nie jest to proces związany z dużą liczbą otwartych portów - a przynajmniej nie sam - ponieważ porty znikają po zamknięciu przeglądarki ).
Czy ktoś wie:
- Jeśli to jest normalne?
- Jeśli to nie jest normalne, co może to wyjaśnić?
- Jak mogę dowiedzieć się więcej o tym, co się właściwie dzieje?
Mam zainstalowany Wireshark, ale zawsze zdaje się to zakłócać moje zrozumienie i jeszcze nie miałem ochoty próbować go pogmatwać. Ponadto dziennik zdarzeń systemu Windows niczego nie ujawnia.
Pamiętaj, że nie jest to duplikat pytania. Dlaczego Google potrzebuje tak wielu portów otwartych? ponieważ porty te nie są przeznaczone ani nie są powiązane z żadnymi stronami internetowymi.
Z góry dziękuję.
Odpowiedzi:
Asynchroniczny DNS w Chrome, przeczytaj o nim więcej w The Chromium Projects
Krótko mówiąc: Chrome domyślnie korzysta z macierzystych synchronicznych rozdzielczości DNS systemu Windows, co oznacza, że musi czekać na każdą rozdzielczość kolejno, niezależnie od liczby załadowanych jednocześnie kart, co spowoduje zauważalne opóźnienie w ich ładowaniu w zależności od kolejności, w której rozwiązują nowe zastępy niebieskie. Proponowanym rozwiązaniem było uczynienie tego komponentu asynchronicznym, ponieważ ten Chrome musiał ominąć natywny komponent DNS systemu Windows, dodać jeden z własnych, a tym samym otworzyć w razie potrzeby kilka dodatkowych portów UDP.
Takie zachowanie, w głównym pytaniu, wynika z tego, że komponent jest na etapie opracowywania, a zatem będzie wyglądał tak, będzie miał wiele połączeń, będzie nieograniczony i marnuje zasoby. Działo się tak tylko wtedy, gdy użytkownik ręcznie zmienił flagę w Chrome, aby aktywować tę funkcję, zwykle zarezerwowaną dla programistów lub współpracowników. Zobacz „Przestarzała odpowiedź”, aby uzyskać wyjaśnienie, jak uzyskać dostęp do starszych wersji Chrome.
W przypadku nowszych wersji Chrome mogę powiedzieć, że w wersji v43 to zachowanie zostało naprawione, a teraz używa mniej portów UDP w zależności od liczby nieznanych hostów, które musi rozwiązać, w przeciwnym razie będzie korzystał z buforowanych rozdzielczości i będzie miał mniej otwartych portów.
O ile mi wiadomo, obecne wersje Chrome nie mają flagi, aby ją włączyć, istnieje i można ją włączyć za pomocą przełącznika na chrome.exe. Domyślnie jest wyłączone .
Edytuj skróty Chrome i dodaj --enable-async-dns po celu chrome.exe " , rozdziel je spacją. W Windows 7, aby przypiąć skrót, kliknij prawym przyciskiem myszy pinezkę, w menu kafelkowym kliknij prawym przyciskiem myszy skrót Google Chrome nad opcją Odepnij ten program ... i uzyskaj dostęp do jego właściwości, edytuj tam Cel.
Aby dowiedzieć się, czy włączony jest asynchroniczny DNS, przejdź do chrome: // net-internals / # dns i powinna istnieć lista o nazwie Wewnętrzny klient DNS włączony: prawda lub fałsz
Przestarzała odpowiedź (opcja istnieje w starszych wersjach, około 27):
Wpisz to w pasku adresu przeglądarki Google Chrome:
Przewiń listę i upewnij się, że „ Wbudowany asynchroniczny DNS ” jest wyłączony.
źródło