Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Protokol HTTP/2
- Mengonfigurasi apakah dukungan untuk protokol HTTP/2 diaktifkan.
- Jika Anda menghilangkan pengaturan ini, dukungan untuk protokol HTTP/2 diaktifkan. Ini sama dengan mengatur nilai ke
true.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.Http.SocketsHttpHandler.Http2Support |
false - dinonaktifkantrue - diaktifkan |
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP2SUPPORT |
0 - dinonaktifkan1 - diaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Protokol HTTP/3
- Mulai dari .NET 7, HTTP/3 diaktifkan secara default.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.SocketsHttpHandler.Http3Support |
false -Tamu penyandang cacat true - diaktifkan |
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP3SUPPORT |
0 - dinonaktifkan1 - diaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Pembuatan SPN di HttpClient (.NET 6 dan yang lebih baru)
- Berdampak pada pembuatan nama perwakilan layanan (SPN) untuk autentikasi Kerberos dan NTLM saat
Hostheader hilang dan target tidak berjalan pada port default. - .NET 6 dan versi yang lebih baru tidak menyertakan port dalam SPN secara default. Namun, perilaku dapat dikonfigurasi.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.Http.UsePortInSpn |
true - sertakan nomor port di SPN, misalnya, HTTP/host:portfalse - jangan sertakan port di SPN, misalnya, HTTP/host |
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_USEPORTINSPN |
1 - sertakan nomor port di SPN, misalnya, HTTP/host:port0 - jangan sertakan port di SPN, misalnya, HTTP/host |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Penskalakan jendela dinamis HTTP/2
- Mengonfigurasi apakah algoritma penskalaan jendela dinamis HTTP/2 dinonaktifkan untuk kontrol alur. Algoritma diaktifkan secara default.
- Saat diatur ke
true, algoritma penskalakan jendela dinamis dinonaktifkan.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.SocketsHttpHandler.Http2FlowControl.DisableDynamicWindowSizing |
false - diaktifkan (default)true - dinonaktifkan |
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP2FLOWCONTROL_DISABLEDYNAMICWINDOWSIZING |
0 - diaktifkan (default)1 - dinonaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Ukuran jendela penerima aliran HTTP/2
- Mengonfigurasi ukuran maksimum jendela penerima aliran HTTP/2.
- Men-default-kan ke 16 MB. Nilai di bawah 65.535 dijepit menjadi 65.535. Tidak ada batas atas yang keras, tetapi meningkatkan pengaturan ini di luar default hanya bermanfaat pada jaringan yang merupakan throughput tinggi dan latensi tinggi.
| Nama setelan | Nilai | |
|---|---|---|
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_FLOWCONTROL_MAXSTREAMWINDOWSIZE |
Bilangan bulat (default: 16 MB; minimum: 65.535) |
Ambang batas skala jendela aliran HTTP/2
- Mengonfigurasi pengali yang mengontrol seberapa agresif jendela penerima aliran HTTP/2 tumbuh. Nilai yang lebih tinggi menghasilkan pertumbuhan jendela yang lebih konservatif, yang mengurangi throughput puncak.
- Default ke 1.0. Nilai di bawah 0 diatur ulang ke default. Tidak ada batas atas yang keras, tetapi nilai jauh di atas throughput per permintaan batas default secara progresif.
Nota
Pengaturan ini ditujukan untuk diagnostik tingkat lanjut dan penyetelan internal. Sebagian besar pengembang tidak perlu mengubahnya.
| Nama setelan | Nilai | |
|---|---|---|
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_FLOWCONTROL_STREAMWINDOWSCALETHRESHOLDMULTIPLIER |
Float (default: 1.0; minimum: 0) |
Penyebaran aktivitas HTTP
Mengonfigurasi apakah penyebaran aktivitas pelacakan terdistribusi diaktifkan untuk HttpClient. Saat diaktifkan, permintaan HTTP keluar menyebarluaskan header konteks pelacakan (seperti traceparent) untuk alat pelacakan terdistribusi seperti OpenTelemetry.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.Http.EnableActivityPropagation |
true - diaktifkan (default)false - dinonaktifkan |
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_ENABLEACTIVITYPROPAGATION |
1 - diaktifkan (default)0 - dinonaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Batas waktu koneksi tertunda pada penyelesaian permintaan
Mengonfigurasi batas waktu (dalam milidetik) untuk menyelesaikan upaya koneksi yang tertunda setelah permintaan HTTP dimulai selesai. Ketika koneksi masih dibuat setelah permintaan selesai, batas waktu ini menentukan berapa lama untuk menunggu sebelum meninggalkan upaya koneksi.
- Default ke
5000(5 detik). - Atur ke
-1untuk menunggu tanpa batas waktu hingga koneksi selesai. - Atur ke
0untuk segera membatalkan koneksi yang tertunda saat permintaan selesai. - Tidak ada batas atas yang keras, tetapi nilai yang sangat besar tidak praktis.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.SocketsHttpHandler.PendingConnectionTimeoutOnRequestCompletion |
Bilangan bulat (default: 5000) |
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_PENDINGCONNECTIONTIMEOUTONREQUESTCOMPLETION |
Bilangan bulat (default: 5000) |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Pra-autentikasi proksi
Saat diaktifkan, SocketsHttpHandler secara proaktif mengirim Basic kredensial autentikasi proksi pada permintaan pertama alih-alih menunggu 407 respons tantangan dari proksi. Ini berguna untuk proksi yang tidak mengirim 407 respons tantangan.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.Http.SocketsHttpHandler.ProxyPreAuthenticate |
false - dinonaktifkan (default)true - diaktifkan |
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_PROXYPREAUTHENTICATE |
0 - dinonaktifkan (default)1 - diaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Koneksi maksimum per server
Mengonfigurasi jumlah maksimum koneksi TCP simultan yang SocketsHttpHandler terbuka ke satu server. Handler mengabaikan nilai kurang dari 1 dan menggunakan default.
- Default ke tidak terbatas (
int.MaxValue).
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.SocketsHttpHandler.MaxConnectionsPerServer |
Bilangan bulat (default: tidak terbatas) |
| Variabel lingkungan | DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_MAXCONNECTIONSPERSERVER |
Bilangan bulat (default: tidak terbatas) |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Penyelesaian sebaris soket
Mengonfigurasi apakah kelanjutan soket diizinkan untuk berjalan pada utas peristiwa alih-alih dikirim ke System.Threading.ThreadPool. Mengaktifkan pengaturan ini dapat meningkatkan performa dalam beberapa skenario. Namun, itu mungkin menurunkan performa jika pekerjaan mahal memegang utas I/O lebih lama dari yang diperlukan.
Nota
Uji untuk memastikan mengaktifkan pengaturan ini membantu performa dalam skenario spesifik Anda.
| Nama setelan | Nilai | |
|---|---|---|
| Variabel lingkungan | DOTNET_SYSTEM_NET_SOCKETS_INLINE_COMPLETIONS |
0 - dinonaktifkan (default)1 - diaktifkan |
Jumlah utas soket
Mengonfigurasi jumlah utas yang digunakan untuk I/O soket. Ketika tidak ditimpa, nilai dihitung berdasarkan jumlah prosesor dan arsitektur. Nilai praktis berada dalam rentang [1, ProcessorCount]. Nilai di luar rentang ini tidak ditolak tetapi tidak mungkin meningkatkan performa.
Nota
Pengaturan ini ditujukan untuk skenario beban ekstrem. Sebagian besar pengembang tidak perlu mengubahnya.
| Nama setelan | Nilai | |
|---|---|---|
| Variabel lingkungan | DOTNET_SYSTEM_NET_SOCKETS_THREAD_COUNT |
Integer |
IPv6
Mengonfigurasi apakah Protokol Internet versi 6 (IPv6) dinonaktifkan.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.DisableIPv6 |
false - diaktifkan (default)true - dinonaktifkan |
| Variabel lingkungan | DOTNET_SYSTEM_NET_DISABLEIPV6 |
0 - diaktifkan (default)1 - dinonaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Dimulainya kembali sesi TLS
Mengontrol apakah dimulainya kembali sesi TLS menonaktifkan dimulainya kembali sesi TLS untuk SslStream. Dimulainya kembali sesi memungkinkan koneksi ulang TLS untuk melewati jabat tangan penuh dengan menggunakan kembali parameter sesi yang dinegosiasikan sebelumnya, yang mengurangi latensi.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.Security.DisableTlsResume |
false - diaktifkan (default)true - dinonaktifkan |
| Variabel lingkungan | DOTNET_SYSTEM_NET_SECURITY_DISABLETLSRESUME |
0 - diaktifkan (default)1 - dinonaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Unduhan AIA server
Saat diaktifkan, klien TLS secara otomatis mengunduh sertifikat perantara dari URL ekstensi Authority Information Access (AIA) dalam sertifikat server. Ini memungkinkan klien untuk membangun rantai sertifikat lengkap bahkan ketika server tidak mengirim rantai penuh.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.Security.EnableServerAiaDownloads |
false - dinonaktifkan (default)true - diaktifkan |
| Variabel lingkungan | DOTNET_SYSTEM_NET_SECURITY_ENABLESERVERAIADOWNLOADS |
0 - dinonaktifkan (default)1 - diaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Penembolokan konfigurasi QUIC
Menonaktifkan penembolokan objek konfigurasi MsQuic. Saat diaktifkan (default), sistem menyimpan dan menggunakan kembali objek konfigurasi di seluruh koneksi, yang mengurangi overhead penyiapan TLS dan QUIC untuk koneksi berulang dengan parameter yang sama.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.Quic.DisableConfigurationCache |
false - penembolokan diaktifkan (default)true - penembolokan dinonaktifkan |
| Variabel lingkungan | DOTNET_SYSTEM_NET_QUIC_DISABLE_CONFIGURATION_CACHE |
0 - penembolokan diaktifkan (default)1 - penembolokan dinonaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
MsQuic lokal aplikasi (Windows)
Ketika diaktifkan, implementasi QUIC menggunakan pustaka MsQuic dari direktori aplikasi alih-alih pustaka yang disediakan sistem yang dibundel dengan rakitan .NET.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.Quic.AppLocalMsQuic |
false - gunakan sistem MsQuic (default)true - gunakan MsQuic lokal aplikasi |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.
Buffering respons kernel HttpListener (Windows)
Saat diaktifkan, HttpListener buffer menanggapi data di kernel melalui HTTP.sys. Buffering kernel dapat secara signifikan meningkatkan throughput melalui koneksi latensi tinggi untuk aplikasi yang menggunakan I/O sinkron atau I/O asinkron dengan paling banyak satu tulisan yang luar biasa pada satu waktu. Jangan aktifkan pengaturan ini untuk aplikasi dengan beberapa penulisan yang luar biasa bersamaan.
Nota
Mengaktifkan buffering respons kernel dapat mengakibatkan penggunaan CPU dan memori yang lebih tinggi dengan HTTP.sys.
| Nama setelan | Nilai | |
|---|---|---|
| runtimeconfig.json | System.Net.HttpListener.EnableKernelResponseBuffering |
false - dinonaktifkan (default)true - diaktifkan |
Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya.
Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.