Alguém por favor pode elaborar a diferença entre os vários RX packets
campos na ifconfig
saída?
Por exemplo, digamos que eu corra ifconfig
e veja o seguinte:
eth0 Link encap:Ethernet HWaddr AA:BB:CC:DD:EE:FF
inet addr:1.1.1.1 Bcast:1.1.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:202723544 errors:0 dropped:4959 overruns:0 frame:37
TX packets:158354057 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4261083782 (3.9 GiB) TX bytes:1224803677 (1.1 GiB)
Interrupt:83 Memory:f6bf0000-f6c00000
Qual é a diferença entre errors:
dropped:
overruns
eframe:
Meu palpite neste momento (com base em algumas pesquisas vagas) é que frame:
pertence especificamente a falhas de CRC quando o nic analisa os quadros de entrada e essa errors:
é uma categoria genérica mais ampla. Então, novamente ... se fosse esse o caso, eu esperaria que ambos os campos mostrassem números.
fonte
Eu sei que esta é uma pergunta de 1 ano de idade, mas é a primeira no Google, então talvez eu possa adicionar 5 centavos a ela.
Primeiro eu não estava ciente desta regra mod 8 no campo de quadro ... É uma regra de driver ou regra de kernel?
Na pouca experiência que tenho, esses números são bastante genéricos e mais informações podem ser obtidas em
ethtool
(se o driver suportar) ex: this is fromwatch
command.Dependendo do driver, haverá campos diferentes
ethtool
e osifconfig
campos também podem apontar para quadros de tamanho menor ou maior.Se o seu NIC e driver suportá-lo, você pode (ou deve) fazer o ex:
para obter mais informações (permita que as informações sejam mostradas no ethtool). Estou usando o driver macb aqui ... então verifique o
ethtool
seu driver.Isso é o que me ajuda a entender normalmente o que está acontecendo.
Às vezes, não há erros, mas os pacotes estão corrompidos ... então é mais um problema PHYsical ou de driver ... e às vezes os sniffers mostram que tudo está correto, mas há um problema depois de chegar ao driver / kernel (é o caso acima na realidade).
Um pouco mais pode ser obtido em
netstat -s
, ou se você colocar isso em um script (para pequenos sistemas embarcados):pois
netstat -s
pode não estar disponível.fonte
ethtool -S