Protokół ICMP jest używany do różnych celów, w tym do diagnozowania problemów z łącznością sieciową, sprawdzania, czy zdalny host jest osiągalny i rozwiązywania problemów związanych z siecią. Jednym z najpopularniejszych narzędzi wykorzystujących ICMP jest narzędzie ping, które służy do testowania osiągalności hosta i mierzenia czasu podróży pakietów wysyłanych do i odbieranych z hosta.
Narzędzie ping bazuje na protokole ICMP, a konkretnie na komunikatach ICMP Echo Request i Echo Reply. Po wydaniu polecenia ping, host wysyłający wysyła komunikat ICMP Echo Request do hosta docelowego. Host docelowy odpowiada następnie komunikatem ICMP Echo Reply, wskazując, że otrzymał żądanie. Czas podróży w obie strony jest obliczany poprzez pomiar czasu potrzebnego na wysłanie żądania i odebranie odpowiedzi.
Oprócz wykorzystania w narzędziu ping, protokół ICMP jest również używany do innych celów, takich jak powiadamianie routerów o przeciążeniu sieci, zgłaszanie błędów w dostarczaniu pakietów IP i ułatwianie procesu wykrywania maksymalnej jednostki transmisji ścieżki (PMTU).
TCP, czyli Transmission Control Protocol, to kolejny protokół działający w warstwie transportowej, znanej również jako warstwa 4 modelu OSI. Jest on odpowiedzialny za zapewnienie niezawodnego i uporządkowanego dostarczania danych pomiędzy aplikacjami działającymi na różnych hostach. Gdy połączenie TCP jest nawiązywane między dwoma hostami, do ustanowienia połączenia używany jest trójstronny handshake, a następnie dane są przesyłane w segmentach.
Podsumowując, ICMP działa w warstwie sieciowej modelu OSI i jest używany do wysyłania i odbierania komunikatów o błędach oraz informacji operacyjnych o sieci. Narzędzie ping jest oparte na protokole ICMP i jest powszechnie używane do testowania łączności sieciowej i mierzenia czasów połączeń w obie strony. Protokół TCP działa w warstwie transportowej i jest odpowiedzialny za zapewnienie niezawodnego i uporządkowanego dostarczania danych między aplikacjami działającymi na różnych hostach.
ICMP (Internet Control Message Protocol) nie działa na porcie, ponieważ nie jest protokołem warstwy transportowej, takim jak TCP lub UDP. Działa on w warstwie sieciowej modelu OSI. Zamiast portów, ICMP używa różnych typów wiadomości do przekazywania informacji związanych z siecią między urządzeniami.