[네트워크 상식 45] ICMP 프로토콜에 대해 알아보자
관리자 | 2024-08-21 | 조회 15
[네트워크 상식] ICMP 프로토콜에 대해 알아보자
인터넷 제어 메시지 프로토콜(Internet Control Message Protocol, ICMP)은 네트
워크 장치에서 네트워크 통신 문제를 진단하는 데 사용하는 네트워크 계층 프로
토콜입니다. ICMP는 주로 데이터가 의도한 대상에 적시에 도달하는지 여부를
확인하는 데 사용됩니다. 이 프로토콜을 통해 디바이스는 네트워크 오류를 통신
할 수 있으며, 일반적으로 네트워크 진단에서 다양한 문제를 해결하고 보고하는
데 사용됩니다.
ICMP는 동작절차와 ping 명령어
다른 프로토콜과 달리 ICMP는 디바이스가 메시지를 전송하는 데 연결이 설정
되어 있지 않아도 됩니다. 이것이 바로 “무연결 프로토콜”이라고 불리는 이유
입니다. TCP와 같은 일부 다른 프로토콜은 통신하기 전에 연결을 설정하기 위해
여러 단계의 ‘핸드셰이크’(‘악수’의 영어 단어로 프로토콜 내 정보 처리 동의 과정
을 의미함)가 필요합니다.
ping 명령을 예로 들어 네트워킹에서 ICMP가 동작하는 절차는 아래와 같습니다.
보고하는 메시지르 다시 보냄.
상기 그림에서와 같이 Ping 명령은 데이터가 두지점을 이동하는데 걸리는 시간을
체크하며, 주고 받은 패킷의 수와 손실율을 계산하여 보냅니다.
tracert 명령어
Tracert 명령어는 trace와 route의 두단어를 합성한 것으로 ICMP 패킷을 특정
목적지로 보내고 패킷이 목적지에 도달했는지 여부와 이동 시간을 사용자에게
알려줍니다. 특히 데이터의 이동 경로에 대한 정보, 즉 ICMP 패킷이 목적지에
도달하기 위해 통과해야 했던 모든 연결된 노드와 노드간에 데이터를 전송하는데
필요한 시간을 알려줍니다.
따라서 tracert 명령어는 데이터가 목적지까지 이동하는데 걸리는 시간과 통과한
장치를 체크한 정보를 제공하여 줍니다.
또한 상기 그림에서 “요청시간이 만료되었습니다”라는 메시지는 특정 노드까지의
ICMP 에코 요청 메시지가 도달하지 않거나, 해당 노드에서 응답이 너무 늦거나
없는 경우에 표시되는데 아래와 같은 경우의 원인에 해당될 때 표시됩니다.
참조문헌: 에듀탑원 LAN강의 내용중 발췌