| Piecu slāņu TCP/IP modelis |
| --- |
| Lietojumslānis |
| * DHCP
* DNS
* FTP
* HTTP
* IMAP4
* IRC
* POP3
* SIP
* SMTP
* SNMP
* SSH
* TELNET
* RPC
* RTP
* RTCP
* TLS/SSL
* SDP
* SOAP
* L2TP
* PPTP
 |
| Transporta slānis |
| * TCP
* UDP
* DCCP
* SCTP
* GRE
* GTP
 |
| Tīkla slānis |
| * IP
	+ IPv4
	+ IPv6
* ARP
* RARP
* ICMP
* IGMP
* BGP
* RSVP
* IPsec
* RIP
 |
| Datu posma slānis |
| * Ethernet
* FDDI
* Frame relay
* GPRS
* PPP
 |
| Fizikālais slānis |
| * Ethernet fizikālais slānis
* ISDN
* Modemi
* PLC
* RS232
* SONET/SDH
* G.709
* Wi-Fi
* WiMAX
 |
| * s
* d
* l
 |

|  |
| --- |
| OSI modelis |
| 
7: Lietojumslānis |
| * NNTP
* SIP
* SSI
* DNS
* FTP
* Gopher
* HTTP
* NFS
* NTP
* SMPP
* SMTP
* SNMP
* Telnet
* DHCP
* NETCONF
* RTP
* SPDY
 |
| 
6: Pasniegšanas slānis |
| * MIME
* XDR
* TLS
* SSL
* (vairāk)
 |
| 
5: Sesijas slānis |
| * programmkanāls
* NetBIOS
* SAP
* L2TP
* PPTP
* SOCKS
 |
| 
4: Transporta slānis |
| * TCP
* UDP
* SCTP
* DCCP
* SPX
 |
| 
3: Tīkla slānis |
| * IP (IPv4, IPv6)
* ICMP
* IPsec
* IGMP
* IPX
* AppleTalk
 |
| 
2: Datu posma slānis |
| * ATM
* SDLC
* HDLC
* ARP
* CSLIP
* SLIP
* GFP
* PLIP
* IEEE 802.3
* Frame Relay
* ITU-T G.hn DLL
* PPP
* X.25
* Network switch
 |
| 
1: Fiziskais slānis |
| * EIA/TIA-232
* EIA/TIA-449
* ITU-T V-Series
* I.430
* I.431
* telefona līnija
* PDH
* SONET/SDH
* PON
* OTN
* DSL
* IEEE 802.3
* IEEE 802.11
* IEEE 802.15
* IEEE 802.16
* IEEE 1394
* ITU-T G.hn PHY
* USB
* Bluetooth
* Hubs
 |
| * s
* d
* l
 |

**ICMP** (angļu: ***Internet Control Message Protocol*** - "interneta vadības ziņojumu protokols") - tīkla slāņa protokols, kas ietilpst TCP/IP stekā. Šo protokolu izmanto, lai informētu par kļūdām un citiem gadījumiem, kas radušies datu pārraides laikā. Tāpat ICMP izmanto, lai sūtītu testu paketes un citus informatīvos ziņojumus.

Tehniskās detaļas
-----------------

ICMP ir definēts RFC 792 (ar papildinājumiem RFC 950). Tas ir IP protokola neatņemama sastāvdaļa. ICMP versija IPv4 tiek saukta par **ICMPv4**, IPv6 ir ekvivalents protokols - **ICMPv6**.

ICMP ziņojumi tiek inkapsulēti IP datagrammās, bet tas, tāpat kā UDP, negarantē mērķa sasniegšanu.

Daudzi tīkla diagnosticēšanas rīki izmanto ICMP. Piemēram, komanda traceroute sūta īpaši sagatavotas UDP datagrammas un gaida ICMP atbildes "*Time to live exceeded in transit*" vai "*Destination unreachable*".
Savukārt rīks ping izmanto ICMP "*Echo*" un "*Echo reply*" paziņojumus.

### ICMP paketes struktūra

**ICMP paketes formāts**| Biti | 0 — 7 | 8 — 15 | 16 — 31 |
| --- | --- | --- | --- |
| 0 | Tips | Kods | Kontrolsumma |
| 32 | Specifiskie tipa dati |

