tl; dr 저속 전송 링크에서는 압축하고 그렇지 않으면 압축하지 마십시오. 다음은 압축 속도 테스트, 대역폭 변환 도구 및 일부 정보에 대한 링크입니다.
압축을 사용 rsync
하면 중간 링크가 "충분히 느리다"(즉, 한쪽 끝의 기계가 통신 링크를 포화시킬 정도로 압축 된 데이터 스트림을 빠르게 생성 할 수있는 경우)하는 경우에만 속도가 빨라집니다.
그렇다면 압축을 사용하여 얻을 수있는 가장 느린 링크는 무엇입니까?
다음은 매우 비과학적인 테스트로, gzip
데이터를 얼마나 빨리 생성 할 수 있는지, 그리고 일반적으로 네트워크 대량 전송을 압축해야하는지 여부를 나타냅니다.
입력 데이터는 테스트 결과를 크게 변경합니다 . 컴퓨터에서 압축되지 않은 (!) 일반 파일을 사용하고 있습니다.이 파일은 일반적으로 네트워크를 통해 전송되는 데이터 유형을 나타낼 수 있습니다. 사용 /dev/zero
(무제한 제로를 생산하는) 제로의 흐름이 매우 쉽게 압축하는 것 같은 오해의 소지 및 사용하는 것 /dev/random
반대 이유에 대해 오해의 소지가 될 것이다. 대신 내 $HOME/local
디렉토리 의 tar 파일을 사용하는데 여기에는 내에 설치된 소프트웨어가 포함되어 있습니다 $HOME
. 파일 자체는 압축되지 않았지만 이진 파일, 작은 압축 파일 및 소스 / 텍스트 파일이 혼합되어 있으며 기본 설정으로 압축하면 gzip
64 MiB에서 22 MiB로 67 % 줄어 듭니다.
$ gzip -c local.tar | dd of=/dev/null
43092+4 records in
43093+1 records out
22063854 bytes transferred in 2.819 secs (7825741 bytes/sec)
나는 평균이 무엇인지에 대한 느낌을 얻기 위해이 작업을 몇 번 수행하며 약 7800000 바이트 / 초에 이릅니다.
그런 다음 네트워크 대역폭 계산기 를 사용하여 이것이 무엇으로 변환되는지 확인합니다. 이 특별한 경우에는 "100Mb 이더넷"유선 링크의 용량 미만으로 "VDSL 다운로드"인터넷 업 링크보다 훨씬 빠르며 "802.11 [a / g]"무선 링크보다 약간 빠릅니다. "Bluetooth v3.0"(더 느림)과 "USB 2.0"(더 빠름) 사이.
즉, 압축 속도 보다 빠른 속도로 압축을 사용하는 경우 압축시 파일 전송 속도가 느려질 수 있습니다.
rsync
사용하지 않을 수도 있습니다 정확한 로 같은 라이브러리를 gzip
압축을 할 수 있지만, 상기 적어도 당신에게 힌트를 조금 줄 것이다.
rsync
아시다시피 압축 이상의 기능을 수행하며 실제 속도 증가는 변경된 [비트 수] 파일 만 전송함으로써 발생합니다.
내 경험상, rsync
네트워크의 대역폭이 증가함에 따라 (내 위치) 지난 10 년 동안 압축 기능을 사용하는 것이 점점 덜 유익 해졌습니다.
증분 백업을 수행하려면 --link-dest
옵션을 조사하는 것이 좋습니다 (이것은 전송되는 것과 관련이 있으며 대상이 대상에 저장되는 방법과는 관련이 없습니다). 또한 SSH를 통해 수행하는 경우 SSH 연결이 이미 압축되어 있으면 압축을 사용하지 않고 위와 같은 이유로 느린 링크를 통해 SSH 연결 (터널 등) 만 압축하십시오.