Compartilhar via


Diretrizes de solução de problemas do SMB

Experimente nosso agente virtual – ele pode ajudar você a identificar e corrigir rapidamente problemas comuns do SMB.

Este artigo foi criado para ajudar você a solucionar problemas do protocolo SMB. A maioria dos usuários consegue resolver o problema seguindo os procedimentos fornecidos aqui.

Terminologia SMB

A comunicação da terminologia correta é um aspecto fundamental da qualidade da solução de problemas de SMB. Portanto, você deve aprender a terminologia básica do SMB para garantir a precisão da coleta e análise de dados.

  • O servidor SMB (SRV) (também conhecido como servidor de arquivos) é sempre o sistema que hospeda o sistema de arquivos.
  • O cliente SMB (CLI) é sempre o sistema que tenta acessar o sistema de arquivos.

Esses termos são consistentes, independentemente da versão ou edição do sistema operacional. Por exemplo, se um computador baseado no Windows Server 2016 tentar acessar o compartilhamento SMB \\MyWorkstation\Data em um computador baseado no Windows 10, o Windows Server 2016 será o cliente SMB e o Windows 10 será o servidor SMB.

Lista de verificação de solução de problemas

  • Verifique se o protocolo de rede SMB correto está instalado. O protocolo de rede SMBv1 não é mais instalado por padrão.
  • Desabilitar SMBv1.
  • Se o SMBv1 estiver desabilitado em um dispositivo que oferece suporte apenas a SMBv1, você não poderá acessar esse dispositivo. Nesse caso, atualize seu sistema.
  • Não é possível desabilitar o SMBv2 ou o SMBv3 separadamente porque essas versões fazem parte do mesmo driver.
  • Analisar o tráfego: o SMB é um protocolo de nível de aplicativo que usa TCP/IP como o protocolo de transporte de rede. Portanto, um problema relacionado ao SMB pode indicar que há problemas subjacentes relacionados ao TCP/IP.
  • Analisar o protocolo: para entender os comandos e as opções exatos que são usados, examine os detalhes reais do protocolo SMB no rastreamento de rede.
  • Atualizar arquivos do sistema relacionados ao SMB: mantenha os arquivos do sistema atualizados. Confirme se o rollup de atualizações mais recente está instalado.

Informações do arquivo SMB

Binários de Cliente SMB listados em %windir%\system32\Drivers:

  • RDBSS.sys
  • MRXSMB.sys
  • MRXSMB10.sys
  • MRXSMB20.sys
  • MUP.sys
  • SMBdirect.sys

Binários do servidor SMB listados em %windir%\system32:

  • Srvsvc.dll

Binários de Servidor SMB listados em %windir%\system32\Drivers:

  • SRVNET.sys
  • SRV.sys
  • SRV2.sys
  • SMBdirect.sys

Recomendamos que você atualize os seguintes componentes antes de solucionar problemas de SMB:

  • iSCSI: um servidor de arquivos requer armazenamento de arquivos. Se o armazenamento tiver componentes iSCSI, atualize esses componentes.
  • Rede: atualize os componentes de rede.
  • Windows Core: para melhor desempenho e estabilidade, atualize o Windows Core.

Desconectando todos os recursos compartilhados do computador local

Você pode usar o comando Net Use * /delete para desconectar conexões ativas um lembradas em um computador local.

Observação

Você também pode usar esse comando em computadores remotos. Execute Net help use para obter mais opções.

Importante

Esta seção deste artigo é baseada no conteúdo da comunidade.

Aviso de isenção de responsabilidade por conteúdo de soluções da comunidade

A Microsoft Corporation e/ou seus respectivos fornecedores não fazem garantias sobre a adequação, confiabilidade ou precisão das informações e das imagens relacionadas aqui contidas. Todas essas informações e imagens relacionadas são fornecidas "no estado em que se encontram" sem garantia de qualquer tipo. A Microsoft e/ou seus respectivos fornecedores, pelo presente, renunciam todas as garantias e condições com relação a essas informações e imagens relacionadas, incluindo todas as garantias implícitas e condições de comerciabilidade, adequação para uma finalidade específica, esforço de trabalho, posse e não violação. Você especificamente concorda que em nenhuma circunstância a Microsoft e/ou seus fornecedores serão responsabilizados por quaisquer danos diretos, indiretos, punitivos, incidentais, especiais, consequenciais ou quaisquer outros incluindo, sem limitação a, danos por perda de uso, dados ou lucros resultantes de ou de alguma forma relacionados com o uso de ou incapacidade de usar as informações e imagens relacionadas contidas neste documento, sejam eles baseados em contrato, ato ilícito, negligência, responsabilidade estrita ou outros, mesmo que a Microsoft ou qualquer um dos seus fornecedores tenha sido avisada sobre a possibilidade de tais danos.

Problemas comuns e soluções

Quando você acessa um Servidor de Arquivos de Expansão, o desempenho é limitado

