Erros de interface Ethernet

10

A interface Ethernet dos meus servidores Ubuntu que se conecta ao multiplexador do ISP mostra erros. Aqui está o instantâneo:

          RX packets:204564288 errors:3193970 dropped:0 overruns:0 frame:3138402
          TX packets:29305799 errors:38752 dropped:0 overruns:0 carrier:38762
          collisions:2205053 txqueuelen:1000

A interface do Ubuntu é capaz de full duplex, mas negocia apenas a conexão half duplex. Quando conectei um dispositivo diferente (um roteador) ao MUX, ele também mostrou esses erros. A largura de banda atribuída é de 50 mbps, mas recebo apenas 20 mbps. O ISP reluta em mudar de dispositivo (parece um switch ou hub ethernet) no MUX. Os engenheiros do ISP culpam isso por minha culpa. Mas verifiquei com mais de 3 dispositivos, todos mostraram erros. Portanto, existem ferramentas para o Linux que eu possa usar para investigar profundamente as causas desses erros ou há algo que eu possa fazer para reconfigurar a interface do meu servidor para se livrar desses erros?

nixnotwin
fonte

Respostas:

8

É muito provável que você tenha uma incompatibilidade duplex por conta do ISP codificar seu lado para 100-Full, essencialmente desabilitando a negociação automática no ISP Ethernet PHY.

Com o ISP definido como 100-Full e o seu lado permanecendo em auto / auto (um palpite, mas comum), a negociação automática do seu lado configurará a interface para 100-Half - uma incompatibilidade duplex como o lado do ISP permanecerá 100 cheio.

Consertar

Você pode corrigir o problema codificando seu Ethernet PHY para 100-Full - ou especificamente o que o ISP estiver definido. A maioria dos ISPs usa 100-Full.

Detalhe Adicional

Com a incompatibilidade duplex de 100 Cheio a 100 Metade, o lado 100 Cheio desabilita o CSMA / CD, enquanto o CSMA / CD permanece em vigor no lado 100 Metade. O lado 100-Full transmite sem levar em consideração se o meio é ou não livre. O lado 100-Half realiza verificações e retirada do CSMA / CD, conforme definido pelo CSMA / CD. É por isso que você só pode atingir 20 Mb / s no que deve ser um circuito da Internet de 50 Mb / s . O recuo do CSMA / CD, devido às colisões de detecção do lado de meia metade, está limitando o rendimento.

Ao codificar a interface como 100-Full para corresponder ao ISP, os dois lados terão o CSMA / CD desativado; portanto, a detecção de retirada e colisão será desativada e você deverá obter números muito mais próximos da taxa de dados do circuito de Internet de 50 Mb / s.

História

Muitos ISPs codificam suas transferências Ethernet PHY, pois houve um tempo em que era muito mais confiável fazê-lo. Quando o padrão Fast Ethernet original 802.3u de 100 Mb / s foi lançado, a negociação automática de velocidade e o duplex estavam presentes, mas não eram necessários . Não foi até o padrão 802.3z 1 Gb / s Gigabit Ethernet quando a negociação automática era exigida pelo padrão.

Muitos engenheiros de rede têm conceitos errados sobre negociação automática. O maior equívoco é que a negociação automática pode negociar adequadamente a velocidade e o duplex se apenas um lado implementar a negociação automática. Isso é falso - como você viu.

A razão para isso provavelmente decorre do seguinte - se um lado é codificado em 100-Full, o outro lado executando a negociação automática sempre parece descobrir a parte dos 100 Mb / s. O mesmo se um lado estiver codificado para 10-Full - o outro lado executando a negociação automática pode descobrir a parte de 10 Mb / s. A capacidade de determinar a velocidade do link é de um recurso chamado detecção paralela que tenta o sinal da camada física recebida em todas as velocidades de link suportadas localmente até encontrar uma correspondência. No entanto, a detecção paralela funciona apenas para a velocidade, não para a correspondência dúplex. É por isso que podem ocorrer incompatibilidades duplex - como uma interface sempre volta ao half-duplex quando não é possível determinar o outro lado por meio da negociação automática.

Soapbox

Ao mesmo tempo, houve um apoio irregular à autonegociação e causou tantos problemas quanto pretendia resolver. Esse tempo, na opinião deste engenheiro de rede - já passou. Embora ainda existam problemas de negociação automática, o número de problemas que eu vi devido à configuração da negociação automática nos últimos 5 anos diminui o número de problemas que eu vi devido à desativação da negociação automática.

Eu nunca tive um provedor de serviços de Internet disposto a mudar sua transferência de Ethernet para auto / auto quando solicitado. Com a maioria dos modems e gateways a cabo e DSL, isso não é um problema. É o NxT1 e os roteadores CPE gerenciados por fibra com transferência Ethernet, onde esse problema geralmente reside. O problema é que um administrador de rede precisa perguntar em primeiro lugar.

Com um ISP codificado para 100-Full, eles deram uma obrigação . Uma obrigação que deve ser documentada e continuada. A negociação automática é uma tecnologia que agora é estável, existe há anos e cuida desse problema para nós. Como mencionado anteriormente, o número de problemas causados ​​pela negociação automática é muito superior ao número de problemas que surgem por conta de sua desativação em 2011. Existe tecnologia para resolver esse problema, use-o. Talvez devêssemos configurar manualmente os SYNs TCP iniciais, MSS e gerenciar a janela de recebimento de todos os circuitos virtuais TCP também? Eu brinco

Discuta.

Tecelão
fonte
Eu tinha tentado este comando para forçar a interface para ir a um modo full duplex: sudo ethtool -s eth0 duplex full speed 100 autoneg off. Mas o link caiu. Mas sua resposta me deu alguma esperança. Vou tentar e testar novamente. Também perguntarei ao ISP se eles podem habilitar a negociação automática no MUX.
Nixnotwin
@nixnotwin Verifique se a interface está se ajustando a 100 e não a 10 com a negociação automática ativada - codifique a velocidade específica e full-duplex. Se o link foi desativado após a codificação e a desativação da negociação automática, é possível que você tenha um problema MDI / MDI-X - pois o auto-MDI / MDI-X no PHY também pode ser desativado. Se você estiver usando um cabo de conexão direto, tente um cruzamento. Se você estiver usando um cruzamento, tente um cabo de conexão direto.
Weaver
De alguma forma, convencemos o ISP a permitir a negociação automática. Depois disso, todos os problemas que tivemos - erros de interface, perda de pacotes ICMP, jitter de streaming, congelamento de roteadores - e muitos outros problemas desapareceram repentinamente. Agora, a largura de banda chega a 50 mbits e nenhum erro é mostrado na interface Ethernet.
Nixnotwin
2
@nixnotwin Essa é uma ótima notícia. No futuro, se você tiver que lidar com administradores hiper-hesitantes (sejam eles rede, sistema, Windows, etc.), acho que a frase "me diverte e vamos tentar isso por um minuto - talvez nós dois aprendamos algo" para seja muito eficaz.
Weaver