Condividi tramite


Ascolto delle connessioni in una san

Nella figura seguente viene illustrata una panoramica del modo in cui l'opzione Windows Sockets imposta un socket SAN per riconoscere e accodare le richieste di connessione in ingresso da un peer remoto. Gli argomenti che seguono descrivono il processo di ascolto in modo più dettagliato.

Diagramma che mostra il processo di opzione Windows Sockets che imposta un socket SAN per riconoscere e accodare le richieste di connessione in ingresso da un peer remoto.

Quando l'opzione Windows Sockets riceve una chiamata WSPListen avviata da un'applicazione, l'opzione chiama sempre la funzione WSPListen del provider TCP/IP per impostare prima il socket del provider TCP/IP per riconoscere e accodare le richieste di connessione in ingresso. Se il socket dell'applicazione è associato all'indirizzo IP di una scheda di interfaccia di rete SAN o all'indirizzo IP con caratteri jolly, l'opzione usa anche il provider di servizi SAN appropriato per creare e associare un socket aggiuntivo. Per altre informazioni, vedere Creazione e associazione di socket SAN.

Ascolto delle richieste di connessione in ingresso

Dopo aver richiesto a un provider di servizi SAN di creare e associare il socket SAN, il commutatore chiama la funzione WSPListen del provider di servizi SAN per causare l'ascolto del socket SAN per le connessioni in ingresso e per specificare un limite sul numero di richieste di connessione in ingresso che il provider di servizi SAN può accodare.

Configurazione di accettare connessioni in ingresso

L'opzione accetta connessioni in ingresso solo in modalità non sbloccante. L'opzione chiama la funzione WSPEventSelect del provider di servizi SAN per inserire un socket in modalità non sbloccante e per richiedere la notifica degli eventi di connessione in ingresso. In questa chiamata, l'opzione passa il codice FD_ACCEPT e l'oggetto evento da associare a tale codice. Dopo che il provider di servizi SAN riceve una richiesta di connessione sul socket precedentemente stabilito per l'ascolto, il provider di servizi SAN chiama la funzione SetEvent Win32 per segnalare l'oggetto evento associato. L'opzione ascolta gli eventi di connessione in ingresso in un thread dedicato e accetta o rifiuta la connessione dopo che l'oggetto evento viene segnalato. Per altre informazioni, vedere Accettazione delle richieste di connessione.

Indicazione del rifiuto di una richiesta di connessione a un peer remoto

Se una richiesta di connessione arriva e il backlog di richieste di connessione del provider di servizi SAN è completo, il provider di servizi SAN deve indicare immediatamente al peer remoto che rifiuta la richiesta di connessione. In questo caso, il provider di servizi SAN non segnala l'oggetto evento per informare il commutatore di accettare o rifiutare la richiesta di connessione. Il provider di servizi SAN nel peer remoto deve quindi non riuscire l'operazione di connessione avviata da una chiamata WSPConnect con il codice di errore WSAECONNREFUSED.