Qual é a sobrecarga de desempenho do criptografado / doméstico?

35

Eu tenho um netbook com Windows na segunda partição e Xubuntu ( /e /home) na terceira partição. Eu escolhi criptografar minha pasta pessoal durante a instalação. O desempenho do netbook é adequado para a pequena máquina que é, mas estou procurando melhorar o desempenho. Não foi possível encontrar muitas informações sobre a sobrecarga (CPU ou unidade) associada à criptografia da partição doméstica. Executei o seguinte, escrevendo na minha partição inicial e na partição montada do Windows:

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

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

O primeiro retornou 2,4 MB / se o segundo retornou 2,5 MB / s. Portanto, posso deduzir que há muito pouca sobrecarga na criptografia de pasta base? Não tenho certeza se os diferentes sistemas de arquivos farão alguma diferença ( /e /homesão ext3).

Atualização 1

Não sei por que não usei em /tmpvez da pasta montada do Windows. Somente /homeé criptografado, assim /tmpcomo ext3 não criptografado. Os resultados do ddacima são surpreendentes:

~: 2,4 MB / s

/tmp: 42,6 MB / s

Comentários por favor? A razão pela qual estou perguntando isso é que o acesso ao disco no netbook é notavelmente lento.

Atualização 2

Cronometrei cada uma das ddoperações com time:

~:

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

/tmp:

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

Veja também: discussão no UbuntuForums.org e relatório de erros ( 11/05/2012 : agora parece ser um bug relacionado ao SSD)

Edit: Saída 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)

Atualização 01/01/2012: Mais links relacionados para referência: um (antigo) teste de Phoronix , uma pergunta semelhante aqui, uma pergunta duplicada aqui e uma pergunta similar de SuperUser. Uma boa resposta resumida aqui sugere que as penalidades de desempenho são perceptíveis apenas em processadores pequenos / netbook (Atom) e SSDs.

SabreWolfy
fonte
11
Sim, diferentes sistemas de arquivos farão a diferença. Você precisa isolar a criptografia como a única diferença significativa entre os testes para atribuir qualquer diferença à criptografia. Eu estou supondo que /media/Windowsé NTFS.
Jmtd
Isso não está comparando o EXT4 criptografado com o NTFS? Certamente, a comparação que você deseja fazer é EXT4 criptografada vs EXT4 simples. Edit: erk, sim, o que @jmtd disse!
Oli
11
Sim, quero comparar o ext3 criptografado com o ext-3 normal. Acabei de perceber que posso fazer isso usando / tmp em vez da pasta montada do Windows. Não tenho certeza do que estava pensando quando testei isso hoje mais cedo. Obrigado pelas indicações. Vou atualizar minha pergunta.
SabreWolfy
Como o / tmp é montado? É um tmpfs ou realmente na unidade ext3?
Marco Ceppi
Eu fiz uma instalação padrão do Ubuntu em um netbook com 1 GB de RAM, então / tmp está na unidade e não na RAM que eu esperaria.
SabreWolfy

Respostas:

18

Uso o recurso de diretório inicial criptografado há anos e posso dizer que, embora se comporte bem em circunstâncias normais, ele deixará sua máquina de joelhos ao realizar qualquer tipo de operação intensa de arquivo.

Eu tenho um Pentium i7 de quatro núcleos com 16 GB de RAM do System7. De qualquer forma, é um laptop extremamente rápido com um drive SATA 7200 RPM. Ainda hoje, quando eu estava descompactando um arquivo com 20.000 arquivos de texto pequenos (leva 10 minutos), meu sistema é essencialmente inutilizável. Tudo o que toca no sistema de arquivos tem um atraso de 1-2 segundos ... incluindo o navegador da web. Minha experiência é exatamente a do OP - o diretório inicial criptografado é cerca de 15x mais lento que o não criptografado.

Não pensei em nada, porque estou acostumado a isso (este é o meu quarto laptop). Com a grande chance de alguém ter uma dica sobre como melhorá-lo, pensei em pesquisar aqui.

Eu criptografo meu diretório pessoal porque EU TENHO. Se você não precisa ... então não.

HDave
fonte
2
Esse disco rígido de 7200 rpm é definitivamente um gargalo. Além disso, você provavelmente deve usar o ionice para operações intensivas de E / S não críticas e demoradas, para não reduzir o desempenho de outras coisas, como usar o navegador da web.
Ehtesh Choudhury
9

O dd NÃO é uma boa maneira de medir o desempenho do HD. Existem muitas variáveis ​​envolvidas e qualquer bom teste precisaria ser feito inúmeras vezes.

A criptografia gera uma sobrecarga, especialmente nas CPUs "menores" que estão nos netbooks. Eles são mais baratos por um motivo, afinal.

Embora eu não tenha dados sobre criptografia de unidade, fiz testes em https vs http para um servidor da Web e o custo é substancial, mas não letal. No entanto, seu diretório pessoal tende a ser uma bagunça, com programas gravando nos diretórios ocultos aleatoriamente constantemente. Veja o Firefox para um garoto mau a esse respeito. Essa é uma ligeira desaceleração constante em um netbook que já é mais lento e geralmente como padrão tem um HD lento.

Execute-o novamente com bonnie ++, recomendado por outro usuário, mas desta vez, faça-o com DOIS usuários diferentes, um com um HD criptografado e o outro sem. Verifique se os dois diretórios iniciais são preenchidos da mesma forma.

Isso oferece um teste muito mais preciso. Eu não ficaria surpreso ao ver cerca de 20% de desempenho atingido ou mais. Foi isso que o meu servidor Web fez quando solicitado a criptografar tudo o que foi lançado. E você está lendo e gravando dados criptografados.

Didier
fonte
3

Embora a criptografia com certeza adicione sobrecarga, a criptografia da partição inicial não deve ter um grande impacto no desempenho do seu sistema. A maioria dos programas que você executa é lida brom / bin ou / usr, e a maior parte da escrita regular do sistema está em / var ou / tmp.

Somente os arquivos do usuário estão em / home, portanto, você terá impacto se processar arquivos grandes, que eu costumo colocar em partições separadas, mantendo minha casa apenas para documentos.

Ensolarado
fonte
2
Muitos programas usam arquivos ocultos (arquivos de ponto) em seu diretório pessoal. Embora eles devam usar tmp para gravações frequentes, você pode tentar criptografar apenas um subdiretório de / home.
Idvii
0

A velocidade de transferência dificilmente é uma métrica suficiente para avaliar a sobrecarga da criptografia: pode ser simplesmente que o gargalo é a capacidade de E / S do seu disco rígido. Você também pode querer examinar o uso da CPU; pode (ou não) ser diferente, independentemente de você usar criptografia ou não.


fonte
11
Como a capacidade de IO influenciaria isso? Escrevendo dados ddpara uma pasta ext3 criptografada e não criptografada. Se a gravação de dados criptografados for 20 vezes mais lenta, isso sugere que o processo de criptografia é o gargalo, pois a unidade é capaz de gravar mais rapidamente na pasta não criptografada.
precisa saber é o seguinte
11
Bem, isso vem da atualização que você forneceu à sua pergunta inicial, que não estava disponível quando escrevi a resposta. Se a gravação de dados em uma partição criptografada é 20 vezes mais lenta que em uma não criptografada, obviamente o processo de criptografia causa uma sobrecarga.
2
Por exemplo, bonnie ++ é um medidor de IO muito melhor que o dd. Apenas "sudo apt-get install bonnie ++" para instalá-lo.
Olli