Jak określić wartość parametru backlog socket listen ()?


Jak określić, czego użyć dla parametru opóźnienia gniazda nasłuchującego? Czy podanie bardzo dużej liczby jest problemem?
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

W języku angielskim jest bardzo długa odpowiedź na to pytanie

Często zadawane pytania dotyczące programisty Winsock
http://tangentsoft.net/wskfaq/ ... og... Zawiera szczegółowe informacje o ustawieniach domyślnych i funkcji dynamicznego opóźnienia dodanej w poprawce NT 4.0.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Wspieram korzystanie z SOMAXCONN, chyba że masz konkretny powód, aby skorzystać z krótkiej kolejki.
Zwróć uwagę, że jeśli w kolejce nie ma miejsca na nowe połączenie, wówczas RST nie zostanie wysłany, co pozwoli klientowi na automatyczne kontynuowanie próby połączenia poprzez retransmisję SYN.
Ponadto argument zaległości może mieć różne znaczenie w różnych implementacjach gniazd.
  • W większości przypadków oznacza to rozmiar półotwartej kolejki połączeń, w niektórych przypadkach rozmiar ukończonej kolejki połączeń.
  • W wielu implementacjach argument zaległości zostanie pomnożony, aby uzyskać inną długość kolejki.
  • Jeśli jest ustawiona zbyt wysoko, wszystkie implementacje i tak automatycznie skracają ją do maksymalnej długości kolejki.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Z

dokumenty
http://msdn.microsoft.com/en-us/library/ms739168(VS.85).aspx
:

Wartość opóźniającej SOMAXCONN jest specjalną stałą, która mówi dostawcy usług bazowych odpowiedzialnym za gniazda s, aby ustawił długość oczekującej kolejki na maksymalną rozsądną wartość.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Jako ostrzeżenie dla każdego używającego boost asio, wartość SOMAXCONN jest używana jako 5 z boostem.

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się