Qual é a diferença entre o NFS e o SMB?
O Network File System (NFS) e o Server Message Block (SMB) são protocolos ou regras de armazenamento de acesso a arquivos para o compartilhamento eficiente de arquivos em uma rede. A capacidade de se comunicar, colaborar e compartilhar arquivos de forma eficaz é essencial para as operações diárias de qualquer organização. Com o NFS, um usuário (ou dispositivo cliente) pode se conectar a um servidor de rede e acessar arquivos no servidor. Ele tem regras que permitem que vários usuários compartilhem o mesmo arquivo sem conflitos de dados. Da mesma forma, o SMB também permite que os usuários leiam arquivos no servidor. No entanto, ele oferece mais flexibilidade, para que os clientes também possam compartilhar arquivos entre si. Os clientes podem usar o SMB para estabelecer conexões com qualquer outro dispositivo em rede, como impressoras ou servidores de arquivos. O cliente pode então acessar os arquivos do dispositivo como se fossem locais para o cliente.
O que é o NFS e como ele funciona?
O protocolo Network File System (NFS – Sistema de arquivos de rede) foi criado pela Sun Microsystems em 1984 como um protocolo de compartilhamento de arquivos com estado para sistemas baseados em UNIX. Desde então, o NFS passou por várias atualizações. A mais recente é a versão 4 do NFS (NFSv4), que foi desenvolvida por um grupo de trabalho da Internet Engineering Task Force. O NFS continua popular entre os usuários de Linux.
Veja como a comunicação funciona entre um cliente habilitado para NFS e um servidor NFS. Primeiro, um cliente solicita um arquivo ou diretório do servidor usando Remote Procedure Calls (RPCs – Chamadas de procedimento remoto). Em seguida, o servidor verifica o seguinte:
- O arquivo ou diretório está disponível
- O cliente exigiu permissões de acesso
Em seguida, o servidor monta o arquivo ou diretório remotamente no cliente e compartilha o acesso por meio de uma conexão virtual. Para o cliente, o NFS faz com que o uso do arquivo do servidor remoto seja semelhante ao acesso a um arquivo local durante as operações.
Entre outros recursos, os clientes NFS armazenam arquivos em cache para melhorar a velocidade de acesso, bloqueiam arquivos em que vários computadores estão tentando gravar no mesmo arquivo simultaneamente e fornecem atualizações sincronizadas de atributos de arquivo.
O que é SMB e como funciona?
O protocolo Server Message Block (SMB) passou por várias iterações diferentes desde que foi desenvolvido pela primeira vez. Foi lançado em 1983 por Barry Feigenbaum na IBM para o sistema operacional DOS, o precursor do Windows. Com profunda integração com o pacote de produtos do Windows, o SMB continua sendo o protocolo padrão de compartilhamento de arquivos para sistemas operacionais Windows.
A versão atual do SMB é SMB 3.1.1, com versões anteriores incluindo SMB 1.0, SMB 2.0, SMB 2.1, SMB 3.0 e SMB 3.0.2. O SMB já foi renomeado como Common Internet File System (CIFS – Sistema comum de arquivos de Internet), no entanto, essa mudança de nome acabou sendo revertida.
O processo de comunicação cliente-servidor é semelhante ao NFS em um alto nível. As diferenças estão nos detalhes mais finos e nos mecanismos operacionais. Por exemplo, no SMB, os sistemas de arquivos não são montados no cliente SMB local. Em vez disso, um compartilhamento de rede hospedado no servidor SMB é acessado por meio de um caminho de rede.
Semelhanças entre SMB e NFS
Os protocolos Server Message Block (SMB) e Network File System (NFS) operam com um modelo cliente-servidor, em que os arquivos são compartilhados no servidor remoto e usados pelo cliente local. Depois que os protocolos são configurados corretamente, quando você acessa arquivos e diretórios de rede remotos no servidor, funciona como se eles estivessem locais no sistema de arquivos na máquina cliente.
Aqui estão outras semelhanças entre o SMB e o NFS:
- Ambos permitem que os clientes realizem operações Create, Read, Update, and Delete (CRUD – Criação, leitura, atualização e exclusão) em arquivos e diretórios no servidor.
- Você pode usá-los com vários sistemas operacionais diferentes. Isso inclui cada sistema operacional convencional, ambientes Windows e ambientes Linux.
- O SMB e o NFS são frequentemente usados em ambientes de rede legados, especialmente na infraestrutura on-premises.
Principais diferenças entre a NFS e o SMB
O Network File System (NFS) e o Server Message Block (SMB) têm algumas diferenças em seus detalhes operacionais.
Design original
Embora o NFS e o SMB possam ser usados em todos os sistemas operacionais, o protocolo SMB é o padrão nativo de compartilhamento de arquivos do Windows. A funcionalidade do Windows é construída em torno do SMB. Você precisa de ferramentas externas como o Samba para usar o SMB em computadores Linux para acessar arquivos remotos do servidor Windows.
Em contraste, o protocolo NFS foi projetado especificamente para sistemas Unix. É um protocolo nativo de compartilhamento de arquivos (e o protocolo padrão de transferência de arquivos) na maioria das distribuições Linux.
Recursos compartilhados
O SMB foi criado para que você possa compartilhar uma ampla variedade de recursos de rede, incluindo serviços de arquivos e impressão, dispositivos de armazenamento e armazenamento de máquinas virtuais.
Isso contrasta com o NFS, que só tem suporte integrado para compartilhar arquivos e diretórios.
Comunicações cliente a cliente
O SMB permite que os clientes se comuniquem e compartilhem arquivos entre si usando o servidor como mediador.
O NFS só permite operações cliente-servidor.
Quando usar o NFS ou o SMB
Normalmente, o Network File System (NFS) e o Server Message Block (SMB) são usados para criar e gerenciar redes locais (LANs) com ambientes de sistema operacional homogêneos. Nesses ambientes, o armazenamento compartilhado precisa ser acessado como arquivos locais. O NFS e o SMB também são usados em ambientes legados em rede à distância e em ambientes de nuvem híbrida por meio de gateways.
Compartilhamento de arquivos SMB
Se você quiser configurar um armazenamento conectado à rede (NAS) em uma LAN, o SMB é a opção mais fácil para compartilhar e acessar arquivos pela rede. Isso permanece verdadeiro se você executa sistemas operacionais Windows, Mac ou Linux.
Os exemplos a seguir são outros casos de uso comuns:
- Redes locais baseadas em Windows para organizações em que várias máquinas clientes exigem armazenamento compartilhado
- Ambientes corporativos com matrizes de armazenamento maiores que priorizam a eficiência e a escalabilidade
- Operações avançadas de compartilhamento que exigem suporte nativo
Compartilhamento de arquivos NFS
Você pode usar o NFS para esses cenários:
- Você tem uma rede local com todas as máquinas baseadas em UNIX (incluindo ambientes baseados em Linux) na rede
- São necessários tamanhos de arquivo grandes
Uma nota sobre arquiteturas de armazenamento em nuvem
É importante observar que nem SMB nem NFS são usados como protocolos primários de compartilhamento de arquivos em arquiteturas de armazenamento e compartilhamento de arquivos baseadas em nuvem.
Os provedores de armazenamento em nuvem usam sistemas proprietários para gerenciar suas configurações internas, embora possam ser baseados em SMB ou NFS subjacentes. Em vez disso, os provedores oferecem serviços de compatibilidade para permitir que sistemas NFS e SMB existentes ou novos interoperem com seus produtos e serviços de armazenamento em nuvem.
Desafios da implementação de NFS e SMB
Tanto o Server Message Block (SMB) quanto o Network File System (NFS) exigem configuração nas máquinas do servidor e do cliente para funcionarem corretamente. Eles não funcionam simplesmente fora da caixa. As permissões de acesso e o sistema de autenticação baseado no usuário devem ser configurados corretamente nas máquinas do cliente e no servidor. Quando há uma incompatibilidade nos tipos de sistema operacional entre o cliente e o servidor, pode ser necessária uma configuração ou software adicional.
A configuração do NFS e do SMB geralmente é uma tarefa para administradores de sistema ou administradores de rede. A tarefa requer conhecimento prático das considerações de segurança do protocolo para garantir operações seguras e eficiência ideal. Se uma nova versão do SMB ou do NFS for lançada, os administradores devem atualizar os sistemas e as configurações conforme necessário.
Em arquiteturas de armazenamento de arquivos baseadas em nuvem, muitas organizações usam soluções modernas e totalmente gerenciadas para compartilhar arquivos em vez da abordagem “faça você mesmo” necessária para SMB ou NFS. Essas soluções usam NFS ou SMB até certo ponto, mas a complexidade do gerenciamento é afastada do administrador.
Essas soluções geralmente oferecem atributos adicionais que podem ser acessados por meio de uma interface fácil de usar. Por exemplo, eles podem oferecer um sistema de autenticação automatizado, gerenciamento elástico de armazenamento, integração automática com outros serviços em nuvem e controles avançados de segurança.
Resumo das diferenças entre o SQL e o SMB
NFS |
SMB |
|
O que é isso? |
Sistemas de arquivos de rede. |
Bloco de mensagem de servidor. |
Mais adequada para |
Arquiteturas de rede baseadas em Linux. |
Arquiteturas baseadas em Windows. |
Recursos compartilhados |
Arquivos e diretórios. |
Uma ampla variedade de recursos de rede, incluindo serviços de arquivos e impressão, dispositivos de armazenamento e armazenamento de máquinas virtuais. |
O cliente pode se comunicar com |
Servidores. |
Servidores e clientes podem se comunicar com outros clientes usando o servidor como mediador. |
Como a AWS pode atender às suas necessidades de compartilhamento remoto de arquivos?
A Amazon Web Services (AWS) oferece uma variedade de serviços para dar suporte ao Server Message Block (SMB), ao Network File System (NFS) e a outras necessidades de acesso remoto.
Se você tiver um sistema de armazenamento de arquivos on-premises personalizado existente, poderá usar o AWS Storage Gateway para conectá-lo ao armazenamento baseado em nuvem para obter armazenamento e eficiência ilimitados em uma solução de nuvem híbrida. Combinado com o Amazon Simple Storage Service (Amazon S3), é possível compartilhar seu armazenamento on-premises baseado em SMB ou NFS com baixa latência e acesso eficiente na nuvem. Para obter mais informações, leia como criar um compartilhamento de arquivos SMB com uma configuração personalizada.
Se você quiser migrar um servidor SMB ou NFS para a nuvem para reduzir as despesas operacionais, aproveitar a escalabilidade elástica ou aumentar a disponibilidade, você pode fazer isso com o Amazon FSx. O Amazon FSx é compatível com ONTAP, Windows File Server, Lustre e OpenZFS da NetApp.
Para serviços modernos de compartilhamento de arquivos que não exigem configuração de SMB ou NFS, o Amazon Elastic File System (Amazon EFS) é uma solução de armazenamento de arquivos sem servidor, totalmente elástica e totalmente gerenciada. Com o Amazon EFS, você pode montar seu sistema de arquivos de rede em contêineres do Amazon Elastic Compute Cloud (Amazon EC2), contêineres da AWS, funções do Lambda ou servidores on-premises. O Amazon EFS foi projetado para facilitar o armazenamento e o compartilhamento elásticos de arquivos em arquiteturas modernas baseadas em nuvem e híbridas da AWS.
Comece a usar o compartilhamento de arquivos na AWS criando uma conta hoje mesmo.