The Internet Control Message Protocol works at the same level as the UDP and TCP – it uses the Network Layer, the Internet Protocol (IP). It is used for troubleshooting and to announce network errors and timeouts. Please refer to RFC 792 (Postel 1981) for details.