Jak ustawić właściwą MTU

Użyjmy tutaj analogii: załóżmy, że ktoś wchodzi na rynek i ma tylko jedną torbę przewoźnika. Dana osoba będzie dążyła do kupienia jak największej liczby przedmiotów, ale nadal upewnia się, że wszystkie one mieszczą się w torbie, a nie dzielą się na kilka toreb, których nie ma. Podobnie dla sieci cyfrowych, MTU jest parametrem decydującym o największym przesyłanym datagramie bez fragmentacji w sieci. Poniżej znajduje się wprowadzenie do MTU, a także wyjaśnienie, jak to obliczyć. Sprawdź także wartość MTU w systemie Windows i Linux oraz jak je zmienić.

Wprowadzenie do MTU

  • Co to jest MTU?
  • Oblicz MTU
  • Znajdź wartość MTU w systemie Windows
    • Zmiana MTU w systemie Windows
  • Znajdź wartość MTU w systemie Linux
    • Zmiana MTU w systemie Linux

Co to jest MTU?

Maksymalna jednostka transmisji (MTU) (maksymalny rozmiar jednostki transferu) to parametr określający najdłuższy datagram, który może być przesyłany przez interfejs IP, bez konieczności dzielenia go na mniejsze jednostki. MTU powinien być większy niż największy datagram, który chcesz przekazać bez fragmentacji. Mówiąc prościej, MTU określa maksymalny rozmiar (w bajtach) pakietu, który można przesłać jednocześnie.
  • W przypadku sieci Ethernet ta wartość powinna wynosić 1500 bajtów.
  • Dla połączeń PPPoE, 1492
  • Dla CTS (niska prędkość), 576

Oblicz MTU

Każda ramka transmisji jest zdefiniowana przez ciało (= MMS = maksymalny rozmiar segmentu), który określa największy segment informacji TCP, który może być przesyłany, oraz nagłówek.
  • MTU = nagłówki MSS + TCP / IP

Rozważ, że:

  • MSS = MTU-40 <- 40 dla nagłówka (20 bajtów IP i 20 bajtów TCP)

Pakiety nie są pofragmentowane

Brak zagubionych pakietów

  • Rozmiar / prędkość pakietu

Albo transfer informacji 1500000 bajtów przy użyciu różnych rozmiarów pakietów przez linię T1 (CTS) (T1 = 1544000 bitów / s) w następujący sposób:

 (Nagłówek MSS +) * 8 bitów / bajt

---------------------------------- = Opóźnienie

1, 544, 000 bitów / s.

  • Używając różnych wartości MTU, można obliczyć opóźnienie transmisji:

Jeśli MTU = 1500, to: (1460 +40) * 8/1544000 = 7772 ms

Jeśli MTU = 576, to: (536 +40) * 8/1544000 = 2924 ms

  • Przy 10 pętlach otrzymujemy 77, 72 ms dla MTU do 1500 i 29, 24 ms dla 576.
  • Podsumowując, im więcej pakietów, tym dłuższy transfer ;-)

Używając tej samej formuły do ​​transferu 1 MB.

1 MB = 1024 KB = 1 048 576 bajtów.

  • Jeśli MTU = 1500, to: (1460 +40) * 8/1544000 = 7772 ms
  • 1 MB / MSS = 1048576 bajtów / 1460 = 718.2, więc 719 pakietów do transferu 1 MB.
  • Aby przesłać 1 MB: 719 ms 7772 * pakietów (zawsze pętla) = 5588.068 ms lub 5588 sekund.
  • Jeśli przeniesiemy nasz 1 MB w 10 pętli (określonych przez nagłówek), idealnie:

(1 pętla pakietów * 10 * opóźnienie 7, 772 ms) + 718 * 7772 = 5658 sekund.

Jeśli MTU = 576, to: (536 +40) * 8/1544000 = 2924 ms

1 MB / MSS = 1048576 bajtów / 536 = 1956, 3, a zatem 1957 pakietów do przesłania 1 MB.

  • Aby przesłać 1 MB: 1957 pakietów * 2924 ms (zawsze pętla) = 5722.268 ms lub 5722 sekund na pętlę.

Jeśli przenieśliśmy 1 MB na 10 pętli:

(1 pętla pakietu * 10 * 2, 924ms) * 2924 + 1956 = 5748 sek.

Różnica polega na tym, że większość wielkości pakietów jest duża, mniej ważna jest wielkość nagłówka (stosunkowo ^ ^)

Aby przesłać 1 MB, jeśli używa się MTU do 1500, to dla nagłówka jest 719 * 40 = 28 760 bajtów, podczas gdy MTU do 576, otrzymujemy 1957 * 40 = 78 280, więcej niż 49 520 bajtów nagłówka wysyłane każdego MB. Dla naszego przykładu 10 pętli, nie jest znaczna, ale na codziennych transferach ...

Większość modemów używa większego nagłówka i nie bierzemy pod uwagę innych opóźnień, które mogą być powiązane.

Znajdź wartość MTU w systemie Windows

Aby znaleźć maksymalną MTU, powinna ona znajdować się w wierszu polecenia (Start> Uruchom> „cmd”). W wierszu polecenia (czarna strona) należy przetestować ping, wskazując rozmiar pakietów do przetestowania:
  • ping-fl (rozmiar pakietu -28) (adres IP twojego serwera)

Opcja-f pozwala wykonać test, wymagając od routerów napotkanych, a nie fragmentowania pakietu

Opcja-l wysyła rozmiar pakietu

Usunięcie 28 do wielkości pakietu do testowania odpowiada nagłówkowi tego pakietu

Musimy przeprowadzić test na adres IP. Ze względu na przeglądarkę internetową lepiej jest wziąć adres internetowy.

  • To daje:

 ping-fl 1372 192.168.0.1

- Jeśli odpowiedź na zapytanie brzmi:

Odpowiedź z 192.168.0.1: bytes = 1372 ....

Odpowiedź z 192.168.0.1: bytes = 1372 ....

Odpowiedź z 192.168.0.1: bytes = 1372 ....

Odpowiedź z 192.168.0.1: bytes = 1372 ....

Tutaj rozmiar pakietu pozwala na transport bez fragmentacji, można przetestować wyższą wartość. Gdy pojawi się komunikat: „Pakiet musi być pofragmentowany, ale zestaw DF”, rozmiar pakietu jest zbyt duży.

Zmiana MTU w systemie Windows

Po określeniu optymalnej wartości MTU istnieją dwa sposoby zmiany wartości MTU. Wspominam tutaj o najłatwiejszym do wdrożenia przez oprogramowanie:
  • DrTCP

Po zainstalowaniu masz pole „MTU”, w którym musisz wprowadzić wartość testu w DOS, dodając 28 dla nagłówka.

Znajdź wartość MTU w systemie Linux

  • Wystarczy uruchomić to polecenie jako root z nazwą_interfejsu, aby zastąpić nazwą danego interfejsu sieciowego:

 nazwa_interfejsu ifconfig | grep-Eo "MTU: [0-9] +"

Zmiana MTU w systemie Linux

  • W root z komendą ifconfig, która zmienia MTU w Linuksie z następującą składnią:

 nazwa_interfejsu ifconfig mtu value_mtu 
  • Przykład: ustaw MUT interfejsu na 1500

 ifconfig eth0 mtu 1500 
Poprzedni Artykuł Następny Artykuł

Najważniejsze Wskazówki