A verdade sobre REALTEK

Mostrando 1 a 5 de 5 registros

2013-11-18 16:14:44
Guilherme Alves
Developer

Referencia - Source do DRIVER REALTEK no FreeBSD

The RealTek 8139 PCI NIC redefines the meaning of 'low end.' This is probably the worst PCI ethernet controller ever made, with the possible exception of the FEAST chip made by SMC. The 8139 supports bus-master DMA, but it has a terrible interface that nullifies any performance gains that bus-master DMA usually offers.

For transmission, the chip offers a series of four TX descriptor registers. Each transmit frame must be in a contiguous buffer, aligned on a longword (32-bit) boundary. This means we almost always have to do mbuf copies in order to transmit a frame, except in the unlikely case where a) the packet fits into a single mbuf, and b) the packet is 32-bit aligned within the mbuf's data area. The presence of only four descriptor registers means that we can never have more than four packets queued for transmission at any one time.

Reception is not much better. The driver has to allocate a single large buffer area (up to 64K in size) into which the chip will DMA received frames. Because we don't know where within this region received packets will begin or end, we have no choice but to copy data from the buffer area into mbufs in order to pass the packets up to the higher protocol levels.

It's impossible given this rotten design to really achieve decent performance at 100Mbps, unless you happen to have a 400Mhz PII or some equally overmuscled CPU to drive it.

---------------------------[ TRADUCAO ] -----------------------------

A placa de rede ethernet RealTek 8139 redefine o significado de "baixa qualidade". Esta eh provavelmente o pior controlador de rede ethernet ja fabricado, com uma possivel excessao para o FEAST, chip fabricado pela SMC. O 8139 suporta bus-master DMA, mas tem uma interface terrivel que anula completamente qualquer ganho de performance que o bus-master DMA possa oferecer.

Para transmissao, o chip oferece uma serie de quatro descritores de TX. Cada quadro a ser transmitido precisa estar em um buffer continuo, alinhado em um limite de uma longword (32-bit). Isso significa que nos quase sempre teremos que copiar mbufs para transmitir um quadro, com a excessao do caso improvavel em a) os pacotes caibam em um unico mbuf e b) o pacote esta alinhado em 32-bits dentro da area de dados do mbuf. A presenca de apenas quatro descritores significa que nos nunca teremos mais de quatro pacotes enfileirados para transmissao a cada momento.

A recepcao nao eh muito melhor. O driver precisa alocar uma grande area unica para o buffer (ate 64K de tamanho), onde o chip copiara os frames recebidos via DMA. Pelo fato de nao sabermos onde dentro desta regiao os pacotes recebidos vao iniciar ou terminar, nos nao temos alternativa a nao ser copiar os dados de dentro do buffer para mbufs para que possamos passar os pacotes para as camadas superiores de protocolo.

Eh impossivel devido a este design apodrecido realmente conseguir performance decente a 100Mbps, a nao ser que voce tenha um PII 400Mhz ou uma CPU igualmente poderosa para usa-la.

---------------------------[ OBSERVACOES ] -----------------------------

OBS: Esta observacao foi escrita ha anos atras, mas as limitacoes sao compartilhadas com toda a arquitetura realtek mais recente.

OBS2: A comparacao de 100mbps por 400Mhz de CPU eh apenas para FORWARDING, num trafego TCP alto, como o padrao de uso do SPEEDR, a situacao eh muito pior.

2013-11-18 16:37:10
Pablo Cardoso www.airconect.net

License Level: 8
Reply  

Me convenceu, irei trocar a minha hehe 1

2013-12-07 10:51:59
florestawiitelecom

License Level: 1
Reply  

Parabéns, belo post, mas ficou o vácuo de uma sugestão de placa (no caso aqui o importante é o chip set né?):
Eu ouvi falar muito bem das que tem chip set ateros, concordam????, tem alguma sugestão??

2013-12-09 12:26:51
Guilherme Alves
Developer
Reply  

Intel e Broadcom sao sempre escolhas a prova de falhas para servidores.
As atheros tb Sao otimas, mas preciso me aprofundar em que pe esta o Suporte no Fbsd pra elas..

2014-01-23 01:44:26
Martín

Reply  

Que tal Guillermo, la misma mala calidad en la electrónica, existe en la actualidad en los chips Gigabit que vienen integrados en las motherboards modernas? ej: Realtek 8111F en una ASUS P8Z77-M? o el 8111E en una MSI Z77MA-G45?

Gracias!!!

2014-02-18 00:40:53
Guilherme Alves
Developer
Reply  

Sim.. Martin.. Todo este hardware realtek eh voltado para uso residencial/baixo custo.

Com o aumento de demanda do usuario domestico, eh obvio que essas arquiteturas evoluiram muito, mas continuam sendo voltadas essencialmente para esse fim.

Mostrando 1 a 5 de 5 registros

To reply this post or create new ones you must login

Forgot Password?

*emphasis   **more emphasis**

(4 spaces)code

> quote

* List item
* Another list item

1. Ordered list item
2. Other ordered list item

# Fist level title (##, ###, ####)

[Link's Text](http://address.com)