A rede de acesso para cliente usa RDMA (acesso remoto direto à memória) de alta velocidade, mas a rede de cluster não. Devido a esse comportamento, o redirecionamento ocorre somente na rede de clusters. A rede de cluster normalmente se conecta a adaptadores de rede de 1 GbE.

Para solucionar esse problema, você pode configurar a opção de usar a rede de acesso para cliente para CSV (Volumes Compartilhados de Cluster). Ou atualize para o Windows Server 2012 R2 ou uma versão posterior. Esse sistema redireciona automaticamente os clientes para o nó do cluster que tem o melhor acesso ao volume do compartilhamento de arquivos. Para obter mais informações, consulte o seguinte artigo do Arquivo de Blog: Rebalanceamento automático de expansão SMB no Windows Server 2012 R2.

O SMB prefere usar o adaptador de rede física mais lento ao invés do adaptador de rede virtual

O adaptador de rede virtual no host não é compatível com RSS. O adaptador de rede física é compatível com RSS. O SMB sempre usa o adaptador de rede compatível com RSS em vez do adaptador de rede não RSS, mesmo que o adaptador de rede RSS seja mais lento.

Para solucionar esse problema, desabilite o recurso RSS no adaptador de rede física ou use restrições SMB Multichannel para restringir a comunicação SMB a um ou mais adaptadores de rede definidos. Para obter mais informações, consulte o cmdlet de Compartilhamento SMB New-SmbMultichannelConstraint no Windows PowerShell.

O SMB relata que o adaptador de rede não é compatível com RDMA, mesmo que você acredite que ele seja

Esse problema ocorre porque os adaptadores de rede compatíveis com RDMA que têm drivers ou firmware mais antigos podem não se identificar corretamente como compatíveis com RDMA.

Para solucionar esse problema, atualize o firmware e o driver do adaptador de rede no site do fabricante.

A quantidade necessária de tráfego de rede antes que o SMB Multichannel seja iniciado varia

O recurso SMB Multichannel é usado para descobrir os recursos RSS e RDMA dos adaptadores de rede. Em sistemas operacionais de servidor, o SMB Multichannel é iniciado quando ocorre a operação inicial de leitura ou gravação. Em sistemas operacionais cliente, o SMB Multichannel não é iniciado até que ocorra uma determinada quantidade de tráfego de rede.

Em sistemas operacionais de servidor, o SMB Multichannel é iniciado rapidamente apenas uma vez por sessão. Em sistemas operacionais cliente, você pode configurar uma entrada de registro para iniciar o SMB Multichannel mais rapidamente. Para obter mais informações, consulte o seguinte artigo do blog Blog Archive: Quanto tráfego precisa passar entre o cliente e o servidor SMB antes que o Multichannel realmente comece?.

O SMB Multichannel não agrega vários adaptadores de rede de 10 GbE

Um adaptador de rede de 10 GbE compatível com RSS às vezes é identificado como não compatível com RSS. Quando esse problema ocorre, o SMB usa apenas uma conexão TCP. Quando o SMB Multichannel usa adaptadores de rede compatíveis com RSS e não RSS, ele deve usar apenas os adaptadores de rede compatíveis com RSS.

Os adaptadores de rede de classe de servidor devem aparecer como compatíveis com RSS. Caso contrário, atualize o driver do adaptador de rede no site do fabricante e verifique novamente as configurações de RSS.

Talvez seja necessário desabilitar o RSS em ambos os adaptadores de rede para agregar a taxa de transferência. Para obter mais informações, consulte o seguinte artigo do blog Arquivo Compactado: Servidor de Arquivos do Windows Server 2012 Dica: Verifique se as interfaces de rede são compatíveis com RSS.

O adaptador de rede virtual no host não está funcionando muito bem

O adaptador de rede virtual no host não é compatível com RSS. Sem um adaptador de rede compatível com RSS, o SMB usa apenas uma conexão TCP. Esse comportamento ocorre quando você usa adaptadores de rede de 10 GbE, adaptadores de rede compatíveis com RSS e Agrupamento NIC.

Para solucionar esse problema, use vários adaptadores de rede virtual para garantir que você tenha várias conexões TCP. Para obter mais informações, consulte o seguinte artigo do blog Arquivo Compactado: Servidor de Arquivos do Windows Server 2012 Dica: Verifique se as interfaces de rede são compatíveis com RSS.

O Windows Server 2012 R2 registra periodicamente a ID de evento SMBClient 30818

Suponha que um computador baseado no Windows Server 2012 R2 use um adaptador de rede InfiniBand. Esse adaptador usa o recurso SMB Direct para dar suporte à comunicação RDMA (Acesso Remoto Direto à Memória) entre nós de cluster e hosts Hyper-V. Depois de reiniciar um host Hyper-V, o Windows pode registrar a ID de evento 30818 no caminho Logs de Aplicativos e Serviços/Microsoft/Windows/SmbClient no Visualizador de Eventos. Quando isso ocorre, você também pode ter problemas de desempenho.

