0
Artigo Kleber José da Silva Co-autor: Prof. Dr. Antonio Rigo IPT  – 05/07/2011 Análise comparativa entre as versões 3 e 4 ...
Agenda <ul><li>Contexto </li></ul><ul><li>Protocolo NFS </li></ul><ul><li>Estado da Arte </li></ul><ul><li>Parametrizações...
1 - Contexto
1.1 - Contexto <ul><li>Grupos ( cluster / farms ) de servidores como  correio eletrônico ,  web ,  virtualização  e  banco...
1.2 - Contexto <ul><li>Objeto de estudo:  arquiteturas NAS  operando com o  protocolo NFS  somente, com foco na  versão 4 ...
2 - Protocolo NFS <ul><li>A versão  4  do protocolo NFS foi especificado em 2003 e atualmente ainda é pouco adotado em amb...
1984 1989 1995 2003 2010 NFS  (Sun  Microsystems) NFSv2 NFSv3 NFSv4 NFSv4.1 <ul><li>O NFSv4.1 não foi avaliado neste traba...
2.2 – NFSv4 <ul><li>Estados das sessões: é  stateful ; </li></ul><ul><li>Mecanismos de  segurança  nativa ou por integraçã...
3 – Estado da Arte <ul><li>No Red Hat Enterprise Linux 5 e Solaris 10, o NFSv4 já é o usado como padrão quando o servidor ...
4 - Parametrizações  do protocolo <ul><li>A motivação para explorar as alterações nos parâmetros do protocolo é o fato de ...
4.1 - Delegações de arquivos <ul><li>É o  Cache  dos dados no cliente. </li></ul><ul><li>Disponível no NFSv4,  </li></ul><...
4.2 - RPC Composto (nativo no NFSv4)
4.3 - Tamanho de Blocos <ul><li>Tanenbaum et al. (2006) defendem o conhecimento sobre a utilização dinâmica dos tamanhos d...
5 – Especificação do Experimento <ul><li>Topologia do Experimento </li></ul>
5.1 – Simulação de carga de acesso <ul><li>Ferramenta da NetApp (fabricante do Sistema de Armazenamento) denominada  SIO  ...
5.2 – Cenários <ul><li>Grupo A:  </li></ul><ul><li>RedHat 5.2 (Cliente) e Data ONTAP 7.3.2 (Servidor) </li></ul><ul><li>Gr...
5.3 – Variáveis <ul><li>Os gráficos foram gerados variando o tamanho simultaneamente na montagem do cliente NFS e na ferra...
5.4 – Resultados <ul><li>Vazão :  taxa de transferência efetiva de dados expressa em Mega Bytes por Segundo;  </li></ul><u...
6 – Gráficos de Desempenho <ul><li>Vazão – Config. A </li></ul>
6 – Gráficos de Desempenho <ul><li>Vazão – Config. B </li></ul>
6 – Gráficos de Desempenho <ul><li>IOPs – Config. A </li></ul>
6 – Gráficos de Desempenho <ul><li>IOPs – Config. B </li></ul>
6 – Gráficos de Desempenho <ul><li>Média de CPU – Config. A </li></ul>
6 – Gráficos de Desempenho <ul><li>Média de CPU – Config. B </li></ul>
7 – Trabalhos Futuros <ul><li>Alteração do perfil de aplicação configurado na ferramenta de simulação </li></ul><ul><li>O ...
8 – Conclusão <ul><li>Na  configuração A  (S.O mais antigo) conclui-se que a versão 3 do NFS ainda é a melhor escolha no q...
Upcoming SlideShare
Loading in...5
×

Análise comparativa entre as versões 3 e 4 do protocolo nfs em arquiteturas nas arquiteturas NAS, por Kleber José da Silva