* Tips (*Type*) - 8 bitu lauks, kurā norādīts ICMP paziņojuma tips (sk. zemāk sarakstu);
* Kods (*Code*) - 8 bitu lauks, kurā norāda vienu no vairākām iespējamām funkcijām šim tipam;
* Kontrolsumma (*Checksum*) - 16 biti, paketes kontrolsumma;
* Specifiskie tipa dati (*Type-Specific Data*) - papildu dati, atkarīgi no tipa un koda.

### ICMP paziņojumu tipu saraksts

* 0 - Echo Reply
* 1 - Rezervēts
* 2 - Rezervēts
* 3 - Destination Unreachable
* 4 - Source Quench
* 5 - Redirect Message
* 6 - Alternate Host Address
* 7 - Rezervēts
* 8 - Echo Request
* 9 - Router Advertisement
* 10 - Router Solicitation
* 11 - Time Exceeded
* 12 - Parameter Problem
* 13 - Timestamp
* 14 - Timestamp Reply
* 15 - Information Request
* 16 - Information Reply
* 17 - Address Mask Request
* 18 - Address Mask Reply
* 19 - Rezervēts drošībai
* 20-29 - Rezervēti eksperimentiem
* 30 - Traceroute
* 31 - Datagram Conversion Error
* 32 - Mobile Host Redirect
* 33 - IPv6 Where-Are-You
* 34 - IPv6 Here-I-Am
* 35 - Mobile Registration Request
* 36 - Mobile Registration Reply
* 38 - Domain Name Reply
* 39 - SKIP Algorithm Discovery Protocol
* 40 - Photuris, Security failures
* 41 - ICMP eksperimentaliem protokoliem, piem. Seamoby [RFC4065]
* 42-255 - Rezervēti

Kontroles ziņas
---------------

Kontroles ziņojumi tiek identificēti pēc to vērtības *tipa* laukā. *Koda* lauks sniedz papildu informāciju par kontekstu. Daži kontroles ziņojumi ir novecojuši kopš protokols tika ieviests.

Būtiski vadības ziņojumi| Tips | Kods | Statuss | Apraksts |
| --- | --- | --- | --- |
| 0 – Echo Reply:14 | 0 |  | Echo reply (used to ping) |
| 1 and 2 |  | unassigned | *Reserved* |
| 3 – Destination Unreachable:4 | 0 |  | Destination network unreachable |
| 1 |  | Destination host unreachable |
| 2 |  | Destination protocol unreachable |
| 3 |  | Destination port unreachable |
| 4 |  | Fragmentation required, and DF flag set |
| 5 |  | Source route failed |
| 6 |  | Destination network unknown |
| 7 |  | Destination host unknown |
| 8 |  | Source host isolated |
| 9 |  | Network administratively prohibited |
| 10 |  | Host administratively prohibited |
| 11 |  | Network unreachable for ToS |
| 12 |  | Host unreachable for ToS |
| 13 |  | Communication administratively prohibited |
| 14 |  | Host Precedence Violation |
| 15 |  | Precedence cutoff in effect |
| 4 – Source Quench | 0 | deprecated | Source quench (congestion control) |
| 5 – Redirect Message | 0 |  | Redirect Datagram for the Network |
| 1 |  | Redirect Datagram for the Host |
| 2 |  | Redirect Datagram for the ToS & network |
| 3 |  | Redirect Datagram for the ToS & host |
| 6 |  | deprecated | Alternate Host Address |
| 7 |  | unassigned | *Reserved* |
| 8 – Echo Request | 0 |  | Echo request (used to ping) |
| 9 – Router Advertisement | 0 |  | Router Advertisement |
| 10 – Router Solicitation | 0 |  | Router discovery/selection/solicitation |
| 11 – Time Exceeded:6 | 0 |  | TTL expired in transit |
| 1 |  | Fragment reassembly time exceeded |
| 12 – Parameter Problem: Bad IP header | 0 |  | Pointer indicates the error |
| 1 |  | Missing a required option |
| 2 |  | Bad length |
| 13 – Timestamp | 0 |  | Timestamp |
| 14 – Timestamp Reply | 0 |  | Timestamp reply |
| 15 – Information Request | 0 | deprecated | Information Request |
| 16 – Information Reply | 0 | deprecated | Information Reply |
| 17 – Address Mask Request | 0 | deprecated | Address Mask Request |
| 18 – Address Mask Reply | 0 | deprecated | Address Mask Reply |
| 19 |  | reserved | *Reserved* for security |
| 20 through 29 |  | reserved | *Reserved* for robustness experiment |
| 30 – Traceroute | 0 | deprecated | Information Request |
| 31 |  | deprecated | Datagram Conversion Error |
| 32 |  | deprecated | Mobile Host Redirect |
| 33 |  | deprecated | Where-Are-You (originally meant for IPv6) |
| 34 |  | deprecated | Here-I-Am (originally meant for IPv6) |
| 35 |  | deprecated | Mobile Registration Request |
| 36 |  | deprecated | Mobile Registration Reply |
| 37 |  | deprecated | Domain Name Request |
| 38 |  | deprecated | Domain Name Reply |
| 39 |  | deprecated | SKIP Algorithm Discovery Protocol, Simple Key-Management for Internet Protocol |
| 40 |  |  | Photuris, Security failures |
| 41 |  | Veidne:Table-experimental | ICMP for experimental mobility protocols such as Seamoby [RFC4065] |
| 42 – Extended Echo Request | 0 |  | No Error |
| 43 – Extended Echo Reply | 0 |  | No Error |
| 1 |  | Malformed Query |
| 2 |  | No Such Interface |
| 3 |  | No Such Table Entry |
| 4 |  | Multiple Interfaces Satisfy Query |
| 44 through 252 |  | unassigned | *Reserved* |
| 253 |  | Veidne:Table-experimental | RFC3692-style Experiment 1 (RFC 4727) |
| 254 |  | Veidne:Table-experimental | RFC3692-style Experiment 2 (RFC 4727) |
| 255 |  | reserved | Reserved |

