Så här ställer du in rätt MTU

Låt oss använda en analogi här: anta att en går till marknaden och har bara en bärväska. Individen kommer att sträva efter att köpa så många saker som möjligt men ändå se till att alla dessa kan passa i väskan istället för att delas upp på flera väskor som han inte har fått. På samma sätt för digitala nätverk är MTU den parameter som bestämmer det största datagramet som överförts utan att vara fragmenterat via nätverket. Nedan följer en introduktion till MTU samt en förklaring om hur man beräknar den. Ta reda på värdet av MTU i Windows och Linux och hur du ändrar dem.

Introduktion till MTU

  • Vad är MTU?
  • Beräkna MTU
  • Hitta värdet av MTU på Windows
    • Ändra MTU på Windows
  • Hitta värdet av MTU på Linux
    • Ändra MTU på Linux

Vad är MTU?

Maximal överföringsenhet (MTU) (maximal överföringsenhet) är en parameter som bestämmer att det längsta datagramet kan överföras med ett IP-gränssnitt utan att behöva fragmenteras till mindre enheter. MTU bör vara större än det största datagram du vill förmedla utan att vara fragmenterad. Mer enkelt definierar MTU maximal storlek (i byte) för paketet som kan överföras på en gång.
  • För ethernet bör detta värde vara 1500 byte.
  • För PPPoE-anslutningar, 1492
  • För CTS (låg hastighet), 576

Beräkna MTU

Varje överföringsram definieras av kroppen (= MMS = maximal segmentstorlek) som definierar det största segmentet av TCP-information som kan överföras och rubriken.
  • MTU = MSS + TCP / IP-huvuden

Tänk på det:

  • MSS = MTU-40 <- 40 för huvudet (20 byte IP och 20 byte TCP)

Paket är inte fragmenterade

Inga förlorade paket

  • Paketstorlek / hastighet

Antingen en överföring av information om 1500000 byte med olika storlekar av paket via en T1-linje (CTS) (T1 = 1544000 bit / sek) enligt följande:

 (MSS + header) * 8 bit / byte

---------------------------------- = Latency

1.544.000 bitar / sek.

  • Genom att använda olika värden av MTU kan man beräkna latens för överföring:

Om MTU = 1500, då: (1460 +40) * 8/1544000 = 7772 ms

Om MTU = 576, då: (536 +40) * 8/1544000 = 2924 ms

  • Vid 10 slingor får vi 77, 72 ms för MTU till 1500 och 29, 24 ms för 576.
  • För att sammanfatta, ju fler paket det finns, ju längre överföringen ;-)

Med samma formel för överföring av 1 MB.

1MByte = 1024 KB = 1 048 576 byte.

  • Om MTU = 1500, då: (1460 +40) * 8/1544000 = 7772 ms
  • 1 MByte / MSS = 1048576 byte / 1460 = 718, 2, så 719 paket för att överföra 1 MByte.
  • För att överföra 1Mbyte: 719 ms 7772 * paket (alltid loop) = 5588.068 ms eller 5588 sekunder.
  • Om vi ​​överför vår 1 MByte i 10 slingor (definierad av rubriken), kommer vi helst att:

(1 paketslingor * 10 * 7, 772ms fördröjning) + 718 * 7772 = 5658 sekunder.

Om MTU = 576, då: (536 +40) * 8/1544000 = 2924 ms

1 MByte / MSS = 1048576 byte / 536 = 1956, 3, varför 1957 paket för att överföra 1 MByte.

  • För att överföra 1 MByte: 1957 paket * 2924 ms (alltid slinga) = 5722.268 ms, eller 5722 sekunder per slinga.

Om vi ​​överförde 1 MByte i 10 slingor:

(1 paketslingor * 10 * 2, 924ms) * 2924 + 1956 = 5748 sek.

Skillnaden är att den flesta paketstorleken är stor, mindre än huvudrubriken är viktig (relativt ^ ^)

Så för att överföra 1Mbyte, om man använder en MTU till 1500 så är det 719 * 40 = 28.760 byte för huvudet, medan MTU till 576, vi får 1957 * 40 = 78, 280, mer än 49, 520 byte av "header skickade Mbyte vardera. För vårt exempel på 10 slingor är det inte betydande, men på de dagliga överföringarna ...

De flesta modem använder en större rubrik, och vi tar inte hänsyn till och sådana andra latenser som kan vara associerade.

Hitta värdet av MTU på Windows

För att hitta den maximala MTU, borde den vara i kommandotolken (Start> Kör> "cmd"). En gång i kommandotolken (svart sida) är det nödvändigt att testa ping, vilket anger storleken på paket för att testa:
  • ping-fl (storlek på paketet -28) (IP på din server)

Alternativet-f gör att du kan ta provet genom att kräva att routrar som uppstått inte fragmentar paketet

Alternativet-l skickar paketets storlek

Om du tar bort 28 till den paketstorlek som ska testas motsvarar det här paketets rubrik

Vi måste ta provet på en IP. För webbläsarens skull är det bättre att ta en webbadress.

  • Detta ger:

 ping-fl 1372 192.168.0.1

- Om svaret på frågan är:

Svara från 192.168.0.1: bytes = 1372 ....

Svara från 192.168.0.1: bytes = 1372 ....

Svara från 192.168.0.1: bytes = 1372 ....

Svara från 192.168.0.1: bytes = 1372 ....

Här tillåter paketstorleken att transportera utan fragmentering, man kan testa ett högre värde. När du får meddelandet: "Paketet måste vara fragmenterat men DF-set", är paketstorleken för stor.

Ändra MTU på Windows

När du väl har bestämt den optimala MTU, finns det två sätt att ändra värdet på MTU. Jag nämner här det enklaste att genomföra, via programvaran:
  • DrTCP

När du har installerat har du en "MTU" rutan, där du måste ange värdet av testet under DOS genom att lägga till 28 för rubriken.

Hitta värdet av MTU på Linux

  • Kör bara det här kommandot som root med name_interface för att ersätta med namnet på det aktuella nätgränssnittet:

 gränssnittsnamn ifconfig | grep-Eo "MTU: [0-9] +"

Ändra MTU på Linux

  • I root med ifconfig-kommandot som ändrar MTU på Linux med följande syntax:

 interface_name ifconfig mtu value_mtu 
  • Exempel: Ställ in gränssnittets MUT till 1500

 ifconfig et0 mtu 1500 
Tidigare Artikel Nästa Artikel

Bästa Tipsen