Desonerando Carga da CPU com a Tecnologia TOE :: Admirável Mundo Novo




Muito Bem Vindo

Prezado Leitor, a proposta desse Blog é compartilhar conhecimento com as pessoas que trabalham com Linux, Asterisk, OpenSER, e com tecnologia de voz sobre a rede IP em geral, através de tutoriais, dicas, howto, notícias entre outros assuntos.

Atente para termo de uso do conteúdo do blog no rodapé da página.

sexta-feira, 25 de julho de 2008

Desonerando Carga da CPU com a Tecnologia TOE


A tecnologia TOE (TCP/IP Offload Engine), não confundir com ToE (que significa Timing over Ethernet), tal característica
me chamou a atenção na especificação de servidores. Então procurei aprofunda-me sobre a mesma e cheguei até o site da empresa IPBLAZE.

Por essa empresa ser desenvolvedora da tecnologia TOE para cartão de rede Ethernet, o material do seu site possui conotação de exposição comecial da tecnologia, mas pela
qualidade do conteúdo da sua explanação sobre a tecnologia está aqui em meu Blog uma versão com status de artigo.

A razão do meu interese por essa tecnologia, é que ela promete melhorar o
throughput da conexão de rede, aumentar substancialmente desempenho do servidor e reduzir drasticamente a latência. E tais características são de fundamental importância para aplicações críticas de tempo de resposta como aplicações de Voz sobre IP.

Para mim, tal tecnologia deve constar na especificação de servidores para PABX IP Asterisk, OpenSER e outras aplicações sensíveis a latência, dado ao ganho de desempenho que ela pode proporcionar em geral no sistema. Então, tal especificação é altamente recomendada para sistema de voz sobre IP.




Desempenho da Tecnologia TOE