### Avota dzēšana

*Avota dzēšana* pieprasa, lai sūtītājs samazinātu ziņojumu skaitu, kas tiek nosūtīti uz maršrutētāju vai resursdatoru. Šis ziņojums var tikt ģenerēts, ja maršrutētājam vai resursdatoram nav pietiekamas bufertelpas, lai apstrādātu pieprasījumu, vai arī, ja maršrutētājam vai resursdatoram buferis tuvojas ierobežojumam.

Dati tiek nosūtīti ļoti ātri no resursdatora vai no vairākiem resursdatoriem vienlaikus uz noteiktu maršrutētāju tīklā. Lai gan maršrutētājam ir bufera iespējas, buferēšana ir ierobežota noteiktā diapazonā. Maršrutētājs nevar sarakstīt vairāk datu nekā ierobežotās bufertelpas ietilpība. Tādējādi, ja rinda tiek aizpildīta, ienākošie dati tiek atmesti, līdz rinda vairs nav pilna. Bet, tā kā tīkla slānī nav neviena apliecinājuma mehānisma, klients nezina, vai dati ir veiksmīgi sasnieguši galamērķi. Tādēļ tīkla slānim jāveic daži koriģējoši pasākumi, lai izvairītos no šādām situācijām. Šie pasākumi tiek saukti par avota dzēšanu. Avota dzēšanas mehānismā maršrutētājs redz, ka ienākošo datu pārraides ātrums ir daudz ātrāks nekā izejošo datu pārraides ātrums, un nosūta klientiem ICMP ziņojumu, informējot, ka ir jāpalēnina datu pārsūtīšanas ātrums vai jāgaida noteikts laiks, pirms mēģināt nosūtīt vairāk datu. Kad klients saņem šo ziņojumu, tas automātiski palēnina izejošo datu pārraides ātrumu vai gaida pietiekami daudz laika, kas maršrutētājam ļauj iztukšot rindu. Tādējādi avota dzēšanas ICMP ziņojums darbojas kā plūsmas vadība tīkla slānī.

Tā kā pētījumi liecināja, ka "ICMP avota dzēšana [bija] neefektīvs (un negodīgs) pretlīdzeklis pārslodzes gadījumā", RFC 1812 1995. gadā noraidīja maršrutētāju veikto avota dzēšanas ziņojumu izveidi. Turklāt RFC 6633 no 2012. gada ir noraidījusi ziņojumu par avotu dzēšanu nosūtīšanu un jebkāda veida reakciju uz tiem.

