현재 quinn 의 tls 옵션 중 암호화 라이브러리 선택의 경우 , rustls 의 feature로 인해 rustls::ClientConfig::builder() 와 rustls::ServerConfig::builder() 호출시 default로 ring을 사용하고 있습니다.
ring vs aws-lc-rs 성능 비교 에서의 밴치마크 결과를 볼때 aws-lc-rs가 handshake시의 속도는 느리나 대량 데이터 송수신의 성능이 더 뛰어납니다.
giganto 특성상 대량 데이터 송수신에 대한 성능이 훨씬 중요하므로 tls 옵션에서의 암호화 라이브러리를 aws-lc-rs로 변경하도록 합니다.
세부 task
rustls dependencies 변경.
ruslts의 ClientConfig, ServerConfig 생성시 aws-lc-rs를 사용하도록 aws_lc_rs::default_provider() 사용.
배경
rustls::ClientConfig::builder()
와rustls::ServerConfig::builder()
호출시 default로 ring을 사용하고 있습니다.세부 task
aws_lc_rs::default_provider()
사용.