NVMe over TCP vs RDMA: Desempenho ou Simplicidade no Data Center?

      Arthur Costas 9 min de leitura
      NVMe over TCP vs RDMA: Desempenho ou Simplicidade no Data Center?

      NVMe/TCP ou RoCE v2? Descubra qual protocolo NVMe-oF vence a batalha entre latência ultra-baixa e facilidade de implementação para seu storage em 2025.

      Compartilhar:

      Você investiu uma fortuna em um All-Flash Array repleto de drives NVMe de última geração. O armazenamento local voa, entregando milhões de IOPS. Mas no momento em que você tenta compartilhar esse armazenamento pela rede, a performance despenca. O culpado? Provavelmente o protocolo de transporte.

      Durante anos, o Fibre Channel foi o rei do data center, e o iSCSI, o cavalo de batalha barato. Mas nenhum dos dois foi feito para a era do NVMe. É aqui que entra o NVMe over Fabrics (NVMe-oF), a tecnologia que estende o protocolo NVMe através da rede, mantendo a latência em níveis microscópicos.

      A guerra atual não é mais "se" vamos usar NVMe-oF, mas "como". De um lado, temos o RDMA (RoCE v2), focado em performance bruta e latência zero. Do outro, o NVMe over TCP, que promete democratizar a velocidade usando a infraestrutura que você já tem.

      Qual deles merece o lugar no seu rack? Vamos desmontar essa arquitetura.

      Resumo em 30 segundos

      • RDMA (RoCE v2): Oferece a menor latência possível e baixo uso de CPU ao pular o kernel do sistema operacional, mas exige switches caros e configuração de rede complexa (Lossless Ethernet).
      • NVMe over TCP: Funciona na infraestrutura Ethernet padrão existente. É mais barato e simples de implementar, mas consome mais ciclos de CPU do host e tem uma latência ligeiramente maior.
      • O Veredito: Use RDMA para cargas de trabalho de HPC e IA onde cada microssegundo conta. Use TCP para virtualização geral, bancos de dados convencionais e ambientes onde a simplicidade operacional supera o ganho marginal de performance.

      O gargalo mudou de lugar

      Antigamente, o disco mecânico (HDD) era o elo mais fraco. O protocolo de rede (TCP/IP ou Fibre Channel) era muito mais rápido que a agulha lendo o prato magnético. Com o advento do Flash e do protocolo NVMe, a situação se inverteu. O disco agora é capaz de responder mais rápido do que a pilha de rede consegue processar a solicitação.

      O NVMe-oF resolve isso encapsulando comandos NVMe em pacotes de rede, eliminando a tradução pesada do SCSI. Mas o "veículo" que transporta esses pacotes define a experiência final.

      Comparação visual entre a pilha de protocolos legada (SCSI) cheia de traduções e a via expressa direta do NVMe over Fabrics. Figura: Comparação visual entre a pilha de protocolos legada (SCSI) cheia de traduções e a via expressa direta do NVMe over Fabrics.

      RDMA e RoCE v2: A busca pela latência zero

      O RDMA (Remote Direct Memory Access) é o padrão ouro para performance. A ideia é simples e genial: permitir que uma máquina leia ou escreva diretamente na memória de outra, sem envolver a CPU do sistema operacional remoto.

      No contexto de Ethernet, a implementação dominante é o RoCE v2 (RDMA over Converged Ethernet).

      Como funciona o "Kernel Bypass"

      Em uma transferência de rede normal, a CPU precisa interromper o que está fazendo, copiar os dados do buffer da rede para o kernel, e depois para o espaço do usuário. Isso gera latência e queima ciclos de processamento.

      O RDMA usa uma técnica chamada Kernel Bypass (ou Zero Copy). A placa de rede (NIC) conversa diretamente com a memória da aplicação. A CPU fica livre para rodar suas VMs ou bancos de dados, enquanto os dados fluem.

      💡 Dica Pro: Para usar RoCE v2, tanto o Initiator (servidor) quanto o Target (storage) precisam de placas de rede compatíveis com RDMA. Não tente fazer isso com NICs genéricas de 1GbE.

      O custo oculto: Ethernet sem perdas

      Aqui está a pegadinha. O protocolo RDMA odeia perda de pacotes. Se um pacote se perde, o mecanismo de retransmissão é doloroso e a performance cai de um penhasco.

      Para evitar isso, você precisa implementar uma Lossless Ethernet (Ethernet sem perdas). Isso exige configurar PFC (Priority Flow Control) e ECN (Explicit Congestion Notification) nos seus switches.

      Basicamente, o switch precisa dizer ao servidor: "Pare de mandar dados agora ou vou dropar pacotes!". Configurar PFC corretamente em uma rede grande é notoriamente difícil e propenso a erros humanos que podem paralisar o tráfego.

      O ecossistema complexo do RoCE v2: Switches com controle de fluxo (PFC) ativo para garantir uma rede 'Lossless'. Figura: O ecossistema complexo do RoCE v2: Switches com controle de fluxo (PFC) ativo para garantir uma rede 'Lossless'.

      NVMe over TCP: A revolução da simplicidade

      Enquanto o mundo de HPC (High Performance Computing) brigava com configurações de switches, gigantes como a Meta (Facebook) e a Intel impulsionaram o desenvolvimento do NVMe over TCP.

      A premissa é: O TCP/IP é a linguagem universal da internet. Ele é robusto, escalável e, o mais importante, sabe lidar com perda de pacotes e congestionamento nativamente.

      Por que o TCP está ganhando a guerra

      1. Hardware Padrão: Funciona com qualquer switch e qualquer placa de rede Ethernet moderna. Não precisa de suporte a DCB (Data Center Bridging) ou PFC.

      2. Roteamento Fácil: Como usa o protocolo TCP padrão (porta 4420 ou 8009 geralmente), ele atravessa roteadores e sub-redes sem a dor de cabeça do RoCE, que é mais sensível a saltos de Camada 3.

      3. Custo: Elimina a necessidade de switches "Enterprise Plus" dedicados apenas para o tráfego de storage.

      O mito da "CPU alta"

      A principal crítica ao NVMe/TCP sempre foi o uso excessivo da CPU para processar a pilha TCP (cálculo de checksums, reordenamento de pacotes).

      Isso era verdade em 2018. Hoje, a realidade mudou.

      • CPUs Modernas: Têm instruções dedicadas e muito poder de sobra.

      • SmartNICs e Offload: Placas de rede modernas (como as baseadas em chips Broadcom ou NVIDIA ConnectX) fazem "TCP Offload", assumindo parte do trabalho pesado, aproximando a eficiência do TCP à do RDMA.

      A evolução do processamento: Como o TCP Offload nas placas de rede modernas alivia a carga da CPU no NVMe over TCP. Figura: A evolução do processamento: Como o TCP Offload nas placas de rede modernas alivia a carga da CPU no NVMe over TCP.

      Batalha de Especificações: Lado a Lado

      Para quem gosta de dados concretos, aqui está a comparação direta entre as tecnologias no cenário atual de 2025/2026.

      Característica NVMe over RDMA (RoCE v2) NVMe over TCP
      Latência Adicional Extremamente Baixa (< 5 µs) Baixa (10-20 µs típicos)
      Uso de CPU (Host) Mínimo (Offload total) Médio (Depende da NIC)
      Complexidade de Rede Alta (Exige PFC/ECN/Lossless) Baixa (Plug & Play)
      Custo de Hardware Alto (Switches e NICs específicos) Baixo (Hardware Commodity)
      Escalabilidade Limitada pela complexidade da L2/L3 Infinita (Roteável como a Web)
      Tolerância a Perdas Baixa (Performance degrada rápido) Alta (TCP retransmite bem)

      ⚠️ Perigo: Não subestime a complexidade do PFC (Priority Flow Control) no RoCE. Uma configuração errada pode causar o efeito "Head-of-Line Blocking", onde um fluxo congestionado trava todo o tráfego do switch, derrubando não só o storage, mas outras aplicações.

      Cenários de Uso: Qual escolher?

      A decisão não é sobre qual é "melhor", mas qual resolve seu problema sem criar novos.

      Quando escolher RDMA (RoCE v2):

      • HPC e Supercomputação: Onde simulações científicas exigem latência absoluta mínima.

      • Treinamento de IA/ML: Clusters de GPU (como NVIDIA DGX) usam RDMA intensivamente para alimentar dados nas GPUs sem gargalos.

      • Storage Back-end: Comunicação entre controladoras de um mesmo storage array (East-West traffic).

      Quando escolher NVMe over TCP:

      • Virtualização Geral (VMware/Hyper-V): A diferença de 10µs é imperceptível para 99% das VMs corporativas.

      • Cloud Pública e Privada: A facilidade de automação e a robustez do TCP vencem a complexidade do RDMA em escala.

      • Edge Computing: Onde você não tem engenheiros de rede especializados para debugar configurações de switch PFC.

      • Bancos de Dados Convencionais: SQL Server, Oracle e NoSQL rodam perfeitamente bem sobre TCP com latências muito inferiores ao iSCSI antigo.

      Árvore de decisão visual: Escolhendo entre a complexidade de alta performance do RDMA e a universalidade do NVMe/TCP. Figura: Árvore de decisão visual: Escolhendo entre a complexidade de alta performance do RDMA e a universalidade do NVMe/TCP.

      O futuro é híbrido (mas tende ao TCP)

      A indústria de armazenamento está votando com a carteira. Grandes fabricantes como Dell, NetApp e Pure Storage já tratam o NVMe over TCP como cidadão de primeira classe. O suporte nativo no VMware vSphere 7.0 Update 3 e versões posteriores solidificou o TCP como o sucessor espiritual do iSCSI para a era Flash.

      Enquanto o RDMA continuará sendo a Fórmula 1 para nichos específicos, o TCP é o veículo que levará o NVMe para as massas. A simplicidade operacional quase sempre vence a performance bruta no longo prazo. Se você não tem uma equipe de rede dedicada apenas para monitorar fluxos de prioridade nos switches, a escolha segura e performática é o TCP.


      Perguntas Frequentes (FAQ)

      Preciso de placas de rede especiais para usar NVMe over TCP? Não. O NVMe/TCP funciona com qualquer placa de rede Ethernet padrão (NIC) e switches comuns, o que reduz drasticamente o custo inicial em comparação ao RDMA. No entanto, placas com recursos de offload podem melhorar a performance.
      O NVMe over RoCE é sempre mais rápido que o TCP? Em latência pura e throughput máximo, sim. O RoCE v2 oferece latências próximas ao armazenamento local (sub-10µs adicionais). Porém, para muitas cargas de trabalho generalistas, a diferença prática pode ser imperceptível para o usuário final.
      Qual a maior desvantagem de implementar RoCE v2? A complexidade da rede. O RoCE exige uma configuração de 'Lossless Ethernet' (PFC e ECN) nos switches para evitar perda de pacotes. Manter essa configuração estável em escala é difícil e propenso a erros que podem paralisar a rede.
      #NVMe-oF #NVMe over TCP #RoCE v2 #Storage Networking #Latência de Storage #vSAN ESA #Infraestrutura de Data Center
      Arthur Costas
      Assinatura Técnica

      Arthur Costas

      Especialista em FinOps

      "Transformo infraestrutura em números. Meu foco é reduzir TCO, equilibrar CAPEX vs OPEX e garantir que cada centavo investido no datacenter traga ROI real."