Avota dzēšanas ziņojums:9| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Tips = 4 | Kods = 0 | Kontrolsumma |
| nelietots |
| IP galvene un pirmie 8 baiti oriģinālo datu |

Kur:

**Tipam** jābūt iestatītam uz 4
**Kodam** jābūt iestatītam uz 0
Sūtītājs izmanto **IP galveni** un papildu datus, lai saskaņotu atbildi ar saistīto pieprasījumu
### Novirzīšana

*Novirzīšanas* pieprasījumu datu paketes tiek nosūtītas alternatīvā maršrutā. ICMP novirzīšana ir maršrutētāju mehānisms, kas nodrošina maršrutēšanas informāciju resursdatoriem. Ziņojums informē resursdatoru, lai atjauninātu maršruta informāciju (lai nosūtītu paketes alternatīvā maršrutā). Ja resursdators mēģina nosūtīt datus caur maršrutētāju (R1) un R1 nosūta datus ar citu maršrutētāju (R2) un tiešais ceļš no resursdatora uz R2 ir pieejams (tas ir, resursdators un R2 atrodas vienā Ethernet segmentā), tad R1 nosūtīs novirzīšanas ziņojumu, lai informētu resursdatoru, ka labākais maršruts galamērķim ir pa R2. Pēc tam resursdatoram jānosūta paketes adresātam tieši uz R2. Maršrutētājs joprojām nosūtīs sākotnējo datu failu uz paredzēto galamērķi. Tomēr, ja datagramma satur maršruta informāciju, šis ziņojums netiks nosūtīts pat tad, ja būs pieejams labāks maršruts. RFC 1122 nosaka, ka novirzītāji ir jāsūta tikai pa vārtejām, un tos nedrīkst sūtīt interneta saimnieki.

Novirzīšanas ziņojums:11| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Tips = 5 | Kods | Kontrolsumma |
| IP adrese |
| IP galvene un pirmie 8 baiti oriģinālo datu |

Kur:

**Tipam** jābūt iestatītam uz 5.
**Kods** norāda novirzīšanas iemeslu. Var būt viens no šiem:

| Kods | Apraksts |
| --- | --- |
| 0 | Redirect for Network |
| 1 | Redirect for Host |
| 2 | Redirect for Type of Service and Network |
| 3 | Redirect for Type of Service and Host |

**IP adrese** ir vārtejas 32 bitu adrese, uz kuru jānosūta novirzīšana.
**IP galvene** un papildu dati ir iekļauti, lai ļautu resursdatoram saskaņot atbildi ar pieprasījumu, kas izraisīja novirzīšanas atbildi.
### Pārsniegts laiks

*Laiku*, kas tiek *pārsniegts*, ģenerē vārteja, kas informē izbrāķētās datagrammas avotu, jo "dzīvošanas" laiks, kas vajadzīgs, lai sāktu darbu, sasniedz nulli. Ziņojums, kas pārsniegts laikā, var tikt nosūtīts arī no resursdatora, ja tā laikā neizdodas atkārtoti samontēt fragmentētu datagrammu.
Pārsniegto laiku ziņojumi tiek izmantoti traceroute utilītā, lai noteiktu ceļa vārtejas starp diviem resursdatoriem.

Pārsniegtā laika ziņojums:5| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Tips = 11 | Kods | Kontrolsumma |
| nelietots |
| IP galvene un pirmie 8 baiti oriģinālo datu |

Kur:

**Tipam** jābūt iestatītam uz 11
**Kods** norāda pārsniegtās laika ziņas iemeslu:

| Kods | Apraksts |
| --- | --- |
| 0 | Time-to-live exceeded in transit. |
| 1 | Fragment reassembly time exceeded. |

**IP galvene** un pirmie 64 biti oriģinālajā vērtumā tiek izmantoti avota resursdatorā, lai saskaņotu pārsniegto laiku ar atmesto datagrammu. Augstākā līmeņa protokoliem, piemēram, UDP un TCP, 64 bitu lietderīgā slodze ietvers izmestās paketes avotu un mērķa portus.
### Laika zīmogs

**Laika zīmogu** izmanto laika sinhronizācijai. Sākuma laika zīmogs tiek iestatīts uz laiku (milisekundēs kopš pusnakts), kad sūtītājs pēdējo reizi pieskārās paketei. Saņemšanas un nosūtīšanas laika zīmogi netiek izmantoti.

