Linux와 Windows 복제 성능 비교

Linux와 Windows 복제 성능 비교

기존 NAS에서 새 NAS로 파일을 복사하려고 합니다("새"라고 말하지만 새 NAS는 약 8년 정도 되었고 기존 NAS는 약 12년 정도 되었습니다). 둘 다 RAID 디스크를 갖고 있으므로 물리적으로 제거할 수 없습니다. 기존 NAS에는 EMC의 내장형 Busybox Linux가 실행되고 있었습니다. 최신 버전은 방금 재구축되었으며 최신 버전의 데비안을 실행하고 있습니다. 복사할 전체 크기는 약 8TB입니다. 또한 기존 NAS에서 네트워크 이외의 외부 연결은 USB 2.0 커넥터뿐이었고 OS가 이를 지원하는지조차 확신할 수 없기 때문에 외부 디스크에 복사한 다음 새 NAS로 이동하는 것도 마찬가지로 불가능합니다. 옵션이 아닙니다.

어쨌든 rsyncor를 사용하면 rcp약 20MB/초의 복사 속도를 얻을 수 있습니다. 속도 scp가 10MB/초 미만입니다. 또한 파이프를 사용하여 tar한 호스트에서 다른 호스트로 출력을 파이프 하려고 시도했지만 ssh성능이 형편없었습니다. 그러나 Windows 시스템에 두 개의 공유를 마운트하고 한 공유에서 다른 공유로 파일을 복사하면 약 60MB/초를 달성할 수 있었습니다. 모든 속도는 iotop 및/또는 iostat를 사용하여 결정되었습니다. Windows 속도를 기준으로 한 것이 아닙니다.

Linux에서 Linux로 복사하는 속도가 너무 느린 이유는 무엇이며 Windows에서 속도를 높이기 위해 할 수 있는 방법이 있습니까?

ETA: 출력은 다음과 같습니다 ip a(인터페이스 3이 연결 해제됨).

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 10:6f:3f:17:0f:cb brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.227/24 brd 192.168.1.255 scope global dynamic enp3s0
       valid_lft 57093sec preferred_lft 57093sec
3: enp4s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 10:6f:3f:17:0f:ca brd ff:ff:ff:ff:ff:ff

ETA2: 출력이 ethtool좋아 보입니다.

# ethtool enp3s0
Settings for enp3s0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Full 
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Full 
        Advertised pause frame use: No
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: 1000Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: on
        MDI-X: off (auto)
        Supports Wake-on: pumbg
        Wake-on: g
        Current message level: 0x00000007 (7)
                               drv probe link
        Link detected: yes

답변1

scp를 사용한 다음 rsync를 통해 데이터를 마운트 지점에 복사하는 대신 새 NAS에서 이전 NAS로 SMB 공유를 마운트해 보셨나요?

답변2

1Gbps 유선 네트워크에서는이론적 인최대 속도 = 1000mbps / 바이트당 8비트 = 125MB/초. 실제로 제가 경험한 최대 복사 속도는 Windows 팝업당 약 112MB/초였으며 이는 Linux 서버(삼바 서버 실행)에서 Windows 7/10 컴퓨터로 복사하는 것이었습니다.

8TB => 8,000,000MB / 112MB/s = 71,428초 = 문제 없이 19시간 이상 연속 전송이 가능합니다.

이렇게 하면 scpSSH의 오버헤드로 인해 일반적으로 112MB/초 대신 80-90MB/초가 표시됩니다.

Linux에서 Linux로 복사하는 속도가 너무 느린 이유는 무엇이며 Windows에서 속도를 높이기 위해 할 수 있는 방법이 있습니까?

Linux에서 Windows로 다운로드(읽기) 및 Windows에서 Linux로 업로드(쓰기) 시 복사 속도가 112MB/초라고 보고했습니다. 내 Linux 서버(직장)에는 512GB RAM이 있고 디스크 캐시가 있습니다. 이는 주로 디스크가 데이터를 제공할 때까지 기다리는 것을 방지합니다. 특히 시스템에 쓸 때 데이터는 네트워크를 통해 전송되어 RAM에 저장됩니다. 디스크. 하드 드라이브의 일반적인 실제 읽기 속도는 80MB/초 이상인 경우가 많습니다.대개특히 다중 RAID인 경우 큰 영향을 미치지 않지만 단일 하드 드라이브인 경우 데이터를 읽는 데 병목 현상이 발생할 수 있습니다.

