Je@nb ; attention
icmp n'est pas au meme niveau dans la couche osi que tcp ou udp.
icmp est au meme niveau que IP : couche réseau
tcp et udp sont au dessus : couche transport.
un ping , utilise le protocole ICMP type8code 0 (echo request) et type0 code 0( echo reply).
traceroute, suivant les impléemntations, utilise le protocole UDP en high ports ou ICMP, voir meme du tcp ( voir tcp traceroute, très très intéressant à tester !)
je te conseille de jeter un coup d'oeil sur le wiki qui va bien.