¿Cuál es la sobrecarga de rendimiento de cifrado / hogar?

35

Tengo un netbook con Windows en la segunda partición y Xubuntu ( /y /home) en la tercera partición. Seleccioné encriptar mi carpeta de inicio durante la instalación. El rendimiento de la netbook es adecuado para la máquina pequeña que es, pero estoy buscando mejorar el rendimiento. No pude encontrar mucha información sobre la sobrecarga (CPU o unidad) asociada con el cifrado de partición doméstica. Ejecuté lo siguiente, escribiendo en mi partición doméstica, así como en la partición montada de Windows:

dd if=/dev/zero of=~/dummy bs=512 count=10240

dd if=/dev/zero of=/media/Windows/dummy bs=512 count=10240

El primero devolvió 2.4MB / sy el segundo devolvió 2.5MB / s. Por lo tanto, ¿puedo deducir que hay muy poca sobrecarga para el cifrado de la carpeta de inicio? No estoy seguro de si los diferentes sistemas de archivos harán alguna diferencia ( /y /homeson ext3).

Actualización 1

No sé por qué no utilicé en /tmplugar de la carpeta de Windows montada. Solo /homeestá encriptado, por lo que /tmpestá sin encriptar ext3. Los resultados de lo ddanterior son asombrosos:

~: 2.4 MB / s

/tmp: 42,6 MB / s

Comentarios por favor? La razón por la que pregunto esto es que el acceso al disco en el netbook es notablemente lento.

Actualización 2

He cronometrado cada una de las ddoperaciones con time:

~:

real    0m2.217s  
user    0m0.028s  
sys     0m2.176s

/tmp:

real    0m0.152s  
user    0m0.012s  
sys     0m0.136s

Ver también: discusión sobre UbuntuForums.org e informe de errores (2012/05/11: ahora parece ser un error relacionado con SSD)

Editar: Salida de mount:

/dev/sda3 on / type ext3 (rw,noatime,errors=remount-ro,user_xattr,commit=600)
proc on /proc type proc (rw,noexec,nosuid,nodev)
none on /sys type sysfs (rw,noexec,nosuid,nodev)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /dev type devtmpfs (rw,mode=0755)
none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
none on /dev/shm type tmpfs (rw,nosuid,nodev)
none on /var/run type tmpfs (rw,nosuid,mode=0755)
none on /var/lock type tmpfs (rw,noexec,nosuid,nodev)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/USER/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=USER)

Actualización 01/05/2012: Más enlaces relacionados para referencia: una (antigua) prueba de Phoronix , una pregunta similar aquí, una pregunta duplicada aquí y una pregunta similar de Superusuario. Una buena respuesta resumida aquí sugiere que las penalizaciones de rendimiento solo son notables en procesadores pequeños / netbook (Atom) y SSD.

SabreWolfy
fuente
1
Sí, diferentes sistemas de archivos marcarán la diferencia. Debe aislar el cifrado como la única diferencia significativa entre las pruebas para atribuir cualquier diferencia al cifrado. Supongo que /media/Windowses NTFS.
jmtd
¿No es eso comparar encriptado EXT4 con NTFS? Seguramente, la comparación que desea hacer es encriptada EXT4 vs simple EXT4. Editar: erk, sí, ¡qué dijo @jmtd!
Oli
1
Sí, quiero comparar encriptado-ext3 con el ext-3 normal. Me acabo de dar cuenta de que puedo hacer esto usando / tmp en lugar de la carpeta de Windows montada. No estoy seguro de lo que estaba pensando cuando probé esto más temprano hoy. Gracias por los consejos. Actualizaré mi pregunta.
SabreWolfy
¿Cómo se monta / tmp? ¿Es un tmpfs o realmente en la unidad ext3?
Marco Ceppi
Hice una instalación estándar de Ubuntu en una netbook con 1 GB de RAM, por lo que / tmp está en la unidad en lugar de en la RAM que esperaría.
SabreWolfy

Respuestas:

18

He estado utilizando la función de directorio de inicio encriptada durante años y puedo decirle que, si bien se comporta bien en circunstancias normales, pondrá su máquina de rodillas cuando realice cualquier tipo de operaciones intensas de archivos.