Laika zīmoga ziņojums:15| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Tips = 13 | Kods = 0 | Kontrolsumma |
| Identifikators | Kārtas numurs |
| Izcelsmes laika zīmogs |
| Saņemšanas laika zīmogs |
| Nosūtīšanas laika zīmogs |

Kur:

**Tipam** jābūt iestatītam uz 13
**Kodam** jābūt iestatītam uz 0
Klients var izmantot **identifikatoru** un **secības numuru**, lai saskaņotu laika zīmoga atbildi ar laika zīmoga pieprasījumu.
**Izcelsmes laika zīmogs** ir milisekunžu skaits kopš Universālā laika (UT) pusnakts. Ja UT atsauce nav pieejama, visnozīmīgāko bitu var iestatīt, lai norādītu nestandarta laika vērtību.
### Laika zīmoga atbilde

*Laika zīmoga atbilde* atbild uz laika zīmoga ziņojumu. Tas sastāv no sākuma laika zīmoga, ko nosūta *laika zīmoga* sūtītājs, kā arī saņemšanas laika zīmogs, kas norāda *laika zīmoga* saņemšanas laiku, un nosūtīšanas laika zīmoga, kas norāda, kad *laika zīmoga atbilde* tika nosūtīta.

Laika zīmogs atbilde:15| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Tips = 14 | Kods = 0 | Kontrolsumma |
| Identifikators | Secības numurs |
| Izcelsmes laika zīmogs |
| Saņemšanas laika zīmogs |
| Nosūtīšanas laika zīmogs |

Kur:

**Tipam** jābūt iestatītam uz 14
**Kodam** jābūt iestatītam uz 0
Klients var izmantot **identifikatoru** un **secības numuru**, lai saskaņotu atbildi ar pieprasījumu, kas izraisīja atbildi.
**Izcelsmes laika zīmogs** ir laiks, kad sūtītājs pēdējo reizi ir pieskāries ziņojumam pirms tā nosūtīšanas.
**Saņemšanas laika zīmogs** ir laiks, kad atbalsis pirmoreiz pieskārās, to saņemot.
Raidīšanas laika zīmogs ir laiks, kad atbalsis pēdējo reizi pieskārās ziņojumam, to nosūtot.
Visi laika zīmogi kopš Universālā laika pusnakts ir milisekundēs. Ja laiks nav pieejams milisekundēs vai to nevar nodrošināt attiecībā uz pusnakti UT, tad jebkuru laiku var ievietot laika zīmogā, ja arī laika zīmoga augstas secības bits ir iestatīts, lai norādītu šo nestandarta vērtību.

### Adreses maskas pieprasījums

*Adrešu maskas pieprasījumu* parasti nosūta serveris maršrutētājam, lai iegūtu atbilstošu apakštīkla masku.
Adresātiem uz šo ziņojumu ir jāatbild ar *adreses maskas atbildes* ziņojumu.

Address mask request| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Tips = 17 | Kods = 0 | Kontrolsumma |
| Identifikators | Secības numurs |
| Adreses maska |

Kur:

**Tipam** jābūt iestatītam uz 17
**Kodam** jābūt iestatītam uz 0
**Adreses masku** var iestatīt uz 0
ICMP adrešu maskas pieprasījumu var izmantot kā daļu no izlūkošanas uzbrukuma, lai apkopotu informāciju par mērķa tīklu, tāpēc ICMP adrešu maskas atbilde pēc noklusējuma ir atspējota Cisco IOS.

### Adreses maskas atbilde

*Adreses maskas atbildi* izmanto, lai atbildētu uz adreses maskas pieprasījuma ziņojumu ar atbilstošu apakštīkla masku.

Adreses maskas atbilde| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Tips = 18 | Kods = 0 | Kontrolsumma |
| Identifikators | Secības numurs |
| Adreses maska |

Kur:

**Tipam** jābūt iestatītam uz 18
**Kodam** jābūt iestatītam uz 0
**Adreses maska** jāiestata uz apakštīkla masku
### Galamērķis nav sasniedzams

