NFS v2 versus v3

1

Estou tendo problemas com dois sistemas (um cliente Solaris e um servidor Linux) usando o NFS v3 para montar diretórios base. (O NFS v4 simplesmente não funciona, pois o que me é dito por outro administrador de sistema aqui é um "problema conhecido".) O NFS v2 parece funcionar corretamente.

A minha pergunta é: quais são os tradeoffs entre usar o NFS v2 e o NFS v3? Eu preciso tomar uma decisão quanto a continuar tentando depurar esse problema ou apenas decidir viver com o NFS v2 para este cliente.

Eu sei que há um limite de tamanho de arquivo com v2, embora eu tenha visto informações conflitantes - é um limite de 2 GB ou 4 GB? Há também uma penalidade de desempenho para v2; É possível quantificar as limitações de velocidade com v2 de uma maneira geral, ou isso depende muito dos sistemas e redes específicos envolvidos? (Por que vale a pena, eu tenho gigabit Ethernet entre os sistemas.) Quais outras compensações existem entre os dois? Há algum problema de segurança que eu deva saber?

    
por asciiphil 06.06.2013 / 15:36

2 respostas

2

Além da resposta existente.

O NFSv3 possui a operação READDIRPLUS, que permite obter listagens de diretórios com atributos de arquivo de uma só vez - uma grande melhoria de desempenho na listagem de diretórios. Além disso, o V3 tem uma consistência de cache fraca, que mantém o cache do cliente feliz e permite que o cliente não solicite muitas informações. Além disso, o TCP é um transporte. Com o UDP, você pode ter perdas de dados com grande tamanho de buffer IO de leitura / gravação. Chamada de acesso, permite ao cliente reutilizar dados em cache se um outro usuário quiser acessar o mesmo arquivo.

    
por 06.06.2013 / 21:48
3

De acordo com o wikipedia , o NFSv2 usa valores de tamanho de arquivo de 32 bits, o que limita-o a arquivos de 4GiB, mas aparentemente um bug comum é para tornar os valores assinados, o que limita a 2GiB. O NFSv3 também possui operações assíncronas e operações muito otimizadas, de modo que menos operações precisam ser feitas. Isso realmente tem um grande impacto no desempenho, mesmo em uma LAN, já que as latências de rede são algo totalmente diferente das latências de máquinas locais. O NFSv2 só deve ser usado se algo não suportar o NFSv3. Tente descobrir porque o NFSv4 não funciona. Talvez seja algo que você possa consertar.

    
por 06.06.2013 / 19:59