Verificando a velocidade da sua placa de Rede
Autor: Filipe Motta | Publicado: 2012-05-03T20:36:00-03:00






Iniciarei uma série com alguns posts de ferramentas para análise de&nbsp;performance&nbsp;no linux. São conhecimentos bastante relevantes para o mercado de trabalho assim como engloba conhecimentos gerais no Linux que ajudarão a matar questões nas provas LPI.



Nesse post irei comentar algo básico mas que, várias vezes, noto que administradores de sistemas/rede não &nbsp;conhecem ou ficam meio perdido. Mostrarei como verificar a velocidade da sua placa de rede ( LAN type ) , qual IRQ usa, o tipo de chip, modo de operação...





O comando para verificar mensagens do kernel durante a inicialização é o dmesg ( cobrado em provas de certificação ).



Esse comando "loga" informações de hardware, drivers, módulos do kernel carregados, dentre outras informações durante a inicialização e é útil para detectar algum problema de hardware ou driver que não foi carregado durante o boot do sistema.



Como nossa intenção é procurar informações relativas a nossa placa de rede ( eth1 ), nesse caso, teremos que filtrar essa informação com &nbsp;comando grep.



filipemotta@localhost:~# &nbsp;dmesg | grep eth1







[ &nbsp; &nbsp;1.381128] e1000e 0000:03:00.0: eth1: (PCI Express:2.5GB/s:Width x1) e4:11:5b:ae:eb:b5

[ &nbsp; &nbsp;1.381222] e1000e 0000:03:00.0: eth1: Intel(R) PRO/1000 Network Connection

[ &nbsp; &nbsp;1.381395] e1000e 0000:03:00.0: eth1: MAC: 3, PHY: 8, PBA No: FFFFFF-0FF

[ &nbsp; &nbsp;8.570192] e1000e: eth1 NIC Link is Up 100 Mbps Full Duplex, Flow Control: None

[ &nbsp; &nbsp;8.570289] e1000e 0000:03:00.0: eth1: 10/100 speed: disabling TSO

[ &nbsp; &nbsp;8.571338] ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready

[ &nbsp; 18.888010] eth1: no IPv6 routers present




Como podem verificar, a modelo da minha placa de rede e o mais importante, a velocidade da minha placa de rede, o Link e o modo de operação, no caso 1000, 100Mbps &nbsp;e Full Duplex, respectivamente.



Bem, existe mais de uma maneira de você verificar essas informações sendo apresentado mais amigavelmente, uma delas é a ferramenta ethtool, uma ferramenta capaz de mostrar e manipular informações relativa a placa de rede tais como a velocidade da interface de rede, se a mesma está negociando de forma automática, características e status de uma foma geral.






filipemotta@localhost:~# ethtool eth1



Settings for eth1:

 Supported ports: [ TP ]

 Supported link modes: &nbsp; 10baseT/Half 10baseT/Full&nbsp;

  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;100baseT/Half 100baseT/Full&nbsp;

  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1000baseT/Full&nbsp;

 Supports auto-negotiation: Yes

 Advertised link modes: &nbsp;10baseT/Half 10baseT/Full&nbsp;

  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;100baseT/Half 100baseT/Full&nbsp;

  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1000baseT/Full&nbsp;

 Advertised pause frame use: No

 Advertised auto-negotiation: Yes

 Speed: 100Mb/s

 Duplex: Full

 Port: Twisted Pair

 PHYAD: 1

 Transceiver: internal

 Auto-negotiation: on

 MDI-X: off

 Supports Wake-on: pumbag

 Wake-on: g

 Current message level: 0x00000001 (1)

 Link detected: yes






Como podem notar, a saída desse comando é mais amigável e nos informa que a placa de rede suporta auto-negociação, que auto-negociação está habilitada e velocidade é de 100Mb/s, suporta até 1000Mb/s e está no modo de operação Full Duplex ( recebe e transmite simultaneamente ).



O comando ethtool é bastante poderoso e pode manipular várias informações da rede ethernet, como por exemplo a priorização de tarefas de rede pela CPU ( ex.: integridade, fragmentação do pacote... ).





Para maiores informações sobre o ethtool, recomendo a leitura do manual do pacote.





filipemotta@localhost:~# man ethtool