BLOG

Software e Alto Desempenho: Por que eles não precisam ser mutuamente exclusivos

Miniatura de Tom Atkins
Tom Atkins
Publicado em 03 de março de 2020

Neste ponto, os benefícios de migrar de ambientes dominados por hardware para arquiteturas definidas por software e nuvem são bem conhecidos: maior escalabilidade, agilidade operacional e flexibilidade econômica, para citar apenas alguns. Mas também há o equívoco comum de que, para obter esses ganhos, as organizações são forçadas a fazer um sacrifício em relação ao desempenho de seus aplicativos. Afinal, como uma infraestrutura virtualizada e compartilhada pode chegar perto de oferecer o mesmo desempenho que um hardware personalizado e dedicado?

E embora muitos aplicativos novos, sem estado e nativos da nuvem sejam projetados para serem escalonados horizontalmente conforme a demanda por eles cresce, ainda existem milhares de cargas de trabalho monolíticas com requisitos com estado que os restringem ao escalonamento vertical para atender à demanda crescente. Para esses aplicativos, maior desempenho de software (e escalabilidade) é crucial, pois muitos não serão — ou simplesmente não podem — ser rearquitetados à medida que migrarem para a nuvem.

Entre no BIG-IP Virtual Edition (VE)

Desde o início do BIG-IP VE, há uma década, uma das perguntas mais frequentes feitas pelos clientes é algo como: " Qual nível de escalabilidade e desempenho de processamento de tráfego provavelmente experimentaremos com o VE em comparação com seu hardware? " Anos atrás, a diferença entre os dois era considerável, pois os primeiros VEs tinham como único objetivo substituir o hardware de entrega de aplicativos que dava suporte a aplicativos específicos de baixo tráfego. Naquela época, o VE só era capaz de processar cerca de 1 Gbps de tráfego, lidando com uma fração das solicitações e conexões L4/L7 possíveis no hardware.

