Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Protocollo HTTP/2
- Configura se il supporto per il protocollo HTTP/2 è abilitato.
- Se si omette questa impostazione, il supporto per il protocollo HTTP/2 è abilitato. Equivale a impostare il valore su
true.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.Http.SocketsHttpHandler.Http2Support |
false - disabilitatatrue - abilitato |
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP2SUPPORT |
0 - disabilitata1 - abilitato |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Protocollo HTTP/3
- A partire da .NET 7, HTTP/3 è abilitato per impostazione predefinita.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.SocketsHttpHandler.Http3Support |
false -Disabili true - abilitato |
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP3SUPPORT |
0 - disabilitata1 - abilitato |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Creazione del nome SPN in HttpClient (.NET 6 e versioni successive)
- Influisce sulla generazione di nomi dell'entità servizio (SPN) per l'autenticazione Kerberos e NTLM quando
Hostl'intestazione è mancante e la destinazione non è in esecuzione sulla porta predefinita. - .NET 6 e versioni successive non includono la porta nel nome SPN per impostazione predefinita. Tuttavia, il comportamento è configurabile.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.Http.UsePortInSpn |
true - includere il numero di porta nel nome SPN, ad esempio HTTP/host:portfalse - non includere la porta nel nome SPN, ad esempio HTTP/host |
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_USEPORTINSPN |
1 - includere il numero di porta nel nome SPN, ad esempio HTTP/host:port0 - non includere la porta nel nome SPN, ad esempio HTTP/host |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Ridimensionamento delle finestre dinamiche HTTP/2
- Configura se l'algoritmo di ridimensionamento delle finestre dinamiche HTTP/2 è disabilitato per il controllo del flusso. L'algoritmo è abilitato per impostazione predefinita.
- Se impostato su
true, l'algoritmo di ridimensionamento delle finestre dinamiche è disabilitato.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.SocketsHttpHandler.Http2FlowControl.DisableDynamicWindowSizing |
false - abilitato (impostazione predefinita)true - disabilitata |
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP2FLOWCONTROL_DISABLEDYNAMICWINDOWSIZING |
0 - abilitato (impostazione predefinita)1 - disabilitata |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Dimensioni della finestra di ricezione del flusso HTTP/2
- Configura le dimensioni massime della finestra di ricezione del flusso HTTP/2.
- Il valore predefinito è 16 MB. I valori inferiori a 65.535 sono bloccati a 65.535. Non esiste un limite massimo rigido, ma l'aumento di questa impostazione oltre l'impostazione predefinita è utile solo per le reti con velocità effettiva elevata e latenza elevata.
| Nome della impostazione | Valori | |
|---|---|---|
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_FLOWCONTROL_MAXSTREAMWINDOWSIZE |
Numero intero (impostazione predefinita: 16 MB; minimo: 65.535) |
Soglia di scalabilità della finestra di flusso HTTP/2
- Configura il moltiplicatore che controlla l'aumento aggressivo della finestra di ricezione del flusso HTTP/2. I valori più elevati comportano una crescita più conservativa della finestra, riducendo così la velocità effettiva massima.
- Il valore predefinito è 1.0. I valori inferiori a 0 vengono reimpostati sul valore predefinito. Non esiste un limite massimo rigido, ma i valori superano progressivamente la velocità effettiva predefinita per richiesta.
Annotazioni
Questa impostazione è destinata alla diagnostica avanzata e all'ottimizzazione interna. La maggior parte degli sviluppatori non deve modificarla.
| Nome della impostazione | Valori | |
|---|---|---|
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_FLOWCONTROL_STREAMWINDOWSCALETHRESHOLDMULTIPLIER |
Float (impostazione predefinita: 1,0; minimo: 0) |
Propagazione dell'attività HTTP
Configura se la propagazione dell'attività di traccia distribuita è abilitata per HttpClient. Se abilitata, le richieste HTTP in uscita propagano le intestazioni del contesto di traccia (ad esempio traceparent) per strumenti di traccia distribuiti come OpenTelemetry.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.Http.EnableActivityPropagation |
true - abilitato (impostazione predefinita)false - disabilitata |
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_ENABLEACTIVITYPROPAGATION |
1 - abilitato (impostazione predefinita)0 - disabilitata |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Timeout di connessione in sospeso al completamento della richiesta
Configura il timeout (in millisecondi) per il completamento di un tentativo di connessione in sospeso al termine della richiesta HTTP di avvio. Quando una connessione viene ancora stabilita dopo il completamento della richiesta, questo timeout determina quanto tempo attendere prima di abbandonare il tentativo di connessione.
- Il valore predefinito è
5000(5 secondi). - Impostare su per
-1attendere a tempo indeterminato fino al completamento della connessione. - Impostare su
0per annullare la connessione in sospeso immediatamente al termine della richiesta. - Non esiste un limite massimo rigido, ma valori molto grandi sono poco pratici.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.SocketsHttpHandler.PendingConnectionTimeoutOnRequestCompletion |
Integer (impostazione predefinita: 5000) |
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_PENDINGCONNECTIONTIMEOUTONREQUESTCOMPLETION |
Integer (impostazione predefinita: 5000) |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Preautenticazione proxy
Se abilitata, SocketsHttpHandler invia Basic in modo proattivo le credenziali di autenticazione proxy alla prima richiesta invece di attendere una 407 risposta di richiesta dal proxy. Ciò è utile per i proxy che non inviano 407 risposte di richiesta.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.Http.SocketsHttpHandler.ProxyPreAuthenticate |
false - disabilitato (impostazione predefinita)true - abilitato |
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_PROXYPREAUTHENTICATE |
0 - disabilitato (impostazione predefinita)1 - abilitato |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Numero massimo di connessioni per server
Configura il numero massimo di connessioni TCP simultanee che SocketsHttpHandler si apre a un singolo server. Il gestore ignora i valori minori di 1 e usa il valore predefinito.
- Il valore predefinito è illimitato (
int.MaxValue).
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.SocketsHttpHandler.MaxConnectionsPerServer |
Integer (impostazione predefinita: illimitato) |
| Variabile di ambiente | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_MAXCONNECTIONSPERSERVER |
Integer (impostazione predefinita: illimitato) |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Completamenti inline del socket
Configura se le continuazioni socket possono essere eseguite nel thread dell'evento invece di essere inviate a System.Threading.ThreadPool. L'abilitazione di questa impostazione può migliorare le prestazioni in alcuni scenari. Tuttavia, potrebbe peggiorare le prestazioni se il lavoro diSpendioso contiene il thread di I/O per più tempo del necessario.
Annotazioni
Testare per assicurarsi che l'abilitazione di questa impostazione consenta le prestazioni nello scenario specifico.
| Nome della impostazione | Valori | |
|---|---|---|
| Variabile di ambiente | DOTNET_SYSTEM_NET_SOCKETS_INLINE_COMPLETIONS |
0 - disabilitato (impostazione predefinita)1 - abilitato |
Conteggio thread socket
Configura il numero di thread usati per l'I/O socket. Se non ne viene eseguito l'override, il valore viene calcolato in base al numero di processori e all'architettura. I valori pratici si trovano nell'intervallo [1, ProcessorCount]. I valori al di fuori di questo intervallo non vengono rifiutati, ma è improbabile che migliorino le prestazioni.
Annotazioni
Questa impostazione è destinata a scenari di carico estremi. La maggior parte degli sviluppatori non deve modificarla.
| Nome della impostazione | Valori | |
|---|---|---|
| Variabile di ambiente | DOTNET_SYSTEM_NET_SOCKETS_THREAD_COUNT |
Integer |
IPv6
Configura se Internet Protocol versione 6 (IPv6) è disabilitato.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.DisableIPv6 |
false - abilitato (impostazione predefinita)true - disabilitata |
| Variabile di ambiente | DOTNET_SYSTEM_NET_DISABLEIPV6 |
0 - abilitato (impostazione predefinita)1 - disabilitata |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Ripresa della sessione TLS
Controllare se la ripresa della sessione TLS disabilita la ripresa della sessione TLS per SslStream. La ripresa della sessione consente alle riconnessioni TLS di ignorare un handshake completo riutilizzando i parametri di sessione negoziati in precedenza, riducendo la latenza.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.Security.DisableTlsResume |
false - abilitato (impostazione predefinita)true - disabilitata |
| Variabile di ambiente | DOTNET_SYSTEM_NET_SECURITY_DISABLETLSRESUME |
0 - abilitato (impostazione predefinita)1 - disabilitata |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Download aiA del server
Se abilitato, il client TLS scarica automaticamente i certificati intermedi dagli URL dell'estensione AIA (Authority Information Access) nei certificati server. Ciò consente al client di compilare una catena di certificati completa anche quando il server non invia la catena completa.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.Security.EnableServerAiaDownloads |
false - disabilitato (impostazione predefinita)true - abilitato |
| Variabile di ambiente | DOTNET_SYSTEM_NET_SECURITY_ENABLESERVERAIADOWNLOADS |
0 - disabilitato (impostazione predefinita)1 - abilitato |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Memorizzazione nella cache della configurazione QUIC
Disabilita la memorizzazione nella cache degli oggetti di configurazione MsQuic. Se abilitata (impostazione predefinita), il sistema memorizza nella cache e riutilizza gli oggetti di configurazione tra le connessioni, riducendo il sovraccarico della configurazione TLS e QUIC per le connessioni ripetute con gli stessi parametri.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.Quic.DisableConfigurationCache |
false - Memorizzazione nella cache abilitata (impostazione predefinita)true - Memorizzazione nella cache disabilitata |
| Variabile di ambiente | DOTNET_SYSTEM_NET_QUIC_DISABLE_CONFIGURATION_CACHE |
0 - Memorizzazione nella cache abilitata (impostazione predefinita)1 - Memorizzazione nella cache disabilitata |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
MsQuic locale dell'app (Windows)
Se abilitata, l'implementazione QUIC usa la libreria MsQuic dalla directory dell'applicazione anziché la libreria fornita dal sistema in bundle con l'assembly .NET.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.Quic.AppLocalMsQuic |
false - usare MsQuic di sistema (impostazione predefinita)true - usare MsQuic locale dell'app |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.
Buffer delle risposte del kernel HttpListener (Windows)
Se abilitata, HttpListener memorizza nel buffer i dati di risposta nel kernel tramite HTTP.sys. Il buffering del kernel può migliorare significativamente la velocità effettiva rispetto alle connessioni a latenza elevata per le applicazioni che usano operazioni di I/O sincrone o I/O asincrone con al massimo una scrittura in sospeso alla volta. Non abilitare questa impostazione per le applicazioni con più scritture in sospeso simultanee.
Annotazioni
L'abilitazione del buffer delle risposte del kernel può comportare un utilizzo maggiore della CPU e della memoria HTTP.sys.
| Nome della impostazione | Valori | |
|---|---|---|
| runtimeconfig.json | System.Net.HttpListener.EnableKernelResponseBuffering |
false - disabilitato (impostazione predefinita)true - abilitato |
Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.