기존 NAS에서 NAS로 파일을 복사하려고 합니다.다른 하나

설명된 대로 동일한 네트워크 및 위치에서 복제본에 대해 112MB/초를 볼 수 있는 Synology NAS를 사용한 경험이 있습니다. 때때로 내 NAS가 100MB/초에 가까워지고 때로는 몇 분 만에 하나의 NAS가 이동하는 경우도 있습니다. 약 10GB의 파일은 50MB/초에 불과합니다. NAS 내부에는 여러 사용자 연결이 읽기/쓰기를 할 것으로 예상하여 대역폭을 유지하기 위해 네트워크 전송 속도를 늦추는 다양한 설정이 있을 수 있습니다.

2개의 NAS 간에 복사하는 8TB의 데이터는 단일 파일이 아니므로 수백만 개의 개별 파일을 처리하는 것과 관련된 약간의 오버헤드가 있습니다. 이는 데이터 블록을 로컬에서 100+GB tar 파일로 압축하지 않는 한 방법이 없습니다. 그리고 트랜스퍼하면 이 사람들이 타겟 NAS에 대한 감압 작업을 하게 됩니다.

Linux에서 Linux로 복사해야 하는 이유

당신은 실제로 Linux에서 Linux로 작업을 수행하는 것이 아니라 nas에서 nas로 작업을 수행하고 있습니다.운영 체제각 NAS의 운영 체제, 네트워크 연결 구성 방법, 읽기/쓰기가 가능한 스토리지(디스크) 유형의 성능.

1gbps 유선 네트워크에서 112MB/초에 대한 설명을 바탕으로 Linux에서 Linux 서버(NAS 아님)로의 전송 속도가 동일하다는 것을 알 수 있었습니다. 그러면 scpSSH 오버헤드가 다음과 같은 이유가 됩니다. ~80MB/초로 감소합니다. 수천 개의 작은 파일(10MB 미만) 복사를 시작하면 OS가 스토리지에 관계없이 파일 시스템에서 해당 데이터를 읽은 다음 해당 파일에 기록된 다른 시스템에 모두 다시 복사하기 때문에 많은 오버헤드와 속도 손실이 발생할 수 있습니다. 저장. RAM이 충분한 좋은 NAS는 네트워크를 통해 RAM으로 들어오는 데이터를 버퍼링할 수 있으며, 이 시점에서는 디스크에 대해 수행할 수 있는 지속적인 쓰기 속도가 될 것입니다. 이러한 광고의 수치는 일반적으로 과장된 것으로 생각되며 거의 항상 상황에 따라 다릅니다. 최대 쓰기 속도. NAS에(RAID-0으로) 마운트된 디스크 수로 가능한 최대 읽기/쓰기 수를 알릴 수 있습니다.

온전한 상태를 확인하기 위해 단일 ~2GB 파일과 단일 ~30GB 파일을 전송하고 최대 전송 속도가 얼마인지, 네트워크에서 지속되는지 확인하세요.

답변3

rsync와 scp는 모두 유선으로 전송되는 데이터를 암호화합니다. 보시다시피, 오래된 하드웨어에서는 속도가 약 20MB/s로 제한된다는 것을 알았습니다.

암호화되지 않은 복사본을 사용해 보세요. 예를 들면 다음과 같습니다.

  • 한쪽 끝에서 rsync 서버를 실행하고 rsync:// 프로토콜을 사용합니다.
  • 양쪽에 netcat(또는 nc)을 사용하십시오(테스트되지 않았으며 아마도 잘못된 구문일 수 있음).
    • 원천:tar cf - ... | nc host port
    • 목적지:nc -l port | tar xf -

관련 정보