No entanto, avançando para os dias atuais, e dadas as condições certas, os VEs agora podem processar mais de 100 Gbps de tráfego de aplicativos e corresponder a todos os dispositivos, exceto os de melhor desempenho, em outras métricas de processamento de tráfego. Neste artigo, daremos uma olhada em alguns aprimoramentos recentes de VE e tecnologias de aceleração suportadas que ajudaram a fechar a lacuna de desempenho em relação às suas contrapartes físicas, ao mesmo tempo em que daremos uma prévia do próximo projeto de otimização de VE no qual estamos trabalhando com SmartNICs.

  1. Drivers de modo de pesquisa VE personalizados que otimizam a virtualização de E/S de raiz única (SR-IOV)

    Para aqueles que não estão familiarizados com os fundamentos da virtualização, o conceito principal envolve um servidor físico que hospeda uma camada de software (SO/hipervisor) que emula as funções do hardware subjacente e permite que várias máquinas virtuais distintas (BIG-IP VE, por exemplo) com sistemas operacionais potencialmente distintos sejam executados sobre ele. Embora sejam excelentes para otimizar a utilização de recursos do servidor físico e permitir a mobilidade do aplicativo, a camada adicional do hipervisor e o switch virtual associado aumentam a latência e prejudicam o desempenho, pois as solicitações devem passar por ele com todas as cópias e interrupções associadas.

    No entanto, o uso de SR-IOV permite que o VE interaja diretamente com a interface de rede (NIC) no servidor físico, ignorando a camada de switch virtual e melhorando a latência e o desempenho. Embora SR-IOV seja uma tecnologia bastante comum atualmente (com suporte da maioria dos fornecedores de NIC), os drivers convidados que vêm incluídos no kernel do sistema operacional ou aqueles fornecidos pelos fornecedores de NIC são genéricos e não otimizados especificamente para BIG-IP. É por isso que a F5 também investiu pesadamente no desenvolvimento de drivers de modo de pesquisa VE para uma gama de adaptadores NIC líderes , ajudando a acelerar o processamento de pacotes VE ao usar SR-IOV. É essa abordagem que permitiu que os VEs atingissem taxas de transferência L4 de até 20 Gbps na AWS (usando o AWS Elastic Network Adapter em instâncias Gen5), até 10 Gbps no Azure (usando o Azure Accelerated Networking) e excedessem 85 Gbps em ambientes de nuvem privada (usando o Mellanox CX5 100G NIC ).

    Além disso, é possível atingir mais de 100 Gbps realizando agregação de links, que basicamente combina várias portas NIC distintas para criar um único caminho de dados de alto rendimento. Usando essa abordagem, você pode aprender como um único VE atingiu 108 Gbps usando três NICs Intel de 40 G neste artigo do DevCentral.

  2. Descarregando o processamento criptográfico com a Intel Quick Assist Technology (QAT)

    Bem mais da metade do tráfego da web agora é criptografado e, com o crescimento explosivo de dispositivos de IoT e o movimento global para 5G, a quantidade de dados que precisa ser criptografada deve aumentar exponencialmente. Operando dentro de uma arquitetura de proxy completo entre clientes e servidores, o BIG-IP VE descriptografa todo o tráfego criptografado, permitindo que ele inspecione, analise e bloqueie cargas maliciosas antes de criptografar novamente os dados e roteá-los para o destino desejado. E embora o VE tenha sido otimizado para fornecer criptografia baseada em software de alto desempenho, esse processo ainda pode ser um fardo para os recursos da CPU, reduzindo o número de ciclos de processamento disponíveis para outras tarefas L7, iRules ou aplicação de políticas.

    Para atenuar esse efeito em cargas de trabalho com requisitos significativos de processamento criptográfico, o VE transfere a criptografia para o Intel QAT, um acelerador de hardware desenvolvido especificamente para processamento criptográfico e compactação. Ao fazer isso, o VE consegue descarregar essas tarefas que consomem muita CPU, liberar ciclos de computação e aumentar o desempenho geral. Provas disso podem ser encontradas neste estudo recente sobre o impacto do uso de QAT com VE, que mostrou:

    • Redução de utilização da CPU de até 45%
    • Aumento da produção em massa de até 200%
    • Aumento de até 500% nas transações por segundo (TPS)
  3. Introdução de VEs de alto desempenho sem limitação
  4. Antes da disponibilidade dos VEs de alto desempenho da F5, todos os VEs usavam um modelo de licença com taxa de transferência limitada, em que as licenças eram alinhadas para definir níveis de transferência e quantidade de CPUs (200 Mbps e 2 vCPUs, por exemplo). Para aplicativos menores, uma instância de 25 Mbps provavelmente seria suficiente ou, inversamente, para aplicativos com alta demanda, a maior instância de 10 Gbps pode ser mais apropriada.

    Mas e os aplicativos com demandas maiores? Ou aqueles com requisitos imprevisíveis? À medida que a F5 passou a oferecer suporte a NICs de maior largura de banda e exceder 10 Gbps, introduzimos VEs de alto desempenho que eram licenciados de acordo com o número de vCPUs que tinham permissão para usar. O desempenho máximo atingível com VEs de alto desempenho depende do número de vCPUs atribuídas a ele — de 8 vCPUs a 24 vCPUs em incrementos de 4 vCPUs. Além de permitir que o VE extraia até o último "pacote por segundo" de cada CPU, essa abordagem também oferece mais suporte a casos de uso intensivo de CPU, incluindo mitigação de DDoS e criptografia SSL/TLS.

    Saiba mais sobre os recursos do VE de alto desempenho na ficha técnica do BIG-IP VE.

  5. Futuro – Mitigação de DDoS em hiperescala usando um SmartNIC da Intel
  6. Os ataques de negação de serviço distribuído (DDoS) continuam sendo uma das formas mais eficazes e amplamente utilizadas de ataque cibernético, com todos, desde jogadores online frustrados até equipes cibernéticas de estados-nação, utilizando-os para colocar aplicativos e serviços direcionados offline. Potencialmente usando milhares de conexões diferentes de máquinas localizadas ao redor do mundo, esses ataques podem sobrecarregar rapidamente as soluções de segurança, especialmente aquelas com capacidade insuficiente para mitigá-los. E com a transição global para o 5G, os ataques DDoS só vão aumentar em tamanho, gravidade e complexidade, pois fica mais fácil formar botnets enormes e que esgotam recursos com menos dispositivos.

    Felizmente, no entanto, em breve você poderá descarregar funções específicas que exigem muita CPU, incluindo mitigação de DDoS do BIG-IP VE para o Intel (N3000 Programmable Acceleration Card) — um SmartNIC com Field Programmable Gate Array (FPGA) incorporado. Quando programado corretamente pela F5, aproveitando nossa ampla experiência de mais de 10 anos usando FPGAs, este SmartNIC é capaz de aumentar exponencialmente as capacidades de mitigação de DDoS da VE. De fato, os primeiros testes da F5 mostraram que essa solução combinada será capaz de suportar um ataque DDoS 70 vezes maior em magnitude do que o VE usando apenas CPU, ajudando a manter seus aplicativos e rede seguros.

    Espera-se que essa integração esteja disponível para o público em geral ainda este ano, e informações adicionais estão disponíveis neste resumo da solução .

Recursos adicionais