2009-03-31 13 views
9

Quanti socket possono essere creati da una porta?Quanti socket possono essere creati da una porta?

+0

o si dovrebbe probabilmente guardare http://stackoverflow.com/questions/651665/how-many-socket-connections-possible – jonny

+0

L'uso del termine "listen" è ambiguo, in generale si ascolta su una porta non su una presa . La domanda è: "Quante porte può ascoltare un programma?" o "Quanti socket possono essere creati da una porta (o un set di porte)?" – AnthonyWJones

risposta

5

Questo è un limite del sistema operativo.

Fondamentalmente ogni socket richiede un descrittore di file (in termini Linux/Unix, probabilmente è equivalente in Windows). Il sistema operativo avrà un limite di descrittore del file per processo (ad esempio 250-1000) e questo sarà il limite superiore.

+1

Non necessariamente. Il thread di ascolto può delegare la gestione della connessione a un altro thread e chiudere immediatamente il descrittore di file. Quindi il suo numero massimo di thread aumenta il numero massimo di descrittori di file per thread. – artistoex

+0

@artistoex quale sistema operativo ha un limite di descrittori di file per _thread_ anziché per _process_? – tzot

+0

@tzot Sotto i thread di Linux fondamentalmente i processi _are_. Dai un'occhiata a [clone (2)] (https://linux.die.net/man/2/clone) Per quanto ho capito, ti permette di creare thread che non condividono descrittori di file. – artistoex

8

Dipende dal sistema operativo.

  • Per Windows, cercare here per la voce MaxConnections.

  • Per Linux, vedere here come dice il commento sulla domanda.

2

che sarà governata per il numero di porte sul lato client disponibili per il processo (che io, quando si apre una connessione a una combinazione host/porta remota, si richiederà anche una porta a vostra fine).

Il totale delle porte lato client (o effimere) sarà reso disponibile per tutti i processi sulla macchina. Quindi dipende da cosa altro è attualmente in esecuzione.

Il numero di porte e la configurazione dipende dal sistema operativo. Solo Google per "numero massimo di porte" più il tuo sistema operativo.

Problemi correlati