Protokół ICMP


 
  Strona główna
  Inf. podstawowe
  Budowa pakietu
  Szczegóły działania
    ICMPv4
    ICMPv6
  Typy komunikatów  
    ICMPv4
    ICMPv6
  Opcje ICMPv6
  Przykłady działania
    Polecenie ping
    Polecenie traceroute
    Redirect
  Kod źródłowy
 

Przekroczenie czasu - Time Exceeded (ICMPv6)

Typ komunikatu: 3

Kody:

  • 0 - upłynął czas na przesłanie datagramu do hosta docelowego (hop limit exceeded in transit)
  • 1 - upłynął czas na skompletowanie datagramu na hoscie docelowym (fragment reassembly time exceeded)

Format wiadomości:

  • nieużywane - 32 bity
  • początkowy fragment pakietu podczas przesyłania którego wystąpił błąd

Komunikat ten jest wysyłany podczas gdy upływa czas dostarczenia datagramu.
Wiadomość o kodzie 0 zostaje wysłana przez router wtedy, gdy otrzyma on pakiet z wartością pola Hop Limit w nagłówku IP równą 0. Ta sama wiadomość wysyłana jest przez router, gdy po zmniejszeniu przez niego wartości Hop Limit osiągnie ona wartość 0. Router musi w takiej sytuacji porzucić pakiet oraz wysyła komunikat ICMPv6 do hosta, z którego pochodził pakiet. Odebranie takiej wiadomości przez urządzenie oznacza, że pakiet trafił na pętlę podczas routingu lub posiadał zbyt małą wartość Hop Limit aby dotrzeć do adresata.
Datagramy podczas przesyłania przez sieć dzielone są na małe pakiety. Urządzenia podczas odbierania pakietów muszą je połączyć aby uzyskać całą wiadomość. Konieczne jest ustalenie maksymalnego czasu w jakim wszystkie porcje powinny dotrzeć do adresata aby nie zapchać pamięci niekompletnymi wiadomościami. Gdy w dowolnym urządzeniu dla któregoś datagramu czas ten upłynie, musi on usunąć wszystkie pakiety z pamięci i poinformować o tym host, z którego były wysyłane. Do tego celu służy komunikat Time Exceeded o kodzie 1. Wysłanie tej wiadomości może się jednak odbyć tylko wtedy gdy dostarczony został pierwszy pakiet odbieranego datagramu.
Przykład działania tego komunikatu opisany jest tutaj.


Autorzy: Dariusz Obidowski
Marek Wardziński

22.01.2003r.