Backend/Network

ICMP

petitCoding 2012. 4. 12. 11:24

ICMP (Internet Control Message Protocol): 인터넷 제어 메시지 프로토콜

 

ICMP는 IP layer의 한 부분으로 에러나 주의가 요구되는 상태 등을 전송하는 역할을 하며. ICMP 메시지는 IP 계층이나 그보다 높은 계층(TCP, UDP 등)에 의해 호출된다.

 

ICMP 메시지는 다음 그림처럼 IP 데이터그램 안에 포함되어 전송된다. (메시지는 TCP/UDP 계층에서 처리)

 

IP Datagram

 IP Header (20 Bytes)

  ICMP Message

 

 

ICMP는 RFC 792번에 정의되어 있다.

 

다음은 ICMP메시지의 구조를 그림으로 나타낸 것이다.

 

 

 Type (8 - bit)

 Code (8 - bit)

 Checksum (16 - bit)

 

이 세 필드 뒤에는 타입과 코드에 따라 컨텐츠가 존재할 수 있다.

 

 

 

ICMP메시지의 가장 간단한 예로 Ping  명령을 들 수 있다. 사용자가 Ping명령어를 수행하게 되면, 이 시스템은 ICMP 프로토콜을 사용하여 해당 IP에 접속이 가능한지 여부를 확인한다.

 

실제 패킷 확인하기

 

 1. 원하는 IP로 핑 명령을 날린다.

 

 

 

2. 다음과 같이 Ping명령어가 ICMP 프로토콜을 사용하는 것을 확인한다.

이때 Type은 8번 Echo (ping) request 이다.

 

 

 

반응형

'Backend > Network' 카테고리의 다른 글

패킷 송 수신 처리  (0) 2012.04.12
IPv6 헤더 구조  (0) 2012.04.12
TLS 프로토콜 정리.  (0) 2012.04.12
OSI MODEL  (0) 2012.04.12
NAT  (0) 2012.04.12