매버릭스의 암호화 된 외장 드라이브에 대한 쓰기 속도가 매우 느림


10

매버릭스에서 완전히 암호화 된 USB 플래시 드라이브에 쓰는 것은 매우 느립니다.

테스트에 사용한 드라이브 모델은 Kingston DataTraveler Ultimate 3.0 G3 (64GB)입니다. 암호화 된 드라이브와 암호화되지 않은 드라이브에서 큰 파일을 읽거나 쓰는 방식으로 전송 속도를 테스트했습니다. Mavericks가있는 최신 Macbook과 Mountain Lion이있는 구형 컴퓨터에서 테스트했습니다. 디스크 유틸리티를 사용하여 드라이브를 Mac OS 확장 (저널링) 및 Mac OS 확장 (저널링, 암호화)로 포맷했습니다.

OS X 10.9.2 (13C64)를 실행하는 USB 3.0이 설치된 MacBook Pro (2013)

쓰기 : 86.16MB / 초 (암호화 : 0.62MB / 초)
읽기 : 181.66MB / 초 (암호화 : 151.15MB / 초)

OS X 10.8.5 (12F45)를 실행하는 USB 2.0이 장착 된 MacBook Pro (2007)

쓰기 : 23.57MB / 초 (암호화 : 5.04MB / 초)
읽기 : 36.23MB / 초 (암호화 : 37.87MB / 초)

구형 머신에서 볼 수 있듯이 암호화 된 볼륨에 쓸 때 쓰기 속도는 분명히 떨어지지 만 Mavericks를 실행하는 최신 머신에 비해 여전히 10 배 정도 빠릅니다. 이것이 FileVault 또는 CoreStorage에서 최근에 소개 된 문제 일 수 있습니까?

업데이트 (2014-06-28)

USB 드라이브는 처음부터 하드웨어 결함이있는 것 같습니다. 나는 아직도 기대했던 결과를 제공하지 않는 교체 드라이브 (동일한 모델)를 얻었지만 적어도 2013 MBP의 암호화 된 쓰기 속도는 2007 MBP와 동등합니다.

OS X 10.9.3 (13D65)을 실행하는 USB 3.0이 장착 된 MacBook Pro (2013)

쓰기 : 135.41MB / 초 (암호화
: 9.29MB / 초) 읽기 : 196.22MB / 초 (암호화 : 187.04MB / 초)

OS X 10.8.5 (12F45)를 실행하는 USB 2.0이 장착 된 MacBook Pro (2007)

쓰기 :-MB / 초 (암호화 : 9.39MB / 초)
읽기 :-MB / 초 (암호화 : 37.79MB / 초)

2013 MBP의 USB 드라이브에 대한 암호화 된 쓰기 속도가 일반 쓰기 속도의 10 % 미만인 이유는 여전히 남아 있습니다. 또한 2013 MBP의 내부 SSD에서 FileVault를 활성화하기 전후의 읽기 / 쓰기 속도를 비교 한 결과 속도 저하를 전혀 감지 할 수 없었습니다.


1
와우-정상적인 읽기 / 쓰기 및 암호화 된 쓰기가 좋습니다. 그러나 암호화 된 쓰기는 매우 느립니다. MB / s를 측정하는 도구는 무엇입니까? Blackmagic을 사용하여 이러한 결과를 재현 할 수 있습니까 (MAS에서 무료)
bmike

내가 사용하는 간단한 배쉬 한 라이너를 사용 time, dd하고 awk. Blackmagic은 goo.gl/bn32fC (암호화되지 않은)와 goo.gl/yghyqA (암호화 됨 )와 같은 결과를 제공합니다 .
Stefan Schmidt

나는 읽기의 시간 간격 샘플링 처리량 블랙 매직의보다 짧은 때문에 암호화 된 볼륨에 대한 읽기 속도가 누락 의심
스테판 슈미트

답변:


2

