표준 100Mbit 연결 (~ 10MB / s)과 같이 매우 빠른 네트워크를 통해 한 컴퓨터에서 다른 컴퓨터로 데이터를 보내야한다고 가정 해 봅시다. 내 디스크 드라이브는 표준 HDD이므로 속도는 30MB / s에서 100MB / s 사이입니다. 따라서 데이터를 즉시 압축하면 도움이 될 것 같습니다.
그러나 ... 나는 CPU에 의해 제한되고 싶지 않습니다. CPU를 많이 사용하는 알고리즘을 선택하면 실제로 압축이없는 것보다 전송 속도가 느려집니다.
GZIP 및 BZIP2와 같은 압축기에서는 일반적으로 전체 전송에 대해 압축 강도를 한 번 설정하고 데이터 스트림이 때때로 쉽고 압축하기가 어렵 기 때문에 어려움이 있습니다. 때로는 대역폭이 부족합니다.
현재 CPU / 대역폭에 적응하고 스위트 스폿에 도달하여 전송이 최적이되는 압축 프로그램이 있습니까? 이상적으로는 Linux에 적합하지만 여전히 모든 솔루션에 대해 궁금합니다. GZIP / BZIP2 압축 해 제기와 호환되는 것을보고 싶지만 반드시 그런 것은 아닙니다.
그래서 단순히 전송할 바이트의 양이 아니라 총 전송 시간을 최적화하고 싶습니다.
또한 실시간 압축 풀기가 필요하지 않습니다 ... 실시간 압축이면 충분합니다. 대상 호스트는 나중에 여분의 시간에 데이터를 처리 할 수 있습니다. 나는 이것이 많이 변하지 않는다는 것을 알고 있습니다 (압축은 일반적으로 압축 해제보다 CPU를 많이 사용합니다).하지만이 사실을 사용할 수있는 솔루션이 있다면 더 좋습니다.
다른 데이터를 전송할 때마다 가능한 한 빨리 이러한 일회성 전송을 원합니다. 따라서 더 강한 압축으로 인해 여러 전송을 더 빨리 얻는 데 도움이되지 않습니다.
감사,