modified on 13 sty 2010 at 13:03 ••• 14 742 views

L2MTU

Z MikroTik Wiki

Spis treści


Opis

Zadaniem administratora jest ustawienie takiego MTU, aby możliwe było zaimplementowanie usługi i aplikacji w danej sieci. Innymi słowy - administrator musi się upewnić, że ustawione jest takie MTU, że wielkość pakietu nie będzie większa niż dana sieć jest w stanie obsłużyć.

Początkowo MTU wprowadzono z powodu dużej ilości błędów i wolnej komunikacji. Fragmentacja strumienia danych daje możliwość poprawienia błędów tylko poprzez ponowne przesłanie uszkodzonych fragmentów, zamiast całego ciągu danych. Ponadto dla komunikacji o niskiej szybkości, jak modemy, przesłanie dużego fragmentu może zająć zbyt dużą ilość czasu, więc komunikacja jest możliwa tylko z małymi fragmentami.

W obecnych czasach błędy są coraz żadsze, a komunikacja jest dużo szybsza. Otwiera to możliwość zwiększenia wartości MTU. Zwiększenie MTU pociągnie za sobą zmniejszenie narzutu nagłówka protokołu i zmniejszy wykorzystanie CPU głównie poprzez redukcję przerwań.

Tym sposobem pojawiły się niestandardowe ramki:

  • RamkiGiant or Jumbo - ramki większe niż standardowe (IEEE) Ethernetowe MTU
  • Ramki Baby Giant or Baby Jumbo - ramki trochę większe niż standardowe (IEEE) Ethernetowe MTU

Teraz często już interfejsy Ethernetowe obsługują większe fizyczne MTU niż standardowe, ale nie jest to regułą. Należy także wziąć pod uwagę pozostały sprzęt sieciowy - na przykład, jeśli 2 routery z interfejsami Ethernetowymi obsługujące fizyczne MTU 1526 połączone są przez switch, musi on także obsługiwać duże ramki Ethernetowe, aby możliwe było ich przesyłanie pomiędzy routerami.

MTU w RouterOS

Different types of MTU

Mikrotik RouterOS rozpoznaje kilka typów MTU:

  • IP/Layer-3/L3 MTU
  • MPLS/Layer-2.5/L2.5 MTU
  • MAC/Layer-2/L2 MTU
  • Pełna ramka MTU



Pełna ramka MTU

Pełna ramka MTU oznacza aktualny rozmiar ramki, która jest wysyłana przez konkretny interfejs. Suma kontrolna ramki nie jest brana pod uwagę ponieważ jest usuwana przez sterownik Ethernetowy zaraz po dotarciu do celu.

MAC/Layer-2/L2 MTU

L2MTU oznacza maksymalny rozmiar ramki, bez nagłówka MAC, która może być wysłana przez interfejs.

Od wersji RouterOS v3.25 wartości L2MTU mogą być odczytane w menu "/interface". Wsparcie dla L2MTU jest dodane do wszystkich interfejsów związanych z Ethernetem, VLAN-ów, Mostków, VPLS i interfejsów bezprzewodowych. Niektóre z nich obsługując zmianę wartości L2MTU. Wszystkie pozostałe interfejsy Ethernetowe mogą wyświetlać L2MTU jeśli ich chip jest taki sam jak Ethernet Routerboardowy.

Pozwala to sprawdzić użytkownikom, czy możliwa jest dana konfiguracja. Użytkownicy mogą przydzielić dodatkowe bajty dla tagów VLAN i MPLS lub zwiększyć MTU interfejsu aby zmniejszyć niepotrzebną fragmentaryzację.

Poniższa tablica pokazuje wspierane L2MTU przez Mikrotik RouterBoards:

RouterBoard ether1 ether2 ether3 ether4 ether5 ether6 ether7 ether8 ether9
RB493, RB493AH 1526 1522 1522 1522 1522 1522 1522 1522 1522
RB450 1526 1522 1522 1522 1522
RB433, RB433AH 1526 1522 1522
RB411, RB411A, RB411AH 1526
RB450G 1526 1524 1524 1524 1524
RB750 1526 1524 1524 1524 1524
RB1000 1500-9500 1500-9500 1500-9500 1500-9500
RB600, RB600A 1500-9500 1500-9500 1500-9000
CrossRoads 1600
RB333 1632 1632 1632
RB1xx 1518 1518 1518 1518 1518 1514 1514 1514 1514
RB532 1600 1600 1600
RB44G 1500-7200 1500-7200 1500-7200 1500-7200
RB44GV 1500-9000 1500-9000 1500-9000 1500-9000

Wszystkie interfejsy bezprzewodowe w RouterOS (włączając Nstreme2) obsługują 2290-bajtowe L2MTU

MPLS/Layer-2.5/L2.5 MTU

Konfigurowane w menu "/mpls interface", określają maksymalny rozmiar pakietu, włącznie z etykietami MPLS, który może być wysłany przez konkretny interfejs (domyślnie jest 1508).

Upewnij się, że MPLS MTU jest mniejszy lub równy L2MTU.

MPLS MTU wpływa na pakiety w zależności od tego, jaką akcję wykonuje router MPLS. Zaleca się, że MPLS MTU ustawiony jest na tą samą wartość na wszystkich routerach tworzących chmurę MPLS ponieważ MPLS MTU ma wpływ na pakiety komutowane MPLS. Wymaga to,a by wszystkie interfejsy uczestniczące w chmurze MPLS muszą być ustawione na najmniejszą wartość MPLS MTU, jaką posiada jeden z uczestniczących interfejsów. Należy więc brać pod uwagę wykorzystywane urządzenia.


Komutacja MPLS

