Apache Bench : 동시성 수준과 직접 관련된 SSL 핸드 셰이크 실패


12

ab에서 몇 가지 테스트를 실행했으며 155 이상의 동시성 수준을 사용하면 다음과 같은 결과가 나타납니다.

SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
SSL handshake failed (5).
Completed 100 requests
Completed 200 requests
Finished 200 requests

요청은 여전히 ​​성공합니다.

Concurrency Level:      200
Time taken for tests:   14.481 seconds  
Complete requests:      200
Failed requests:        0

나는 그것을 여러 번 테스트했으며 동시성이 155를 초과하면 SSL 핸드 셰이크가 실패합니다.

답변:


9

SSL 오류로 인해 일반적으로 연결이 실패하거나 중단되면 SSL 핸드 셰이크에 실패 할 수 있습니다. 사용 가능한 엔트로피 부족으로 시간이 초과되면 실패 할 수도 있습니다.

서버를 너무 세게 망치는 것일 수 있습니다. 정확히 무엇이 실패하는지 결정하기에는 여기에 충분한 정보가 없습니다.

이 시험에서 성공의 정의는 이상하고 의심 스럽다. 그러나 메모리가 제공되면 오류 코드 5는 소켓이 닫혀 있음을 나타냅니다. 아마도 SSL 협상이 시작된 후가 아니라 연결이 성공한 것으로 판단됩니까?


1
오류 5는 IO 오류 여야합니다. 그러나 openssl 소켓은 일반적으로 일반 소켓 위에 구축되므로 이것이 실제로 무엇을 의미 하는지 모릅니다 . 일반 소켓은 IO 오류를 생성하지 않습니다.
Matthew Ife

그들은 원격으로 닫힐 때합니까, 그렇지 않습니까?
Falcon Momot

아니요, 쓰기는 EPIPE를 생성하고 읽기는 0 바이트를 반환합니다.
Matthew Ife

또한 이것이 strerror ()로 전달 될 수있는 것과 동일한 도메인에있는 오류 코드인지 확실하지 않지만 소스를 보지 않았으므로 실제로 알 수 없습니다.
Falcon Momot
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.