Tengo un Pentium i7 de cuatro núcleos con 16 GB de RAM de System7. En cualquier medida, es un portátil ultrarrápido con una unidad SATA 7200 RPM. Justo hoy, cuando estaba descomprimiendo un archivo con 20,000 pequeños archivos de texto (toma 10 minutos), mi sistema es esencialmente inutilizable. Todo lo que toca el sistema de archivos tiene un retraso de 1-2 segundos ... incluido el navegador web. Mi experiencia es exactamente la del OP: el directorio de inicio cifrado es aproximadamente 15 veces más lento que el no cifrado.

No pensé nada al respecto porque estoy muy acostumbrado (esta es mi cuarta computadora portátil). En la posibilidad de que alguien tenga un consejo sobre cómo mejorarlo, pensé en buscar aquí.

Cifro mi directorio de inicio porque TENGO que hacerlo. Si no tienes que ... entonces no lo hagas.

HDave
fuente
2
Ese disco duro de 7200 rpm es definitivamente un cuello de botella. Además, probablemente debería usar ionice para cualquier operación intensiva de E / S no crítica de larga duración, para no reducir el rendimiento para otras cosas, como usar su navegador web.
Ehtesh Choudhury
9

dd NO es una buena forma de medir el rendimiento de HD. Hay muchas variables involucradas y, de todos modos, cualquier buena prueba tendría que hacerse varias veces.

El cifrado genera una sobrecarga, especialmente en las CPU "menores" que se encuentran en las netbooks. Son más baratos por una razón después de todo.

Si bien no tengo datos sobre el cifrado de la unidad, hice pruebas en https vs http para un servidor web y el costo es considerable pero no letal. SIN EMBARGO, su directorio de inicio tiende a ser un desastre con los programas que escriben en sus directorios ocultos al azar constantemente. Ver Firefox para un chico malo en este sentido. Esta es una ligera desaceleración constante en una netbook que ya es más lenta y, a menudo, como estándar tiene una HD lenta.

Ejecútelo nuevamente con bonnie ++, recomendó otro usuario, pero esta vez, hágalo con DOS usuarios diferentes, uno con un HD encriptado y el otro sin él. Asegúrese de que ambos directorios de inicio estén llenos de la misma.

Eso te da una prueba mucho más precisa. No me sorprendería ver aproximadamente un 20% de rendimiento o más. Eso es lo que hizo mi servidor web cuando se le pidió que encriptara todo lo que publicaba. Y está leyendo y escribiendo datos cifrados.

Didier
fuente
3

Si bien el cifrado seguramente agregará gastos generales, el cifrado de la partición doméstica no debería tener un gran impacto en el rendimiento de su sistema. La mayoría de los programas que ejecuta son de lectura brom / bin o / usr, y la mayor parte de la escritura regular del sistema está en / var o / tmp.

Solo sus archivos de usuario están en / home, por lo que verá un impacto si procesa archivos grandes, que generalmente pongo en una partición separada de todos modos, manteniendo mi hogar solo para documentos.

Soleado
fuente
2
Muchos programas usan archivos ocultos (archivos de puntos) en su directorio de inicio. Si bien deberían usar tmp para escrituras frecuentes, podría intentar cifrar solo un subdirectorio de / home.
idbrii
0

La velocidad de transferencia no es una medida suficiente para evaluar la sobrecarga del cifrado: podría ser simplemente que el cuello de botella es la capacidad de E / S del disco duro. También es posible que desee ver el uso de la CPU, puede (o no) ser diferente si usa cifrado o no.


fuente
1
¿Cómo influiría la capacidad de IO en esto? Escribo datos dden carpetas ext3 cifradas y no cifradas. Si escribir datos cifrados es 20 veces más lento, esto sugeriría que el proceso de cifrado es el cuello de botella, ya que la unidad es capaz de escribir más rápido en la carpeta no cifrada.
SabreWolfy
1
Bueno, eso proviene de la actualización que proporcionó a su pregunta inicial, que no estaba disponible cuando escribí la respuesta. Si escribir datos en una partición encriptada es 20 veces más lenta que en una encriptada, entonces obviamente el proceso de encriptación causa una sobrecarga.
2
Por ejemplo, bonnie ++ es mucho mejor IO-metro que dd. Simplemente "sudo apt-get install bonnie ++" para instalarlo.
Olli