*Galamērķi*, kas *nav sasniedzams*, ģenerē resursdators vai tā ienākošā vārteja, lai informētu klientu, ka galamērķis kāda iemesla dēļ nav sasniedzams. Mērķa nesasniedzams ziņojums var tikt ģenerēts TCP vai UDP rezultātā. Nesasniedzamie TCP porti jo īpaši reaģē ar **TCP RST** (RST - (Reset) aiztaisa savienojumu piespiedu kārtā, šo lieto arī lai atteiktu savienojumu), nevis galamērķi, kas nav sasniedzams 3. tipam, kā varētu cerēt.

Kļūda netiks ģenerēta, ja sākotnējam datu avotam ir multiraides galamērķa adrese. Šī ziņojuma iemesli var būt šādi: fiziskais savienojums ar resursdatoru nepastāv (attālums ir bezgalīgs); norādītais protokols vai ports nav aktīvs; datiem jābūt fragmentētiem, bet karodziņš 'nefragmentēt' ir ieslēgts.

Nesasniedzamā galamērķa ziņojums:3| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Tips = 3 | Kods | Kontrolsumma |
| nelietots | *Next-hop* MTU |
| IP galvene un pirmie 8 baiti oriģinālo datu |

Kur:

**Tipa** laukam (Biti 0-7) jābūt iestatītam uz 3
**Koda** lauku (8. –15. biti) izmanto, lai norādītu kļūdas tipu, un tas var būt:

| Kods | Apraksts |
| --- | --- |
| 0 | Network unreachable error. |
| 1 | Host unreachable error. |
| 2 | Protocol unreachable error (the designated transport protocol is not supported). |
| 3 | Port unreachable error (the designated protocol is unable to inform the host of the incoming message). |
| 4 | The datagram is too big. Packet fragmentation is required but the 'don't fragment' (DF) flag is on. |
| 5 | Source route failed error. |
| 6 | Destination network unknown error. |
| 7 | Destination host unknown error. |
| 8 | Source host isolated error. |
| 9 | The destination network is administratively prohibited. |
| 10 | The destination host is administratively prohibited. |
| 11 | The network is unreachable for Type Of Service. |
| 12 | The host is unreachable for Type Of Service. |
| 13 | Communication administratively prohibited (administrative filtering prevents packet from being forwarded). |
| 14 | Host precedence violation (indicates the requested precedence is not permitted for the combination of host or network and port). |
| 15 | Precedence cutoff in effect (precedence of datagram is below the level set by the network administrators). |

 ***Next-hop* MTU** laukā (48. –63. biti) ir next-hop tīkla MTU, ja rodas 4. koda kļūda.
(*Next-hop* - nākamais tuvākais maršrutētājs, kuram var tikt izmantota pakete) 

Ir iekļauta **IP galvene** un papildu dati, kas ļauj klientam saskaņot atbildi ar pieprasījumu, kas izraisīja mērķa nesasniedzamo atbildi.

Skatīt arī
----------

* Ping

Atsauces
--------

1. ↑  «IANA ICMP Parameters». Iana.org. 2012-09-21. Skatīts: 2013-01-07.
2. ↑  Kurose, J.F, Ross, K.W. *Computer Networking: A Top-Down Approach,*. World student series. Addison-Wesley, 2006. ISBN 9780321418494.
3. 1 2 3 4 5 6 7 8 9 10  Veidne:Cite rfc
4. 1 2  Veidne:Cite IETF
5. ↑  Veidne:IETF RFC
6. ↑  «When Are ICMP Redirects Sent?». Cisco Systems. 2008-06-28. Skatīts: 2013-08-15.
7. ↑  «Cisco IOS IP Command Reference, Volume 1 of 4: Addressing and Services, Release 12.3 - IP Addressing and Services Commands: ip mask-reply through ip web-cache». Cisco Systems. Arhivēts no oriģināla, laiks: 2013-01-02. Skatīts: 2013-01-07.

RFCs
----

* RFC 792, *Internet Control Message Protocol*
* RFC 950, *Internet Standard Subnetting Procedure*
* RFC 1016, *Something a Host Could Do with Source Quench: The Source Quench Introduced Delay (SQuID)*
* RFC 1122, *Requirements for Internet Hosts – Communication Layers*
* RFC 1716, *Towards Requirements for IP Routers*
* RFC 1812, *Requirements for IP Version 4 Routers*

Ārējās saites
-------------

* IANA ICMP Parameters
* IANA protocol numbers
* Explanation of ICMP Redirect Behavior