No Windows Server 2012 R2, o serviço LanmanServer inicia automaticamente o serviço SmbDirect. No entanto, se o serviço LanmanWorkstation for iniciado primeiro e tentar abrir uma conexão RDMA antes que o serviço SmbDirect seja carregado, o Windows registrará a ID de evento 30818. Quando o cliente se comunica inicialmente com o servidor por TCP/IP, ele usa a interface RDMA. Portanto, nenhuma ação do usuário é necessária para recuperar.

A Microsoft está considerando fornecer uma solução para esse problema em uma versão futura do Windows Server.

Solução alternativa

Importante

Esta seção, método ou tarefa contém etapas que descrevem como modificar o Registro. Entretanto, sérios problemas poderão ocorrer caso você modifique o Registro incorretamente. Portanto, certifique-se de seguir essas etapas com atenção. Para maior proteção, faça backup do Registro antes de modificar, para poder restaurar se ocorrer um problema. Para obter mais informações sobre como fazer backup e restaurar o Registro, consulte Como fazer backup e restaurar o Registro no Windows.

Para contornar esse problema no Windows Server 2012 R2, configure o serviço SmbDirect para iniciar automaticamente. Para fazer isso, siga estas etapas:

  1. Abra o Editor do Registro e navegue até a seguinte subchave do Registro:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\smbdirect

  2. Clique com o botão direito do mouse na entrada Iniciar registro e selecione Modificar.

  3. Na caixa Dados do valor, altere o valor (o valor padrão é 3, o que significa sob demanda) para 2 (automático).

Depois de fazer essa alteração, você poderá reiniciar o computador sem as mensagens de ID de evento de log 30818 do Windows. Se o Windows continuar a registrar esses eventos, algum outro problema pode estar impedindo a inicialização da interface RDMA.

Quando você instala o Windows Server, o Windows registra a ID do evento 1

Quando você instala o Windows Server 2019, o Windows Server 2016 ou o Windows Server 2012 R2, o Windows registra a ID do evento 1. As informações do evento são semelhantes às seguintes:

Nome do log: Microsoft-Windows-SMBWitnessClient/Admin
Fonte: Microsoft-Windows-SMBWitnessClient
ID do evento:1
Nível: Erro
Descrição: Falha na inicialização do Cliente Testemunha com erro (o sistema não consegue encontrar o arquivo especificado.)

Se essa for uma nova implantação do Windows Server que não tenha funções ou recursos habilitados, você poderá ignorar esse evento com segurança.

Problemas conhecidos de SMB

Coleta de dados

Antes de entrar em contato com o Suporte da Microsoft, você pode coletar informações sobre o problema.

Pré-requisitos

  • Execute o TSS no contexto de segurança de uma conta que tenha privilégios de administrador no sistema local. Na primeira vez que você executá-lo, aceite o EULA. (Depois de aceitar o EULA, o TSS não solicitará novamente.)
  • Recomendamos que você use a política de execução do RemoteSigned PowerShell no LocalMachine escopo.

Observação

Se a política de execução atual do PowerShell não permitir que você execute o TSS, execute as seguintes ações:

  1. Defina a política de RemoteSigned execução para o nível do processo executando o Set-ExecutionPolicy -scope Process -ExecutionPolicy RemoteSigned cmdlet.
  2. Para verificar se a alteração entra em vigor, execute o Get-ExecutionPolicy -List cmdlet.

Essas permissões no nível do processo se aplicam apenas à sessão atual do PowerShell. Depois de fechar a janela do PowerShell na qual o TSS é executado, a permissão atribuída para o nível do processo é revertida para o estado configurado anteriormente.

Reúna informações importantes antes de entrar em contato com o suporte da Microsoft

  1. Baixe o TSS em todos os nós e expanda o arquivo para a pasta C:\tss .

  2. Abra a pasta C:\tss em uma janela do Prompt de Comando do PowerShell com privilégios elevados.

  3. Inicie os rastreamentos no cliente e no servidor executando os seguintes cmdlets:

    • Cliente:

      TSS.ps1 -Scenario NET_SMBcli
      
    • Servidor:

      TSS.ps1 -Scenario NET_SMBsrv
      
  4. Aceite o EULA se os rastreamentos forem executados pela primeira vez no servidor ou no cliente.

  5. Permitir gravação (PSR ou vídeo).

    Observação

    Se você coletar logs no cliente e no servidor, aguarde até que essa mensagem apareça em ambos os nós antes de reproduzir o problema.

  6. Reproduza o problema.

  7. Depois de reproduzir o problema, insira Y para concluir o registro de dados.

O TSS armazena os rastreamentos em um arquivo compactado na pasta C:\MS_DATA . Você pode carregar o arquivo na área de trabalho para análise.

Referências