본문 바로가기
네트워크 이야기

IP 기초이론 (5편)

by 민건사랑 2019. 8. 8.

IP 기초이론 5편에서는 TCP/IP에 대한 두 번째 시간으로 IP에 대해 알아보도록 하겠습니다.

◆ IP (Internet Protocol) 특징

IP Protocol 

         . 논리적 주소인 IP Address 사용

         . IP Address를 이용 경로 관리

         . 최적의 경로 선택                                           

         . Pakcet 전송

         . Best-Effort Delivery : 신뢰성 보장 못함

 IP는 IP Address 기반으로 Network이나 Host를 인지하며 목적지 주소지로 Packet 전송을 담당하고,

 목적지 주소가 없는 경우에는 무조건 해당 Packet을 Discard 합니다.

 IP는 TCP나 UDP와 같이 상위 Layer의 Protocol로부터 Data를 받아서 Packet 단위로 전송합니다.

 Layer2로 보낼 때는 커다란 Packet을 작은 단위의 Frame으로 분할(Fragmentation)하여 전송하며,

 Frame의 크기는 Layer2 Protocol의 종류에 따라 달라지게 됩니다.

 반대로 Layer2로부터 받은 Frame을 재조립(Reassemble)하여 Layer 4로 보내줄 때, Layer 4의 

 어떤 Protocol에게 보낼 것인지를 구분하기 위해 Protocol ID가 사용됩니다.

   ※ 참조 사이트 : http://www.iana.org/assignments/protocol-numbers 

 

Internet Assigned Numbers Authority

Management of the DNS Root Zone (assignments of ccTLDs and gTLDs) along with other functions such as the .int and .arpa zones.

www.iana.org

   ㅇ IP 데이터그램 처리

      한 메시지가 여러 개의 패킷으로 나뉘어졌기 때문에, 각 패킷은 필요한 경우 서로 다른 경로를 통해 보내질 수도

      있으며, 패킷들은 원래 보낸 순서와는 다른 순서로 도착될 수도 있습니다.

       IP는 단지 패킷 배달만 할 뿐이며, 순서가 흐트러진 패킷들을 올바르게 재 정렬하는 것은 상위 프로토콜인 TCP가

       처리하게 됩니다.

◆ IP Header

IP Header

     ㅇ VER (Version) : IP Protocol version (IPv4, IPv6)

      ㅇ HLen (Header Length) : 32비트 단위의 헤더길이를 표시하고, 데이터그램의 헤더는 60바이트까지 가능합니다.

                                                  대부분의 IP 헤더의 길이는 20바이트이며, 이 필드의 값은 거의 항상 5이다.

                                                  (5 * 32 = 160비트, 또는 20바이트)

      ㅇ Service Type : 우선순위(3bit)와 서비스 유형(4bit)의 서브 필드로 구성되며, 현재 버전(version 4)에서는

                                 보통 우선순위는 사용되지 않고, QoS(Quality of Service)에서 사용됩니다.

       ㅇ Total Length : IP Header와 데이터 길이의 합계이며, 16bit로 표현되므로 IP Packet의 최대 길이는 

                                   65,536 바이트까지 가능합니다.

       ㅇ Fragmentation Identifier : 데이터그램의 식별자를 말합니다.

       ㅇ Fragmentation Flags : Fragment된 패킷인지, Fragment 된 경우 마지막 Fragment 인지를 표시합니다.

       ㅇ Fragment Offset : Fragment된 패킷인 경우, 원래 패킷에서의 위치를 표시합니다.

       ㅇ TIME TO LIVE (TTL) : 데이타그램의 수명을 나타내고, 라우터를 경유 시 홉마다 1씩 감소합니다.

       ㅇ Protocol Identifier : IP가 전송하는 프로토콜을 명시합니다. (TCP=6, UDP=17, ICMP=1)

       ㅇ Header Checksum : IP Header의 체크섬 값을 저장하고, 경유지 및 도착지에서 헤더의 체크섬을

                                            재계산하여 일치하지 않으면 데이타그램을 폐기합니다.

       ㅇ Source Address : 보내는 노드의 32bit IP address

       ㅇ Destination Address : 받는 노드의 32bit IP address

       ㅇ IP Options : 특별한 IP 추가 Option을 절정할 수 있으나, 대부분의 경우 사용하지 않고, 최대 40Byte까지

                               가능하므로 IP Header의 크기는 최대 60Byte에 이를 수 있습니다.

       ㅇ Padding : Option이 추가되는 경우, IP Header가 32bit 단위로 끝날 수 있도록 채우는 부분입니다.

       ㅇ IPv4의 기본 헤더는 20Byte이며, 12개의 필드로 구성되어 있습니다.

◆ ICMP

       ☞  ICMP : Internet Control Message Protocol

       ☞  오류보고 - Error 발생 시 처리에 관한 IP의 단점을 보완

       ☞  ICMP 에러 메시지

            - Echo Request & Relay (Ping Command)

            - Destination Unreachable : 라우터가 최종 목적지로 데이터그램을 전달할 수 없을 때

                . 라우터가 최종 목적지로 데이터그램을 전달할 수 없을 때

                . network unreachable, host unreachable, port unreachable

            - ICMP Redirect

                 . 데이터그램이 잘못된 라우터로 전달되었을 때 해당 라우터는 데이터그램을 잘못 보낸 호스트에게 올바른

                    경로 정보를 전달해 주고, 이후 호스트 라우팅 테이블을 갱신하고 정상적인 경로로 데이터그램을 전송합니다.

            - Time Exceed

                  . 데이터그램의 Time To Live(TTL)값이 0이 되었을 때, 해당 데이터그램의 송신자에 보내는 메시지

                  . traceroute는 icmp time-exceeded 메시지를 이용

ICMP

    IP 계층의 일부이며, ICMP Message는 IP Packet으로 만들어진 다음 전달됩니다.

    IP Datagram을 전달하는데 발생하는 에러 혹은 특별한 상황에 대한 정보를 주고받으며

    에러 메시지와 정보 관련 메시지로 구성되어 있습니다.

    ㅇ ICMP 정보 관련 메시지

        - Echo Request/Reply

           . echo request 메시지는 특정 호스트의 ICMP 프로세서에 보내지고 

           . ICMP 프로세스는 반드시 echo reply 메시지를 응답해야 합니다.

지금까지 IP 및 ICMP 정보에 대해 알아보았습니다.

다음시간에는 ARP 및 Ethernet 개념에 대해 알아보도록 하겠습니다. *^.^*

 

'네트워크 이야기' 카테고리의 다른 글

IP address 이야기  (0) 2019.08.09
IP 기초이론 (6편)  (0) 2019.08.08
IP 기초이론 (4편)  (0) 2019.08.07
IP 기초이론 (3편)  (0) 2019.08.07
IP 기초이론 (2편)  (0) 2019.08.06