동일한 문제가 있습니다. 플래시 메모리에서 쓰기 작업이 작동하는 방식과 코어 스토리지 (또는 전체 볼륨) 암호화가 작동하는 방식 때문입니다.

첫째, 쓰기 동작 : 휘발성 메모리 (컴퓨터의 메모리에 사용되는 것들) 또는 하드 디스크 (언제든지 비트를 0 또는 1로 쓸 수있는 하드 디스크)와 달리 플래시 메모리에는 쓰기와 삭제라는 두 가지 주요 상태가 있습니다. "쓰기"안에는 0과 1이 있습니다. 플래시 메모리에 써야 할 경우 현재 소거 상태에있는 전체 블록을 써야합니다. OS의 파일 시스템 소프트웨어는 어떤 블록이 사용 가능한지 알 수 있지만 플래시 장치의 컨트롤러 및 스토리지는 그렇지 않습니다. OS가 "버스 연결"SSD를 위해 블록을 사용할 수 있도록 SSD에 알리는 특별한 방법이 고안되었습니다.이를 TRIM이라고합니다. USB 프로토콜 스택은 TRIM을 지원하지 않습니다. 따라서 기본적으로 플래시 메모리는 실제로 지워진 블록이 없을 때까지 계속 채워집니다.이 시점에서 파일 시스템은 블록을 읽어 블록을 지우고 다시 써야합니다. 새 데이터를 병합하고 지우고 다시 작성합니다. 이것이 작은 파일 쓰기 성능이 시간이 지남에 따라 SSD에서 저하되는 이유입니다.

암호화 된 볼륨의 특수한 상황은 흥미 롭습니다. 암호화가 작동하는 방식에 따라 실제로 전체 볼륨을 암호화하여 블록이 실제로 사용되지 않고 0을 포함하더라도 임의의 데이터로 보이는 블록으로 모든 블록을 채울 수 있습니다. 따라서 FileVault를 켜거나 코어 스토리지 암호화를 활성화하면 기본적으로 전체 볼륨이 소비되므로 쓰기 작업을위한 공간이 없습니다. 파일 시스템은 블록을 계속 읽고 읽고 지우고 다시 써서 암호화하려는 데이터로 블록을 다시 쓸 수 있어야합니다.

이제는 이것이 작동하는 방식에 대한 합리적인 이해를 바탕으로 한 추측이라고 말하지만 실제로 세부 사항을 알고 있고 내 설명을 수정하거나 향상시킬 수있는 사람들이 있으며 그렇게 할 수 있기를 바랍니다.


실제로 매우 합리적으로 들립니다. 파고 들었고 외장 드라이브의 경우 eSATA와 Thunderbolt가 모두 TRIM을 지원하는 것 같습니다. Mac에는 eSATA 인터페이스가없고 저렴한 Thunderbolt 썸 드라이브가 곧 출시 될 것 같지 않기 때문에 외장 SSD에 대해서는 흥미로울 수 있지만 썸 드라이브에는 적합하지 않을 수 있습니다. goo.gl/sDM1au
Stefan Schmidt

1
누군가 궁금해하는 경우를 대비하여 : 해결 방법은 드라이브 용량으로 드라이브에 암호화 된 스파 스 번들을 생성하는 것입니다. 나는 벤치 마크를하지 않았지만 드라이브에 암호화되지 않은 데이터를 쓰는 것과 거의 비슷한 느낌입니다.
Stefan Schmidt

@StefanSchmidt 여기에 설명 된 것과 같이 암호화 된 스파 스 번들입니까? blog.fosketts.net/2015/07/22/…
Brad Cupit

@BradCupit 예.하지만 스파 스 번들 자체가 아닌 스파 스 번들의 내용을 동기화하므로 스파 스 번들을 로 마운트 한 다음 로컬 폴더와 동기화 hdiutil attach하는 rsync데 사용 하고 스파 스 번들을 마운트 해제 hdiutil detach하고로 디스크 드라이브를 꺼내십시오 diskutil eject.
Stefan Schmidt
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.