Computer Science/컴퓨터 네트워크

[컴퓨터 네트워크] ICMP (Network Layer, 3계층)

lko9911_ 2025. 11. 28. 11:33
ICMP란?

 

ICMP (Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜)는 IP 네트워크에서 오류 메시지 전송과 진단을 담당하는 프로토콜입니다.

  • TCP/IP 프로토콜 계층에서는 IP 계층 바로 위, 전송 계층(TCP/UDP)과는 별개로 동작합니다.
  • 데이터 전송 자체는 하지 않고, 네트워크 상태를 알리거나 문제를 보고하는 역할을 합니다.
주요 목적
  1. 오류 보고 (Error Reporting)
    • 목적지에 도달하지 못한 패킷, TTL(Time To Live) 초과 등 문제를 알려줌
    • 예: “호스트를 찾을 수 없음”, “네트워크 도달 불가”
  2. 진단 기능 (Diagnostic)
    • 네트워크 연결 상태 확인
    • 대표적인 명령어: ping, traceroute

 

ICMP 메시지 종류

 

1. 오류 메시지(Error Messages)

Destination Unreachable 목적지 호스트/네트워크에 도달할 수 없음
Time Exceeded TTL 초과 (패킷이 너무 오래 살아있음)
Parameter Problem 잘못된 헤더 또는 옵션 발생

 

 

2. 정보 요청/응답(Informational Messages)

Echo Request / Echo Reply ping 명령어에서 사용, 네트워크 연결 테스트
Timestamp Request / Reply 패킷 지연 시간 측정

 

ICMP와 Ping
  • ping 명령어는 ICMP Echo Request를 보내고,
    상대방이 Echo Reply를 보내는 시간을 측정해서 RTT(Round Trip Time)를 확인합니다.
  • 즉, 우리가 코드에서 하는 핑 테스트가 바로 ICMP 기반 진단입니다.

 

참고 자료

 

 

[컴퓨터 네트워크] 핑 개념

💡 핑 (Ping)의 의미 핑(Ping)은 컴퓨터 네트워크에서 어떤 호스트(Host, 컴퓨터나 서버)가 현재 접속 가능한 상태인지, 그리고 데이터를 주고받는 데 걸리는 시간(지연 시간)이 얼마나 되는지를 확

whitecode2718.tistory.com