Uzyskiwanie 413 błędów w usługach IIS przy jednoczesnych sesjach przy użyciu tego samego certyfikatu klienta HTTPS

Mam następujący problem.

Hostuję aplikację WCF na IIS 8, która akceptujetylko Żądania HTTPS z certyfikatami klienta. Ta usługa akceptuje komunikaty POST, które mogą mieć różny rozmiar (od kilku bajtów do 1 GB) i są odbierane równolegle przez większość czasu.

Klienci otrzymują zbyt dużą jednostkę żądania 413 w następującym przypadku:

Gdy otwartych jest wiele połączeń za pomocąpodobnie wysyłany jest certyfikat klienta i wiele małych plików. W tym przypadku jedno żądanie powiedzie się i wszystkie inne zawiodą z błędem 413.

Problem można rozwiązać, ustawiającuploadReadAheadSize wartość do większej wartości niż suma wszystkich rozmiarów połączeń równoległych wsystem.webServer/serverRuntime sekcja konfiguracji, ale powoduje to, że serwer przydziela całą ilość pamięci dla bufora odczytu z wyprzedzeniem dla każdego wywołania, co powoduje, że w przypadku wielu równoczesnych połączeń serwer traci pamięć.

Moja konfiguracjaPrace jeśli połączenia są wykonywaneróżne certyfikaty klienta lub w przypadku przesyłania jednego dużego pliku.

Przeczytałem, że w IIS 6 była możliwość ustawieniaSSLAlwaysNegoClientCert w konfiguracji naprawić podobny błąd. próbowałemobejścia aby ustawić tę wartość, ale nie powiodło się przy użyciu IIS 8.0. Próbowałem także wyłączyć pamięć podręczną klienta SSL, aby wyłączyć wznawianie sesji SSL, ale to również nie rozwiązało mojego problemu.

Co może powodować błędy 413? Czy jest jakiś sposób, aby włączyć wiele równoległych wysyłek z certyfikatem klienta na ten sam serwer bez korzystania z całej pamięci serwera.

questionAnswers(1)

yourAnswerToTheQuestion