Hoofdindex » Servers » TechTalk » ICMP
Webservers en meer
TechTalk
ICMP
UDP en TCP zijn twee gebruikers-protocollen; ze dienen om gegevens van een host naar een andere host te sturen. Beide protocollen maken op hun beurt gebruik van het internet protocol (IP) om de pakketten te versturen. ICMP is een in-band signaling protocol.
in-band
Het maakt gebruik van de beschikbare middelen (het internet protocol) die ook voor andere gebruikers beschikbaar zijn gesteld. Dit is te vergelijken met telefonie, waarbij het kiezen met toonpulsen ook in-band is, want het gebruikt toonfrekwenties die in de beschikbare bandbreedte liggen.
signaling protocol
ICMP is een "housekeeping" protocol, het dient voor de goede werking van het internet zelf. Het geeft transmissiefouten aan zodat de zender of routers onderweg de verzending kunnen aanpassen.

Internet Control Message Protocol

PING
(packet internet groper)

PING is de meest bekende toepassing van de ICMP suite. Het wordt door een host uitgestuurd en vraagt aan de bestemmeling om de gegevens terug te sturen (echo). Daardoor kan de zender bepalen of een host beschikbaar is of niet. Omdat het echo pakket kan misbruikt worden om een server aan te vallen (dDOS: distributed denial of service) zullen sommige servers niet op echo verzoeken reageren. Het ICMP ping is een protocol met een lagere prioriteit, waardoor het soms wat langer kan duren vooraleer een antwoord toekomt.

Tracert (trace route)

Bij traceroute wordt ieder station (meestal een router) aangegeven. Dit gebeurt door pakketten uit te sturen met iedere keer een grotere TTL (time to live). Iedere keer als een pakket een router passeert wordt de TTL met één verminderd, en als het nul bereikt wordt het pakket verwijderd en een foutbericht teruggestuurd.
Het traceroute-pakket is een UDP pakket onder Unix, terwijl windows een ICMP echo pakket gebruikt. De eerste pakket vervalt al bij de eerste router (en de router stuurt dan een ICMP fout-pakket terug), de tweede pakket vervalt bij de tweede router, enz. Daarmee kan de zender de route ddie de pakketten volgen bepalen.

Source quelch

Een ander toepassing van het ICMP is het bijsturen van de snelheid waarmee een zender gegevens uitstuurt (zie pagina over sliding windows). Een ontvanger kan bijvoorbeeld een source quelch pakket uitsturen als het de gegevens niet aan de huidige snelheid kan ontvangen en verwerken. Een router kan ook een source quelch bericht uitsturen als er congestie dreigt (de router kan niet meer alle pakketten verdelen). De zender moet na het ontvangen van een source quelch pakket zijn snelheid verminderen. Dit gebeurt door het aantal uitgestuurde maar niet bevestigde pakketten te verminderen (kleinere sliding window).

Destination unreachable

Als een server niet bereikbaar is, dan kan door een station onderweg een antwoord gestuurd worden "destination unreachable". Dit is niet verplicht, de zender gaat er automatisch van uit dat een bestemming onbereikbaar is als er geen antwoord binnen een redelijke termijn toekomt. Door een fout-pakket te versturen kan de foutconditie aan zender-zijde sneller gedetecteerd worden.

ICMP en het OSI model

ICMP hoort bij de netwerk-laag van het OSI-model zoals ARP (address resolution protocol: het omzetten van een IP address (logisch adres) in een MAC address (fysisch adres)).

ICMP is een housekeeping protocol (ervoor zorgen dat het algemene internet systeem goed werkt), het is de olie die het systeem goed laat draaien.

Het ICMP gedraagt zich als een toepassing (laag application), maar het is een toepassing die niet zichtbaar is. ICMP en ARP maken gebruik van het internet protocol (zoals UDP of TCP dat doen) om pakketten te versturen (vandaar de naam "in band").

Links to relevant pages - Liens vers d'autres pages au contenu similaire - Links naar gelijkaardige pagina's