Jeśli pakiet z etykietami jest większy niż MPLS MTU, MPLS próbuje zgadnąć jaki protokół jest przenoszony wewnątrz ramki MPLS.

Jeśli jest to pakiet IP, MPLS generuje błąd ICMP Need Fragment. To zachowanie klonuje zachowanie protokołu IP. Błąd ICMP nie wraca do nadawcy pakietu ale jest kierowany do końca LSP tak, aby router wyjściowy mógł skierować go spowrotem do nadawcy.

Jeśli nie jest to pakiet IP, MPLS odrzuca go, ponieważ nie wie jak zinterpretować zawartość pakietu. Ta usługa jest bardzo ważna w sytuacjach, w których używane są aplikacje MPLS takie jak VPLS (w których ramki tagowane MPLS nie są pakietami IP, ale np enkapsulowanymi ramkami Ethernetowymi, jak w przypadku VPLS) - jeśli gdzieś wzdłuż LSP MPLS MTU będzie mniejszy niż rozmiar pakietu przygotowanego przez router wejściowy, ramka zostanie odrzucona.

Wejście IP

Gdy router dodaje etykietę (lub etykiety) do pakietu IP, wskutek czego rozmiar pakietu przekroczyłby maksymalny rozmiar MPLS MTU, router zachowuje się jakby przekroczono MTU interfejsu - pakiet jest dzielony na fragmenty mniejsze niż MPLS MTU (jeśli nie jest ustawiona opcja IP nie fragmentuj), lub generuje błąd ICMP Need Fragmentation wysyłany do nadawcy.


Wejście VPLS

Gdy router enkapsuluje ramkę Ethernetową forwardowaną przez pseudołącze VPLS, sprawdzane jest, czy rozmiar pakietu ze Słowem Kontrolnym VPLS (4 bajty) i etykietami (zazwyczaj 2 etykiety - 8 bajtów) przekracza MPLS MTU interfejsu wysyłanego. Jeśli przekracza, VPLS dzieli na fragmenty pakiet tak, aby mieścił się w MPLS MTU interfejsu nadającego. Pakiet jest defragmentowany w punkcie wyjściowym pseudołącza VPLS.

IP/Layer-3/L3 MTU

Konfigurowane jako ustawienie MTU interfejsu (/interface <type> <name> set mtu=X). Określa, jak duży pakiet IP może wysłać router przez konkretny interfejs.

Jeśli router odbierze pakiet IP o rozmiarze 1500, ale MTU wychodzącego interfejsu ustawione jest na 1400, router podzieli na fragmenty pakiet (jeśli nie jest ustawiony w nagłówku bit "Nie fragmentuj") lub odrzuca pakiet i wysyła błąd ICMP "Need Fragmentation" do nadawcy pakeitu (wymagane jest to aby Path MTU Discovery).

Czasem złym pomysłem może być zmiana IP MTU z domyślnej wartości 1500 bajtów interfejsów routera jeśli cała ścieżka nie jest pod kontrolą administratora. Pomimo, że fragmentacja IP i Path MTU Discovery powinny poradzić sobie z taką sytuacją, jeśli błędy ICMP Need Fragmentation są filtrowane gdzieś wzdłuż ścieżki, Path MTU Discovery nie będzie działać poprawnie.

Mikrotik RouterOS posiada kilka funkcji wykorzystujących możliwość przekroczenia standardowego MTU

Proste przykłady

W tych przykładach przyjrzymy się, jak ramki przychodzą i opuszczają router przez interfejsy Ethernetowe.

Prosty Routing

Obrazek pokazuje rozmiar MTU pakietu w prostym routingu, rozmiar pakietu nie jest modyfikowany.


Image:MTUSimpleRouting.png


Routing z VLAN Encap

Każdy znacznik VLAN ma długość 4 bajtów, znacznik VLAN jest dodany przez router. L2MTU jest zwiększony o 4 bajtów.


Image:MTUVLANENCAP.png


Prosty MPLS z tagami

Gdy używany jest MPLS jako zwykłe zastąpienie routingu IP, tylko jedna etykieta jest dodawana do każdego pakietu, ale gdy rozmiar pakietu jest zwiększony o 4 bajtów, mamy do czynienia z dwoma etykietami MPLS. Aby móc forwardować pakiet IP o standardowym rozmiarze (1500 bajtów) bez fragmentaryzacji, MPLS MTU musi być ustawione przynajmniej na 1508 bajtów.

Image:MTUMPLS2Tags.png

Tunel VPLS

Są dwie etykiety MPLS, gdy zdalny koniec nie jest bezpośrednio połączony. Jedna etykieta używana jest aby dotrzeć do zdalnego końca, druga do identyfikacji tunelu VPLS.

Image:MTUVPLS.png

Bardziej zaawansowany L2MTU

W tym przykładzie przyjrzymy się wymaganym L2MTU przez wszystkie Ethernetowowpodobne interfejsy włącznie z Mostkami, VLAN i interfejsami VPLS.

W tej konfiguracji mamy 3 routery:

  • router Q-in-Q - ten router odbiera standardowe ramki ethernetowe 1500 bajtowe i dodaje dwa znaczniki VLAN. Pakiet następnie jest wysyłany przez sieć Ethernetową do drugiego routera.
  • router VPLS router - router usuwa znacznik VLAN i mostkuje pakiet z drugim znacznikiem VLAN przez tunel VPLS. Tunel VPLS przesyła pakiet przez sieć MPLS do trzeciego routera.
  • router brzegowy MPLS - usuwa znaczniki VPLS i VLAN i przesyła pakiet do sieci Ethernetowej klienta.

Image:L2MTU example.png