618

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
618
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Evolução de DAS para SAN; Diferenças: NAS -&gt; LAN e Arquivos . Protocolos NFS para UNIX e CIFS (SMB) para Windows SAN -&gt; Blocos. Protocolos FCP, iSCSI e FCoE.
  • Arquiteturas NAS facilitam o processo de Backup para fita com o NDMP ao copiar os dados diretamente do Storage para a Fita.
  • Além do linux, VMware e XenServer possuem versão gratuitas .
  • Pouco Adotado: Resistência entre os administradores de rede em adotá-la em suas instalações, temendo degradação. Ausência de base instalada. Aumento da complexidade por Kirch (2006) Grandes mudanças da nova versão do protocolo conforme exposto por Harrington et al. (2006) e Hildebrand (2007) UDP Risco de perder pacotes em grandes volumes de trocas de arquivos em altas taxas de transferências, o que seria trágico
  • Em 1997 a SUN transferiu oficialmente o desenvolvimento do NFS para o IETF ( Internet Engineering Task Force ) O NFSv4 foi extremamente modificado em relação às versões anteriores do protocolo NFS
  • Stateful -&gt; Aperfeiça técnicas de análise de problemas ACL -&gt; facilitando a integração com ambientes Windows Sub-Protocolos -&gt; separados no NFSv3: mountd , lockd e statd Única porta TCP -&gt; facilita a comunicação através de firewalls Migração/Replicação -&gt; simplificando a necessidade de substituir um servidor NFS por outro
  • Em alguns países, como nos Estados Unidos e França , a base instalada de NFSv4 tem aumentando ao longo do tempo, como identificado pelo CITI. CITI disponibilizou em meados de 2010 o pacote para instalação do SFU para NFSv4 em Windows Vista x64, Windows Server 2008 R2 x64, e Windows 7 x64
  • Dois tipos: leitura e escrita O conceito de cache já existia nas versões anteriores do NFS (2 e 3 ) mas para garantir consistência entre diferentes clientes, eles trocavam mensagens com o servidor. As delegações de arquivos no NFSv4 são possíveis porque o protocolo mantém o estado das sessões (é stateful ) , o que não ocorria nas versões anteriores Harrington et al. (2006): Clusters de Renderização e Banco de Dados
  • Diversas operações em somente uma requisição RPC. Esse modelo somente é possível em decorrência da última versão do NFS suportar apenas TCP . Essa mudança busca melhorar o desempenho em redes com alta latência, Mas mesmo em redes locais com baixa latência espera-se reduzir o número de operações do NAS. Pohlmann e Hess (2006) estimam que, eram 5 vezes maior que a da nova versão.
  • Parâmetro estabelecido por cada cliente Uso de UDP na camada de transporte, caso do NFSv2 e 3 , limitava o uso de um tamanho de blocos maior devido ao risco de perda do bloco inteiro ao falhar uma requisição simples. Blocos grandes são mais eficientes do que pequenos, mas se o tamanho dos arquivos em trânsito é pequeno, haveria desperdício de espaço.
  • Storage em RAID 6 em 5+2, com discos SAS de 15K RPM. No papel de clientes NFS, além de servidores Linux, também é comum haver servidores de virtualização como VMware e Citrix para seus repositórios ( DataStores ) e servidores UNIX como IBM AIX, HP-UX, e Oracle Solaris
  • Apenas o tamanho de blocos foi variado em conjunto com o tamanho utilizado na montagem do cliente NFS e seus valores especificados formaram um dos eixos dos gráficos de desempenho. Os cenários foram divididos em 2 grupos, sendo que cada um deles utilizou versões diferentes de Sistema Operacional do cliente e servidor NFS.
  • No intervalo entre a execução de um cenário e outro, o ambiente foi reiniciado (servidores e storage ) e os volumes de dados de testes recriados para evitar resultados eventualmente influenciados pelo cache de operações de outros cenários.
  • o uso de UDP na camada de transporte, caso do NFSv2 e às vezes do NFSv3, limita o uso de um tamanho de blocos maior devido ao risco de perda do bloco inteiro ao falhar uma requisição simples
  • Cada cenário foi executado 3 vezes e a média dos resultados seguintes foi coletada a partir da ferramenta SIO no servidor Linux e da ferramenta nativa sysstat no Sistema de Armazenamento ( Storage )
  • aumento linear da vazão proporcionalmente ao tamanho de bloco utilizado A diferença de resultados do TCP e UDP não foi significativa, desencorajando inicialmente o uso de UDP devido aos riscos expostos ao ambiente
  • aumento proporcional ao tamanho de bloco estabilizado a partir de 32K Nesta configuração B, a diferença de vazão entre NFSv3/TCP e NFSv4 ficou menor que na configuração A, ou seja, mostra que houve realmente uma melhoria na implementação dos Sistemas Operacionais
  • A utilização de Operações NFSv4 é em todos os casos maior que o dobro da versão 3. Essa relação é mais próxima apenas com tamanhos de blocos de 32KB
  • o NFSv4 também apresenta uma maior utilização de IOPs, mas a diferença para o NFSv3 é reduzida quando as delegações de arquivos é habilitada, no caso de tamanho de blocos menores. Mas bem como na vazão, o número de IOPs se mantém estabilizado com a alteração do tamanho de blocos. Sem as delegações de arquivos - cenário 3B, comparando a configuração anterior no cenário 3A, a diferença é minimizada no tamanho de bloco em 64KBytes, mesmo assim ainda é o dobro
  • Os resultados de utilização média de CPU ficaram muito próximos em todos os cenários. Nota-se que as delegações de arquivos do NFSv4 reduzem um pouco sua utilização
  • Os resultados de utilização média de CPU ficaram muito próximos em todos os cenários. Nota-se que as delegações de arquivos do NFSv4 reduzem um pouco sua utilização
  • No IPv6, Jumbograma poderia trazer vantagens de desempenho para tamanho de blocos grandes.
  • Entretanto, deve-se explorar um pouco mais o estudo conforme sugestões apresentadas na seção “Trabalhos Futuros”.
  • Transcript of "Análise comparativa entre as versões 3 e 4 do protocolo nfs em arquiteturas nas arquiteturas NAS, por Kleber José da Silva"

    1. 1. Artigo Kleber José da Silva Co-autor: Prof. Dr. Antonio Rigo IPT – 05/07/2011 Análise comparativa entre as versões 3 e 4 do protocolo NFS em arquiteturas NAS
    2. 2. Agenda <ul><li>Contexto </li></ul><ul><li>Protocolo NFS </li></ul><ul><li>Estado da Arte </li></ul><ul><li>Parametrizações do Protocolo </li></ul><ul><li>Especificação do Experimento </li></ul><ul><li>Gráficos de Desempenho </li></ul><ul><li>Trabalhos Futuros </li></ul><ul><li>Conclusão </li></ul>
    3. 3. 1 - Contexto
    4. 4. 1.1 - Contexto <ul><li>Grupos ( cluster / farms ) de servidores como correio eletrônico , web , virtualização e banco de dados necessitam armazenar seus dados em um sistema de arquivos de acesso simultâneo </li></ul><ul><li>Arquiteturas típicas: NAS e SAN </li></ul><ul><li>NAS : nativo no Sistema de Armazenamento </li></ul><ul><li>SAN: depende de um serviço adicional no servidor – serviço de Cluster </li></ul>
    5. 5. 1.2 - Contexto <ul><li>Objeto de estudo: arquiteturas NAS operando com o protocolo NFS somente, com foco na versão 4 . </li></ul><ul><li>Acesso ao Sistema de Armazenamento por servidores que possuem seu Sistema Operacional baseado em BSD como Unix (Solaris, AIX), Linux (RedHat, Fedora), VMware e XenServer . </li></ul>
    6. 6. 2 - Protocolo NFS <ul><li>A versão 4 do protocolo NFS foi especificado em 2003 e atualmente ainda é pouco adotado em ambientes NAS, principalmente no Brasil. A versão 3 é a mais usada, com casos em UDP ao invés de TCP na camada de transporte; </li></ul><ul><li>O NFSv4 é a mais recente do protocolo NFS e apresenta diversas melhorias em relação a versão anterior. </li></ul>
    7. 7. 1984 1989 1995 2003 2010 NFS (Sun Microsystems) NFSv2 NFSv3 NFSv4 NFSv4.1 <ul><li>O NFSv4.1 não foi avaliado neste trabalho pois ainda é muito recente e implementação restrita. </li></ul>1997 IETF 2.1 – Evolução
    8. 8. 2.2 – NFSv4 <ul><li>Estados das sessões: é stateful ; </li></ul><ul><li>Mecanismos de segurança nativa ou por integração ( RPCSEC_GSS, Kerberos v5 ); </li></ul><ul><li>Padronização do tratamento de ACLs ; </li></ul><ul><li>Incorporação dos sub-protocolos utilizando apenas uma porta TCP . Exclusão do UDP; </li></ul><ul><li>Extensão ao pNFS - Parallel NFS ; </li></ul><ul><li>Suporte à migração / replicação de arquivos. </li></ul>
    9. 9. 3 – Estado da Arte <ul><li>No Red Hat Enterprise Linux 5 e Solaris 10, o NFSv4 já é o usado como padrão quando o servidor NFS também o suporta. </li></ul><ul><li>A tendência é que o NFSv4 se consolide como opção padrão nas próximas versões dos servidores justamente para que eles possam aproveitar as melhorias apresentadas nessa versão, e conseqüentemente o NFSv3 seria desativado a médio prazo. </li></ul>
    10. 10. 4 - Parametrizações do protocolo <ul><li>A motivação para explorar as alterações nos parâmetros do protocolo é o fato de alguns estudos, como o de Boumenot (2002), apontarem que os elementos básicos da infraestrutura de um arquitetura NAS baseada em NFS como processador, disco e rede não serem responsáveis pela baixa vazão entre servidor e cliente. Supõe-se que a deficiência seja causada por um comportamento evitável do NFS, mediante ajustes . </li></ul>
    11. 11. 4.1 - Delegações de arquivos <ul><li>É o Cache dos dados no cliente. </li></ul><ul><li>Disponível no NFSv4, </li></ul><ul><li>Não se aplica ao NFSv3 </li></ul>
    12. 12. 4.2 - RPC Composto (nativo no NFSv4)
    13. 13. 4.3 - Tamanho de Blocos <ul><li>Tanenbaum et al. (2006) defendem o conhecimento sobre a utilização dinâmica dos tamanhos de arquivos como necessária para sua otimização. Se todos arquivos acessados constantemente são pequenos, o tamanho de bloco também deve ser; </li></ul><ul><li>Serão testados alguns tamanhos de blocos, e alguns perfis de aplicações na ferramenta de simulação. </li></ul>
    14. 14. 5 – Especificação do Experimento <ul><li>Topologia do Experimento </li></ul>
    15. 15. 5.1 – Simulação de carga de acesso <ul><li>Ferramenta da NetApp (fabricante do Sistema de Armazenamento) denominada SIO (Simulated Input Output); Script que é executado no servidor Linux e tem o propósito de gerar cargas de acesso ao volume </li></ul><ul><li>Configurações fixas de relação leitura x escrita em 50% x 50%, usando 3 threads , em 2 minutos de tempo de execução por 3 vezes, e acessando 10 arquivos simultaneamente. </li></ul>
    16. 16. 5.2 – Cenários <ul><li>Grupo A: </li></ul><ul><li>RedHat 5.2 (Cliente) e Data ONTAP 7.3.2 (Servidor) </li></ul><ul><li>Grupo B: </li></ul><ul><li>RedHat 5.3 (Cliente) e Data ONTAP 7.3.5 (Servidor) </li></ul>Cenário NFS Deleg. Arquivos RPC Comp. TCP / UDP 1A e 1B v3 N/A N/A TCP 2A e 2B v3 N/A N/A UDP 3A e 3B v4 Não Sim TCP 4A e 4B v4 Sim Sim TCP
    17. 17. 5.3 – Variáveis <ul><li>Os gráficos foram gerados variando o tamanho simultaneamente na montagem do cliente NFS e na ferramenta de simulação SIO: 8K , 16K , 32K, 64 e 128KBytes . (Com exceção do NFSv3 em UDP que não contemplou tamanhos grandes) </li></ul>
    18. 18. 5.4 – Resultados <ul><li>Vazão : taxa de transferência efetiva de dados expressa em Mega Bytes por Segundo; </li></ul><ul><li>Utilização da CPU: porcentagem do tempo que a CPU do Servidor NFS está ocupada; </li></ul><ul><li>Utilização de IOPs: Operações de Entrada e Saída por segundo no Servidor NFS. Exemplo: </li></ul>Vazão (MBytes/s) NFS IOPs (Operações) Utilização de CPU 92MBytes/s 5.240 34%
    19. 19. 6 – Gráficos de Desempenho <ul><li>Vazão – Config. A </li></ul>
    20. 20. 6 – Gráficos de Desempenho <ul><li>Vazão – Config. B </li></ul>
    21. 21. 6 – Gráficos de Desempenho <ul><li>IOPs – Config. A </li></ul>
    22. 22. 6 – Gráficos de Desempenho <ul><li>IOPs – Config. B </li></ul>
    23. 23. 6 – Gráficos de Desempenho <ul><li>Média de CPU – Config. A </li></ul>
    24. 24. 6 – Gráficos de Desempenho <ul><li>Média de CPU – Config. B </li></ul>
    25. 25. 7 – Trabalhos Futuros <ul><li>Alteração do perfil de aplicação configurado na ferramenta de simulação </li></ul><ul><li>O sistema operacional do cliente NFS também pode ser substituído para analisar implementações específicas como, por exemplo, FreeBSD, Solaris ou Fedora; </li></ul><ul><li>Aumentar o canal de comunicação entre servidor e storage por meio de agregação de canais ethernet (Link Aggregation). </li></ul><ul><li>Implementar Jumbo Frames e IPv6 </li></ul>
    26. 26. 8 – Conclusão <ul><li>Na configuração A (S.O mais antigo) conclui-se que a versão 3 do NFS ainda é a melhor escolha no quesito desempenho por apresentar uma melhor vazão dos dados e menor utilização de IOPs em relação à versão 4; </li></ul><ul><li>Na configuração B , (mais recente), a diferença é minimizada. Conclui-se que não se deve descartar o uso do NFSv4 em produção, principalmente nos ambientes em que suas novas funcionalidades compensariam a pequena perda de desempenho. </li></ul>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×