Błędy interfejsu Ethernet

10

Interfejs ethernetowy moich serwerów Ubuntu, który łączy się z multiplekserem ISP, pokazuje błędy. Oto migawka:

          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

Interfejs Ubuntu obsługuje pełny dupleks, ale negocjuje tylko połączenie półdupleksowe. Kiedy podłączyłem inne urządzenie (router) do MUX, pokazało to również takie błędy. Przypisana przepustowość to 50 Mb / s, ale dostaję tylko 20 Mb / s. ISP niechętnie zmienia swoje urządzenie (wygląda jak przełącznik Ethernet lub koncentrator) w MUX. Inżynierowie ISP obwiniają mnie z mojej winy. Ale sprawdziłem z więcej niż 3 urządzeniami, wszystkie wykazały błędy. Czy są więc jakieś narzędzia dla Linuksa, których mogę użyć do dokładnego zbadania przyczyn tych błędów, czy też jest coś, co mogę zrobić, aby ponownie skonfigurować interfejs mojego serwera, aby pozbyć się tych błędów?

nixnotwin
źródło

Odpowiedzi:

8

Prawdopodobnie występuje niedopasowanie dupleksu z powodu twardego zakodowania przez ISP ich strony do 100-Full, co zasadniczo wyłącza autonegocjację w sieci Ethernet PHY ISP.

Gdy ISP jest ustawiony na 100-Full, a twoja strona pozostaje w trybie auto / auto (przeczucie, ale wspólne), auto-negocjacja po twojej stronie skonfiguruje interfejs do 100-Half - niedopasowanie dupleksu jako strona ISP pozostanie 100-pełne.

Naprawić

Możesz rozwiązać problem poprzez zakodowanie na stałe PHY Ethernet na 100-Full - lub dokładnie na cokolwiek, na co ustawiony jest ISP. Większość dostawców usług internetowych używa 100-Full.

Dodatkowe szczegóły

W przypadku niedopasowania dupleksu od 100 Full do 100-Half strona 100-Full wyłącza CSMA / CD, podczas gdy CSMA / CD pozostaje aktywny po stronie 100-Half. Strona 100-Full przesyła bez względu na to, czy medium jest wolne. Strona 100-pół wykonuje kontrole CSMA / CD i wycofuje się zgodnie z definicją CSMA / CD. Dlatego możesz osiągnąć jedynie 20 Mb / s na obwodzie internetowym 50 Mb / s . Wycofanie CSMA / CD ze względu na kolizje wykrywające połowę strony ogranicza przepustowość.

Po sztywnym kodowaniu interfejsu do 100-Full, aby dopasować się do ISP, obie strony będą miały wyłączony CSMA / CD, dlatego wykrywanie cofania i kolizji będzie wyłączone i powinieneś osiągnąć liczby znacznie bliższe prędkości transmisji danych w obwodzie internetowym 50 Mb / s.

Historia

Wielu dostawców usług internetowych zakodowało na stałe przekazywanie swoich połączeń Ethernet PHY, ponieważ był czas, kiedy było to o wiele bardziej niezawodne. Po wydaniu oryginalnego standardu Fast Ethernet 802.3u 100 Mb / s automatyczna negocjacja prędkości i dupleksu była obecna, ale nie była wymagana . Dopiero standard Gigabit Ethernet 802.3z 1 Gb / s wymagał automatycznej negocjacji .

Wielu inżynierów sieciowych ma błędne poglądy na temat automatycznych negocjacji. Największym nieporozumieniem jest to, że autonegocjacja może poprawnie negocjować szybkość i dupleks, jeśli tylko jedna strona wdroży autonegocjację. To nieprawda - jak widzieliście.

