[Network] 3 계층 (Network) (4)

2020. 1. 19. 00:45Network

1. ICMP (Internet Control Message Protocol)
   : 인터넷 제어 메시지로 네트워크 관리 및 오류 보고를 위해 사용이 됨
   : IP의 비신뢰성, 비연결성의 단점을 보완하고자 사용되는 IP Supported Protocol
   : IP보다 상위에서 동작하는 3계층 Protocol이며 특정 프로그램에 의해 호출되었을 때 동작
   : Message 형식으로 정보를 알림

2. ICMP 메시지 종류
   : Type Field의 값을 통해 구분이 됨
   : 정보 교환 및 관리 메시지 (echo - 요청/응답, Router 광고/응답, 정보 요청/응답, mask 요청/응답, 경로 추적, 등)
   : 오류 보고 메시지 (목적지 접근불가, 송신 속도 낮춤, 경로 재설정, 시간초과, 등)

ICMP 메시지 종류

3. ICMP Header
   : ICMP Header는 Other 메시지에 따라 가변적인 크기를 지님
   : 필수 Header의 크기는 8Byte로 고정되어 있으며 필수 Field는 단순하지만 ICMP 종류에 따라 추가 값이 달라짐

전체적인 ICMP Header 구조


ICMP Header 첫 번째 (0 - 4Byte Field)

   1) Type
      : ICMP 메시지의 종류를 알려주는 값 (8번 - ICMP Echo Request, 0번 - ICMP Echo Reply, 그 외 - Error 메시지)

   2) Code
      : 메시지 종류에 따라 상세 원인이나 세부 정보가 필요한 경우 추가 값
      : 기본값은 0이며 Type의 세부 Code가 존재시 Code값 0의 정보를 의미, 없을 시 Null을 의미
      : Network 트러블슈팅시 Code값을 이용해 정보를 알아냄

   3) Checksum
      : ICMP Header의 오류를 검사하기 위한 값


ICMP Header 두 번째 (5 - 8Byte Field)

   4) Other Message Specific Information
      : 선택적 추가 정보가 부여되는 Field이며 메[시지 종류에 따라 필드 구성이 달라짐 (추가로 필요한 정보가 지정)
      : MTU 최소 사이즈를 맞춰주기 위해 Header 뒤에 쓰레기 값을 채움
         A. Error 메시지
            - 오류 메시지의 경우 원본 데이터의 IP Header + Payload 중 앞의 8Byte 정보를 입력
            - Echo 메시지의 경우 연속으로 여러 번 보내기 때문에 식별 값이나 순서 번호 등을 입력
            - Redirect 메시지의 경우 경로 재설정 정보를 입력


정보 교환 및 관리 메시지 구조
오류 보고 메시지 구조

 

728x90

'Network' 카테고리의 다른 글

[Network] 4 계층 (Transport) (1)  (0) 2020.01.19
[Network] 3 계층 (Network) (5)  (0) 2020.01.19
[Network] 3 계층 (Network) (3)  (0) 2020.01.19
[Network] 3 계층 (Network) (2)  (0) 2020.01.18