로컬 네트워크를 통한 SCP 전송이 8MB로 제한되는 이유는 무엇입니까?

로컬 네트워크를 통한 SCP 전송이 8MB로 제한되는 이유는 무엇입니까?

로컬 네트워크를 통해 한 컴퓨터에서 다른 컴퓨터로 파일을 전송할 때 scp약 8MB의 제한이 있는 이유는 무엇입니까? 수백 GB의 데이터(영화 등)를 전송 중이었고 다음 명령을 실행했습니다.

scp -rv ../../cygdrive/e/plex [email protected]:/home/caleb/Desktop

이것은 내 Windows 상자에서 내 우분투 상자로 전송됩니다. 거의 모든 파일은 약 8MB/s로 제한됩니다.

Justified Season 2 Episode 10 - Debts and Accounts.avi                                                                              100%  350MB   7.8MB/s   00:45
Sending file modes: C0050 367218038 Justified Season 2 Episode 11 - Full Commitment.avi
Sink: C0050 367218038 Justified Season 2 Episode 11 - Full Commitment.avi
Justified Season 2 Episode 11 - Full Commitment.avi                                                                                 100%  350MB   7.8MB/s   00:45
Sending file modes: C0050 367451326 Justified Season 2 Episode 12 - Reckoning.avi
Sink: C0050 367451326 Justified Season 2 Episode 12 - Reckoning.avi
Justified Season 2 Episode 12 - Reckoning.avi                                                                                       100%  350MB   7.8MB/s   00:45
Sending file modes: C0050 367779546 Justified Season 2 Episode 13 - Bloody Harlan.avi
Sink: C0050 367779546 Justified Season 2 Episode 13 - Bloody Harlan.avi
Justified Season 2 Episode 13 - Bloody Harlan.avi 

나는 이것이 LAN을 통해 이루어지고 두 컴퓨터 모두 내 라우터의 1000Mb/s(1Gb) 스위치에 고정 배선되어 있다고 100% 확신합니다. 파일이 100MB/s+로 점프하는 경우는 거의 없지만 거의 모든 파일에 위 제한이 적용됩니다.

내가 뭐 놓친 거 없니? 어떤 다른 문제 해결 단계를 수행할 수 있나요?

답변1

먼저 Windows 또는 Ubuntu에서 스토리지 성능 제한에 도달했는지 확인해야 합니다. E:Windows에 USB로 연결된 드라이브나 메모리 카드가 있으면 8MB/s가 가능합니다 .

그렇지 않으면 SSH 암호화가 병목 현상을 일으킬 수 있습니다. 가벼운 비밀번호(예 arcfour: .

scp -o Cipher=arcfour -rv /cygdrive/e/plex [email protected]:/home/caleb/Desktop

Cygwin 바이너리 오버헤드의 영향을 받을 수 있습니다. 당신은 사용하고 싶을 수도 있습니다WinSCP더 나은 성능을 위해.

또는 Ubuntu 호스트에서 Samba 공유를 설정할 수 있습니다. SMB는 SCP보다 적은 오버헤드로 LAN에서 실제 회선 속도에 더 가까워질 수 있습니다.

답변2

실제 속도는 8MB/sx 바이트당 8비트 = 64Mb/s(초당 메가비트)입니다. 이는 이론상 최대치의 약 64%에 해당합니다. 나는 OS 오버헤드, TCP/IP ACK 등에 대해 별로 놀라지 않습니다. 이전 팁은 조금 더 높은 수준을 얻는 데 도움이 될 수 있지만 기가비트 이더넷을 사용하지 않는 한 약 12MB/s 이상을 달성할 수 없습니다.

답변3

메가비트 단위의 네트워크 링크 속도조금초당 메가바이트가 아니라 초당 메가바이트입니다. "100Mb/s" 네트워크( b소문자여야 함)는 초당 100MB를 전송할 수 있습니다. 다음 속도 향상은 "1Gb/s" 또는 "기가비트"라고 하는 10배입니다.

원시 네트워크 속도는 패킷 헤더에 약간의 오버헤드가 있기 때문에 애플리케이션 속도보다 빠릅니다. 이더넷 패킷의 최대 크기는 1500바이트이므로 최대 TCP 패킷은 1448바이트(IP 헤더의 경우 20바이트, TCP 헤더의 경우 32바이트)입니다. SSH가 얼마나 많은 오버헤드를 추가하는지 정확히 알지 못하지만 적어도 일부 프로토콜 헤더와 MAC(20 또는 32바이트)을 허용해야 하므로 최소 48바이트가 됩니다. 1500바이트 중 1400바이트입니다. 수신자가 TCP ACK 메시지(66바이트)를 다시 보낼 수 있는 공간을 추가하면 이를 1334/1500으로 줄입니다. 100Mb/s = 12.5MB/s이면 데이터 속도는 11.1MB/s입니다.

11.1MB/s는 8MB/s보다 빠르지만 그다지 빠르지는 않습니다. 이더넷 재전송은 피할 수 없는 오버헤드(위에서 고려하지 않은 부분)와 라우터에 약간의 오버헤드를 발생시킵니다. 달성 가능한 최대 속도인 8MB/s는 합리적인 것으로 보입니다.

홈 라우터 속도는 일반적으로 100Mb/s로 제한됩니다. 기가비트 라우터는 더 비쌉니다. 그러나 최근 가정용 컴퓨터의 네트워크 카드는 기가비트 네트워킹을 지원하는 경우가 많습니다. 기가비트 이더넷 케이블(가장 저렴한 이더넷 케이블의 정격은 100Mb/s)이 있고 두 대의 컴퓨터를 직접 연결하는 경우 연결 속도가 10배 더 빨라질 수 있습니다. 를 실행하여 네트워크 카드가 지원하는 속도를 확인할 수 있습니다 /sbin/ethtool eth0. "100baseT"(100Mb/s) 외에 "1000baseT"(기가비트)에 대해 "링크 모드"를 찾으십시오.

관련 정보