Przyczyna tego prawdopodobnie wynika z następującego - jeśli jedna strona jest zakodowana na 100-Full, druga strona z automatyczną negocjacją zawsze wydaje się obliczać część 100 Mb / s. To samo, jeśli jedna strona jest zakodowana na stałe do 10-Full - druga strona z automatyczną negocjacją może ustalić część 10 Mb / s. Zdolność do określenia prędkości łącza pochodzi z funkcji zwanej wykrywaniem równoległym, która próbuje odebrać sygnał warstwy fizycznej na wszystkich obsługiwanych lokalnie prędkościach łącza, aż do znalezienia dopasowania. Jednak wykrywanie równolegle działa tylko do prędkości, a nie do dopasowywania dwustronnego. Właśnie dlatego mogą wystąpić niedopasowania dupleksu - ponieważ interfejs zawsze wraca do półdupleksu, gdy nie może ustalić drugiej strony poprzez autonegocjację.

Soapbox

Pewnego razu pojawiło się nierówne wsparcie dla automatycznych negocjacji i spowodowało tyle problemów, ile zamierzano rozwiązać. Ten czas, zdaniem tego inżyniera sieci - minął. Chociaż problemy z autonegocjacją wciąż istnieją, liczba problemów, które widziałam w związku z konfiguracją autonegocjacji w ciągu ostatnich 5 lat, przewyższa liczbę problemów, które widziałam z powodu wyłączenia autonegocjacji.

Nigdy nie miałem usługodawcy internetowego, który nie chciałby zmienić przełączenia Ethernet na auto / auto na żądanie. W przypadku większości modemów i bram kablowych i DSL nie stanowi to problemu. Jest to router CPE zarządzany przez NxT1 i światłowód z przełączaniem Ethernet, w którym zwykle występuje ten problem. Problem polega na tym, że administrator sieci musi przede wszystkim zapytać.

Z ISP na stałe do 100-Full zobowiązali się . Obowiązek, który należy udokumentować i kontynuować. Autonegocjacje to technologia, która jest teraz stabilna, działa od lat i rozwiązuje ten problem za nas. Jak wspomniano wcześniej, liczba problemów spowodowanych autonegocjacją jest znacznie większa niż liczba problemów, które powstają z powodu jej wyłączenia w 2011 roku. Istnieje technologia, aby rozwiązać ten problem, użyj go. Być może powinniśmy ręcznie ustawić początkowe SYN TCP, MSS i zarządzać oknem odbioru dla każdego obwodu wirtualnego TCP? Ja dzieciak

Odpierdalaj.

Tkacz
źródło
Próbowałem tego polecenia, aby zmusić interfejs, aby przejść do pełnego trybu dupleks: sudo ethtool -s eth0 duplex full speed 100 autoneg off. Ale link zszedł. Ale twoja odpowiedź dała mi nadzieję. Spróbuję ponownie przetestować. Zapytam również dostawcę usług internetowych, czy może włączyć automatyczną negocjację w MUX.
nixnotwin,
@nixnotwin Sprawdź, czy interfejs ustawia się na 100, a nie 10 na pół z włączoną automatyczną negocjacją - zakoduj konkretną szybkość i pełny dupleks. Jeśli łącze przestało działać po zakodowaniu na stałe i wyłączeniu auto-negocjacji, możliwe, że masz problem z MDI / MDI-X - ponieważ auto-MDI / MDI-X w PHY może być również wyłączone. Jeśli używasz kabla krosowego prostego, spróbuj zastosować zwrotnicę. Jeśli używasz zwrotnicy, wypróbuj prosty kabel krosowy.
Weaver,
W jakiś sposób przekonaliśmy dostawcę usług internetowych do włączenia automatycznych negocjacji. Po tym wszystkie problemy, które mieliśmy - błędy interfejsu, utrata pakietów ICMP, fluktuacje strumieniowe, zawieszanie się routera - i wiele innych problemów nagle zniknęły. Teraz przepustowość osiąga 50 Mb, a interfejs Ethernet nie pokazuje żadnego błędu.
nixnotwin
2
@nixnotwin To świetna wiadomość. W przyszłości, jeśli będziesz miał do czynienia z bardzo niezdecydowanymi administratorami (czy to internet, system, Windows itp.), Znajduję wyrażenie „humor mnie i spróbujmy na chwilę - może oboje nauczymy się czegoś” być bardzo skutecznym.
Weaver