ICMP (Internet Control Message Protocol) finns vid nätverksskiktet i OSI-modellen (eller strax ovanför det i Internet-lagret, som vissa hävdar), och är en integrerad del av Internet Protokollsvit (vanligen kallad TCP / IP).
ICMP tilldelas protokoll nummer 1 i IP-sviten enligt IANA.org.
Utformad för att fungera som felrapportering och frågetjänst, spelar den en avgörande roll i datatjänsten värd-till-värd i nätverkskommunikation.
Det är den del av IP-tjänsten som fungerar som återkopplingssystem i nätverkets IP-kommunikation, så att paket som inte kan levereras rapporteras till den sändande värden, till exempel routern eller gatewayen.
Alla IP-nätverksenheter kan skicka ICMP-datagram, inklusive nätverkskort och andra enheter som vanligtvis används i din miljö.
Vad är ICMP?
ICMP: s roll i nätverkskommunikation kan liknas vid ett team som samlar en automobi använder delar som skickas från tillverkaren.
Tillverkaren skickar delarna en efter en, förutsatt att de tas emot av monteringsbesättningen.
Ibland dock en del kommer inte som planerat, eller delar saktas ner med sin vanliga leveransmetod och det finns ett snabbare sätt att få delar till montering.
Monteringsbesättningen behöver ett sätt att meddela tillverkaren att skicka den saknade delen igen. eller för att skicka delarna via en annan, snabbare avsändare eller rutt.
ICMP spelar denna roll som budbäraren som vidarebefordrar information från mottagaren till avsändaren.
Detta protokoll är en ganska komplex. Det rapporterar inte bara paket som inte kan levereras och värdar som inte kan nås, det skickar också omdirigeringsmeddelanden, eko- och ekosvar och andra som diskuteras nedan.
(Echo / echo-svarsmeddelanden används av det välkända PING-kommandot, vilket tillåter en användare att skicka ett eko till en mottagande värd, som skickar ett ekosvar om eko tas emot).
ICMP-meddelanden ger systemet ett sätt att meddela källvärden om fjärrvärden inte är mottagning av de sända paketen.
ICMP hjälper inte IP att vara mer pålitlig och den tar inte emot eller skickar några faktiska data. Det existerar helt enkelt som ett återkopplingssystem, en resurs för att identifiera problem med förlorade paket och trasiga datarutor.
Ett av de mest kända och användbara meddelandena i ett ICMP-datagram är Destination Unreachable-meddelandet. p>
Destination Oåtkomliga meddelanden genereras av flera anledningar, inklusive att de inte kan nå ett nätverk, en värd, en port eller ett protokoll.
En router skickar dessa Destination Unreachable-meddelanden tillbaka till värden, som vanligtvis skickar det till applikationen som genererade det ursprungliga paketet.
Felmeddelandena meddelar applikationen att försöka igen, och vid behov kan värdapplikationen generera ett felmeddelande till användaren av applikationen och meddelar dem om nätverksanslutningsproblem.
Det är viktigt att veta att även om Destination Unreachable-meddelanden är de som människor vet bäst genom PING-verktyget, de är inte allt som finns för ICMP.
Andra viktiga meddelanden inkluderar e omdirigeringsmeddelandet, som en gateway använder för att meddela värden för att skicka trafik till en annan router.
Time Exceeded används av en router för att berätta för värden att ett paket har överskridit sin tid att leva ( TTL) och har kasserats; när en värd börjar ta emot tidsöverskridna paket kan det vara en indikation på att det finns en återkopplingsslinga någonstans nedströms.
Source Quench-meddelanden skickas från en router till en värd så att den vet att dess buffringskapacitet är full och för att pausa kort sändningar så att den kan komma ikapp.
Andra typer av meddelanden inkluderar bland annat Parameter Problem, Address Mask Request & Svara och tidsstämpel.
ICMP skickar inte meddelanden om ICMP-meddelanden; om detta skulle hända, skulle det skapa en återkopplingsslinga – ett returnerat ICMP-meddelande skulle generera ett ICMP-meddelande tillbaka till andra sidan, vilket skulle generera ett annat meddelande, och så vidare, skapa en storm av ICMP-paket som snabbt skulle översvämma ett nätverk .
Av samma anledning kommer ICMP inte att svara på sändnings- eller multicast-adresser. Till skillnad från andra IP-protokoll som TCP och UDP, utbyter ICMP inte data mellan värdar.
Som en allmän regel interagerar slutanvändare inte med detta protokoll förutom ett begränsat antal diagnostiska verktyg, såsom ping. och traceroute, används för att felsöka nätverks- och internetanslutningar.
ICMP kan utnyttjas för att attackera datorer med det som kallas ”Ping of Death”, vilket är en vanlig cyberattack som kan orsaka Denial of Service-problem i dina nätverk.
Ett IP-paket som är utformat för att översvämma en måldators buffert skickas i ett försök att krascha dess system.
En annan attack består av översvämningar av pingförfrågningar som hindrar normal trafik från att komma till den riktade datorn.
Dessa attacker är relativt enkla att förhindra genom att implementera kontroller av IP-fragment i ommonteringsprocessen .
ICMP-meddelanden är datagram som är inkapslade i IP-paket och används av både IPv4 (ICMPv4) och IPv6 (ICMPv6) -protokoll.
Dessa paket börjar med en IP-rubrik, följt av ICMP-rubriken, typ och kod, kontrollsumma och data.
Uppgifterna beror på typ- och kodfält som identifierar ICMP-meddelandet som skickas.
Ett av de viktigaste delar av Internetprotokollpaketet, har ICMP en avgörande roll i IP-nätverkskommunikation.
Det säkerställer att en sändande värd vet om dess paket inte tas emot av fjärrvärden och ger viktig information om nätverksproblem som samt att hjälpa värdar att överföra data mer effektivt.
Nätverkstekniker och administratörer använder det också som diagnos stic verktyg för att identifiera felpunkter i nätverket.
Ett ytterst oumbärligt verktyg i vårt ständiga, oändliga flöde av miljarder och miljarder IP-paket som skickas runt om i världen varje sekund varje dag.