Kecepatan menulis sangat lambat ke drive eksternal terenkripsi di Mavericks


10

Menulis ke USB flash drive sepenuhnya terenkripsi di Mavericks sangat lambat.

Model drive yang saya gunakan untuk pengujian adalah Kingston DataTraveler Ultimate 3.0 G3 (64 GB). Saya menguji kecepatan transfer dengan membaca / menulis file besar dari / ke drive terenkripsi dan tidak terenkripsi. Saya menguji pada Macbook saat ini dengan Mavericks dan pada mesin yang lebih tua dengan Mountain Lion. Saya menggunakan Disk Utility untuk memformat drive sebagai Mac OS Extended (Journaled) dan Mac OS Extended (Journaled, Encrypted).

MacBook Pro (2013) dengan USB 3.0 yang menjalankan OS X 10.9.2 (13C64)

Tulis: 86,16 MB / detik (terenkripsi: 0,62 MB / detik)
Baca: 181,66 MB / detik (terenkripsi: 151,15 MB / detik)

MacBook Pro (2007) dengan USB 2.0 yang menjalankan OS X 10.8.5 (12F45)

Tulis: 23,57 MB / detik (terenkripsi: 5,04 MB / detik)
Baca: 36,23 MB / detik (terenkripsi: 37,87 MB / detik)

Seperti yang Anda lihat pada mesin lama, kecepatan tulis jelas menurun saat menulis ke volume terenkripsi tetapi masih sekitar sepuluh kali lebih cepat dibandingkan dengan mesin baru yang menjalankan Mavericks. Mungkinkah ini masalah yang baru diperkenalkan di FileVault atau CoreStorage?

Pembaruan (2014-06-28)

Drive USB tampaknya memiliki cacat perangkat keras sejak awal. Saya mendapatkan drive pengganti (model yang sama) yang masih belum memberikan hasil yang saya harapkan tetapi setidaknya kecepatan tulis terenkripsi dari MBP 2013 sekarang setara dengan MBP 2007.

MacBook Pro (2013) dengan USB 3.0 yang menjalankan OS X 10.9.3 (13D65)

Tulis: 135,41 MB / detik (terenkripsi: 9,29 MB / detik)
Baca: 196,22 MB / detik (terenkripsi: 187,04 MB / detik)

MacBook Pro (2007) dengan USB 2.0 yang menjalankan OS X 10.8.5 (12F45)

Tulis: - MB / dtk (dienkripsi: 9,39 MB / dtk)
Baca: - MB / dtk (dienkripsi: 37,79 MB / dtk)

Ini masih menyisakan pertanyaan mengapa kecepatan tulis terenkripsi ke drive USB pada MBP 2013 kurang dari sepuluh persen dari kecepatan tulis biasa. Saya juga membandingkan kecepatan baca / tulis sebelum dan sesudah mengaktifkan FileVault pada SSD internal MBP 2013 dan di sana saya tidak dapat mendeteksi perlambatan sama sekali.


1
Wow - normal baca / tulis dan tulis terenkripsi terlihat bagus. Tetapi penulisan terenkripsi itu lambat sekali. Alat apa yang mengukur MB / s? Bisakah Anda mereproduksi hasil ini menggunakan Blackmagic (gratis pada MAS)
bmike

Saya menggunakan Bash satu-liner memanfaatkan sederhana time, dddan awk. Blackmagic memberi saya hasil yang sama: goo.gl/bn32fC (tidak terenkripsi) vs goo.gl/yghyqA (terenkripsi).
Stefan Schmidt

Saya menduga kecepatan baca untuk volume terenkripsi hilang karena durasi membaca lebih pendek daripada interval sampling throughput Blackmagic
Stefan Schmidt

Jawaban:


2

Saya memiliki masalah yang sama, yang saya cukup yakin adalah karena kombinasi dari cara operasi tulis pada memori flash dan cara penyimpanan inti (atau volume keseluruhan) enkripsi bekerja.

Pertama, perilaku tulis: tidak seperti memori volatil (hal-hal yang digunakan dalam memori komputer Anda) atau hard disk, di mana bit dapat ditulis ke 0 atau 1 kapan saja, memori flash memiliki dua status utama: ditulis dan dihapus. Di dalam "tertulis" adalah 0 dan 1. Ketika Anda perlu menulis ke memori flash Anda harus menulis seluruh blok yang saat ini dalam keadaan terhapus. Perangkat lunak sistem file di OS mungkin tahu blok apa yang gratis, tetapi pengontrol dan penyimpanan pada perangkat flash tidak. Cara khusus untuk OS untuk memberi tahu SSD untuk membuat blok tersedia telah dirancang untuk SSD "terhubung dengan bus": itu disebut TRIM. Tumpukan protokol USB tidak, setahu saya, mendukung TRIM. Jadi, pada dasarnya, memori flash terus terisi hingga tidak ada blok terhapus yang sebenarnya, di mana sistem file harus menghapus dan menulis ulang blok dengan membacanya, menggabungkan data baru, menghapus, dan menuliskannya kembali. Itu sebabnya Anda melihat kinerja penulisan file kecil menurun pada SSD seiring waktu.

Keadaan khusus volume terenkripsi menarik: tergantung pada cara enkripsi bekerja, itu mungkin benar-benar mengenkripsi seluruh volume, mengisi semua blok dengan apa yang tampak sebagai data acak bahkan jika blok sebenarnya tidak digunakan dan akan mengandung angka nol. Jadi ketika Anda mengaktifkan FileVault (atau mengaktifkan enkripsi penyimpanan inti), pada dasarnya ia akan menghabiskan seluruh volume, sehingga tidak ada ruang untuk operasi penulisan. Sistem file harus terus-menerus membaca, menghapus, dan menulis ulang blok sehingga dapat menulis ulang dengan data terenkripsi yang ingin Anda masukkan ke dalamnya.

Sekarang saya akan mengatakan di sini bahwa ini adalah spekulasi berdasarkan pada pemahaman yang masuk akal tentang bagaimana hal-hal bekerja, tetapi ada orang yang benar-benar mengetahui detailnya, yang dapat memperbaiki atau meningkatkan penjelasan saya dan saya berharap mereka akan melakukannya.


Itu memang terdengar sangat masuk akal. Saya melakukan beberapa penggalian dan tampaknya untuk drive eksternal eSATA dan Thunderbolt keduanya mendukung TRIM. Ini mungkin menarik mengenai SSD eksternal tetapi mungkin bukan untuk thumb drive karena Mac tidak memiliki antarmuka eSATA dan sepertinya Thunderbolt thumb drive yang terjangkau tidak akan tersedia dalam waktu dekat: goo.gl/sDM1au
Stefan Schmidt

1
Kalau-kalau ada yang bertanya-tanya: Sementara itu solusi saya adalah membuat bundel terenkripsi pada drive yang berukuran sesuai kapasitas drive. Saya tidak melakukan tolok ukur apa pun, tetapi rasanya kira-kira setara dengan menulis data yang tidak terenkripsi ke drive.
Stefan Schmidt

@StefanSchmidt bundel terenkripsi seperti yang dijelaskan di sini? blog.fosketts.net/2015/07/22/...
Brad Cupit

@BradCupit Ya tapi saya menyinkronkan konten bundel jarang, bukan bundel jarang itu sendiri, jadi saya memasang bundel jarang hdiutil attach, kemudian gunakan rsyncuntuk menyinkronkan dengan folder lokal saya, lalu unmount bundel jarang dengan hdiutil detachdan mengeluarkan drive disk dengan diskutil eject.
Stefan Schmidt
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.