Fonte original inglês: site da empresa IPBLAZE (http://www.ipblaze.dk)
Escrito por Andreas Magnusson


Introdução

A necessidade de redes com alta velocidade é fator de sobrevivência. Essa tendência não é somente ditada por supercomputadores, clusters de servidores, tecnologias de mapeamento de imagem médica tão somente, mas também exigências para vídeo de alta resolução e streaming de áudio. O explosivo crescimento da Telefonia IP e a próxima geração de Vídeo Conferência IP estão tudo puxando a demanda por aumento fortíssimo de banda.

Crescimento da Demanda vs Melhoramento da Capacidade dos Hardwares

Hoje em dia computadores em cluster
mais do que nunca são comuns e a existência de uma variedade de escolhas para a sua interconexão. A escolha certa para uma instalação particular dependerá de uma variedade de fatores, incluindo preço, alto desempenho, escalabilidade, etc. As tecnologias mais populares de rede disponíveis hoje incluem a Ethernet Gigabit, Ethernet 10 Gigabit, Myrinet, SCI, Quadrics e InfiniBand.


A moderna supercomputação está passando por uma drástica mudança de conceito, saindo dos sistemas monolíticos tradicionais de supercomputação para seguir na direção de uma nova geração de sistemas usando computadores "comerciais fora do shelf”, fortemente integrado com System Area Networks (SANs) de alto desempenho. No conjunto, esses computadores e redes de interconexão se integram para formar um supercomputador com memória distribuída ou cluster que oferecem significativamente melhor preço/desempenho do que os supercomputadores tradicionais.

A Tecnologia TOE no Centro da Rede de Interconexão de Sistemas de Alta Desempenho



Ethernet 1 Gigabit e Ethernet 10 Gigabit

A Ethernet se tornou incrivelmente popular nos últimos 25 anos. A Ethernet substituiu muitas interfaces proprietárias e se tornou um padrão de fato com um enorme ecossistema em torno de si. A Ethernet implica no possível risco de perda de pacotes e o protocolo TCP é adicionado no topo para fornecer transferência de dados confiável usando retransmissão em caso de perda de pacotes. A alta velocidade de processamento do protocolo TCP (acima de 5 Mbit/s) requer uma CPU potente. O TOE (TCP Offload Engine - Mecanismo que Desonera a CPU do Sistema de fazer o Processamento da Pilha TCP/IP e Transfere tal processamento para o Hardware da Placa de Rede Ethernet) resolve essas questões executando o processamento do protocolo TCP em hardware.


Integração da Tecnologia TOE com os Sistemas Atuais

A rede Ethernet de algum tipo sempre foi usada entre computadores do cluster e mesmo hoje está presente em quase todos os clusters. Enquanto que a Fast Ethernet era normalmente usada como a interconexão de alta velocidade anos atrás, ela ficou relegada a rede de serviço atualmente em muitos sistemas.

Uma questão significativa com Ethernet sempre foi relativamente a alta carga de consumo da CPU pelo processamento da pilha TCP/IP inteira e a alta latência comparada
relativamente com outras tecnologias de rede. Essa questão era fator enormemente limitante no desempenho em sistemas passados. Um outro fator limitante com a Ethernet no mundo de cluster sempre foi o switch. Já que a arquitetura Ethernet subjacente exige switches rápidos que possa assumir o peso total de roteamento de pacotes que os switches Ethernet precisam para manter tabelas inteiras de roteamento e serem capazes de fazer cálculos de rotas no compasso da velocidade de transmissão.

Além do mais, grandes pressões de mercado frequentemente fizeram que os switches incluissem funcionalidades extras como roteamento baseado na camada 3 e superior que não são necessários no mundo de cluster. Essas questões já foram sanadas por alguns dos fabricantes de switch.



Solução Ethernet de Custo Benefício e Baixa Latência

A IPBlaze apresenta uma solução TOE de alto desempenho em Ethernet Gigabit com muito baixo latência. A tecnologia TOE da IPBlaze é atualmente implementada em FPGA e também é mirada por implementações ASIC.

Latência baixa é importante para desempenho de sistema para um grande número de aplicações e o mesmo se aplica para aplicações intensiva em CPU.



Plataforma de Teste

A plataforma de teste usada está usando um processador Pentium M 1.6GHz da Intel. A interface de host é uma interface PCI-X 66MHz. A placa TOE é baseado em um Xilinx Vertex II FPGA com MAC externo e PHY.

Comparação de Desempenho da Tecnologia TOE



Modelo de Performance

Um modelo de desempenho foi desenvolvido para predizer o desempenho do sistema, incluindo latência fim a fim. A latência fim a fim depende de inúmeros fatores. Os fatores mais importantes são taxa de linha, banda do barramento PCI/-X/-e, latência PCI/-X/-e, desempenho de CPU e eficiência de implementação.



Medidas de Latência

As medidas mostram melhoras de desempenho significativas usando o TOE IPBlaze. A implementação atual FPGA usa um MAC externo que aumenta a latência. Um número de latência planejada e otimização de desempenho estão em andamento.

A latência TOE é comparada com uma solução NIC padrão e com tecnologia SCI.

O protocolo wire é padrão TCP/IP em Ethernet e as medidas são baseadas na Ethernet 1 Giga.

As medições de desempenho foram feitas pelas seguintes ferramentas:

* netperf para teste performance;
* A plataforma de teste está no Linux 2.6 e inúmeras ferramenats Linux são usadas para verificar a exatidão das medições (netstat, gnome-system-monitor, ifconfig);
* chip scope para análise exata de tempo de transações PCI e outros tempos de processamento relevantes na FPGA da IPBlaze (chip scope em uma ferramenta não-intrusiva para amostragem de sinais com precisão do clock).



Otimizações

As diferenças entre as implementações TOE 1G FPGA e ASIC da IPBlaze se relaciona com a integração do MAC no ASIC e aumento da taxa de clock. Existem inúmeras otimizações que pode ser implementadas se for decidido (dependente da definição e requirimentos de produto).



Solução 10G

Os dados de desempenho para a solução TOE/NIC 10G leva vantagens do ganho de performance alcançado por:

* Mais baixa latência de transmissão devido a transmissão 10 vezes mais rápida;
* Interface de host PCI-e x8;
* Taxa de clock mais elevada devido à implementação em ASIC em vez de FPGA.

O core TOE e o software permancem o mesmo.



Solução 2.5G

Do ponto de vista de desempenho uma solução Ethernet 2.5G é também interessante. Os Phy’s 2.5G estão disponível um custo muito atrativo. Uma das questões chaves é a disponibilidade de portas Ethernet comutadas com 2.5G. A latência de switch será também relativamente baixa.



Switches Ethernet

Os switches Ethernet 1G usados nesse teste tem um delay de store e forward, por padrão. O modo Cut-Through é suportado por alguns chips de switch. A latência de switch que nós temos medidos em switches Ethernet 1G de baixo custo são de aproximadamente 1,5 us + 1,1*tempo de transmissão de pacotes. É possível configurar o chip do switch para operar no modo Cut-Through (sem atraso o store-and-forward). Isso não foi verificado por medições ainda.




Conclusão

A boa notícia é que com a Ethernet Gigabit com TOE da IPBlaze, o mercado tem agora uma boa escolha para fazer interconexão de alta velocidade a um preço muito atrativo. A Ethernet Gigabit pode ser agora transformada em uma rede de escolha para interconexão. E o seu suporte de software sólido e em toda parte torna-lhe uma escolha boa para aplicações que exigem também desempenho máximo de comunicação.

Inúmeras otimizações de desempenho pode ser aplicadas ao sistema se for preciso.




Nenhum comentário:




Creative Commons License
Admirável Mundo Novo: Tudo Sobre Asterisk, OpenSER, Linux e Tecnologias de Voz sobre IP
by Cléviton Mendes de Araújo is licensed under a Creative Commons Atribuição 2.5 Brasil License.