Considerazioni sulla programmazione winsock

Windows Sockets 2 estende la funzionalità di Windows Sockets 1.1 in diverse aree. La tabella seguente riepiloga alcune delle principali modifiche apportate alle funzionalità.

Funzionalità Descrizione
Architettura di Windows Sockets 2 Descrizione dell'architettura di Windows Sockets 2.
Handle socket Un handle socket può essere facoltativamente un handle di file in Windows Sockets 2. È possibile usare handle socket con funzioni di I/O standard dei file di Windows.
Accesso simultaneo a più protocolli di trasporto Consente a un'applicazione di usare l'interfaccia socket familiare per ottenere l'accesso simultaneo a un certo numero di protocolli di trasporto installati.
Risoluzione dei nomi indipendente dal protocollo Include un set standardizzato di funzioni per l'esecuzione di query e l'uso di una miriade di domini di risoluzione dei nomi esistenti oggi (ad esempio DNS, SAP e X.500).
Multicast indipendente dal protocollo e multipoint Le applicazioni individuano il tipo di funzionalità multipoint o multicast offerte da un trasporto e usano queste strutture in modo generico.
I/O sovrapposto Incorpora il paradigma sovrapposto per l'I/O del socket seguendo il modello stabilito negli ambienti Windows.
I/O a dispersione/raccolta Incorpora le funzionalità di dispersione/raccolta con il paradigma sovrapposto per l'I/O del socket, seguendo il modello stabilito negli ambienti Windows.
Qualità del servizio (QoS) Stabilisce convenzioni usate da applicazioni per negoziare i livelli di servizio necessari per parametri quali larghezza di banda e latenza. Altri miglioramenti correlati a QoS includono meccanismi per le estensioni Quality of Service specifiche della rete.
Meccanismo di estensione specifico del provider La funzione WSAIoctl consente ai provider di servizi di offrire estensioni di funzionalità specifiche del provider.
Socket condivisi La funzione WSADuplicateSocket viene introdotta per abilitare la condivisione dei socket tra i processi.
Installazione della connessione e disinstallazione Un'applicazione può ottenere informazioni sul chiamante, ad esempio l'identificatore del chiamante e la qualità del servizio, prima di decidere se accettare una richiesta di connessione in ingresso. È anche possibile (per i protocolli che supportano questo) scambiare i dati utente tra gli endpoint in fase di disinstallazione della connessione.
Arresto normale, opzioni Linger e chiusura socket Un'applicazione include diverse opzioni per arrestare una connessione socket (sequenza di arresto).
Dati fuori banda indipendenti dal protocollo L'astrazione del socket di flusso include la nozione di dati fuori banda (OOB).
Funzionalità di debug e traccia Windows Sockets 2 supporta una versione appositamente concepita del Ws2_32.dll e una DLL di debug/traccia separata.
Problemi di compatibilità di Windows Sockets Windows Sockets 2 continua a supportare tutta la semantica e le chiamate di funzione di Windows Sockets 1.1, ad eccezione di quelle che gestiscono pseudo-blocco.
Gestione degli errori winsock Modalità di recupero e gestione degli errori Winsock da parte di un'applicazione.