IP Header

soma·2024년 2월 12일

네트워크

목록 보기
3/12
post-thumbnail

IP Header
: IP 데이터그램(패킷)의 앞부분에서 주소 등 각종 제어 정보를 담고 있는 부분
-> IP 데이터그램 = IP 헤더 + 데이터

IPv4 헤더 구성

IPv4 헤더 각 필드의 역할과 기능

  • Version ( 4bits )

    • IP 프로토콜이 버전을 표시함. 현재는 IPv4 사용함.
  • Header Length ( HLEN | 4bits )

    • 헤더의 길이
      • 32bits (4bytes) 워드 단위로 헤더 길이 표시
    • 길이 값 표현
      • 최소 5 (4x5=20bytes) 부터 15 (4x15=60bytes, 옵션 포함된 경우) 까지의 값
  • Type Of Service ( ToS | 8bits )

    • 요구되는 서비스의 품질을 나타냄
    • 처리량, 전달 지연, 신뢰성, 우선순위 등을 지정
  • Total Length ( 16bits )

    • IP 헤더 및 데이터를 포함하는 IP 패킷 전체 길이를 Byte 단위로 길이를 표시함.
    • 최대값은 65,535 = (2^16 - 1)
    • RFC 791 권고 : 68 ~ 65,535byte 범위로써 가능
  • Identification ( 16bits )

    • 모든 IP 패킷은 생성될 시에 식별 번호를 부여 받음.
  • Flag ( 3bits )

    • 분열의 특성을 나타내는 플래그
    • 단편화 금지(Don't Fragment)를 포함
  • Fragment Offset ( 13bits )

    • 하나의 패킷이 여러 개의 프래그먼트로 분할되기 전 원래의 데이터그램의 8byte 단위의 위치
    • 따라서 분할된 프레그먼트들은 이 분할 위치 값을 이용하여 원래의 패킷으로 재조립됨.
  • Time To Live ( TTL | 8bits )

    • 패킷의 수명을 나타냄.
    • Looping에 의해 패킷이 영구히 떠도는 것을 방지
  • Protocol ( 8bits )

    • IP 계층의 서비스를 사용하는 상위 계층 프로토콜을 정의함.
    • TCP(->6), UDP(->17), ICMP(->1), IGMP(->2)와 같은 여러 종류의 상위 프로토콜을 캡슐화할 수 있음.
  • Header Checksum ( 16bits )

    • IP 헤더의 오류 검사를 위한 필드
    • 체크섬 필드를 '0'으로 하여 계산함.
  • Source IP Address ( 32bits )

    • 32bits 길이의 송신처 IP 주소
    • IP 주소는 네트워크 필드 및 호스트 필드의 길이에 따라 클래스 a, b, c (공인 및 사설 IP 주소로 나뉨) 주소로 나뉘며, 이 외에도 클래스 d (멀티캐스트 주소)와 클래스 e (예약된 주소)로 나뉨.
  • Destination IP Address ( 32bits)

    • 32bits 길이의 목적지 IP 주소
  • Options

    • 패킷의 전송 경로를 포함한 IP 프로토콜의 동작 옵션을 정의하는 필드

IPv4의 한계

  • 주소 공간의 고갈
  • 최소 지연과 자원의 예약 불가
  • 암호화와 인증기능 미제공

IP 주소 클래스란?

Class 별 IP범위

  • A 클래스 ( 0 ~ 127 )
    A class
    • 하나의 네트워크가 가질 수 있는 호스트 수가 가장 많은 클래스
    • 네트워크 주소는 1.0.0.0 ~ 126.0.0.0 까지로 규정
    • ⇒ 네트워크및 브로드캐스트 주소사용으로 2개를 호스트 주소에서 제외해야 함

  • B 클래스 ( 128 ~ 191 )
    B class
    • host 대역이 16bit 이므로 네트워크 당 나올 수 있는 호스트 수는 약 65000개 이므로 중규모 네트워크에 적합

  • C 클래스 ( 192 ~ 223 )
    C class
    • host 대역이 256개이므로 소규모 네트워크 환경에 적합

  • D 클래스 ( 224 ~ 239 )
    • 멀티캐스트용 대역으로 IP주소에 할당되지 않음

  • E 클래스 ( 240 ~ 255 )
    • 연구용 예약된 주소 대역으로 IP주소에 할당되지 않음



IPv6 헤더 구성

IPv6 헤더 각 필드의 역할과 기능

  • Version ( 4bits )

    • IPv6 버전을 나타냄. IPv6헤더는 항상 6으로 설정됨.
  • Traffic Class ( 8bits)

    • 서비스 품질과 관련된 정보를 담고 있음(IPv4의 ToS 필드와 유사)
    • 서비스 우선순위와 트래픽 클래스 지정
  • Flow Label ( 20bits )

    • IP를 연결지향적 프로토콜로 사용할 수 있게 함
    • 같은 플로우 패킷을 식별하기 위한 레이블.
    • 실시간 서비스 등 같이 우선권을 주기 위하여 특정 트래픽 flow에 대한 라벨링
  • Payload Length ( 16bits )

    • IPv6 헤더와 페이로드(실제 데이터길이)의 길이를 나타냄
    • 페이로드 길이를 Byte 단위로 표시
    • 필드의 길이가 16bits 이므로 2^16(65,536)bytes까지 표시
    • 더 큰 데이터그램을 보내기 위해 Hop-by-Hop 확장헤더의 Jumbo Payload 옵션을 이용
    • Jumbo Payload 옵션을 사용할 경우 페이로드 길이 필드는 모드 '0'으로 설정
  • Next Header ( 8bits)

    • IPv6 기본 헤더 다음에 따라올 확장 헤더 또는 실제 데이터 종류를 나타냄.
  • Hop Limit ( 8bits )

    • 패킷이 호핑할 수 있는 최대 라우터 수를 제한하는 값. (TTL과 같은 역할)
  • Source Address ( 128bits )

    • 출발지 IPv6 주소
  • Destination Address ( 128bits )

    • 목적지 IPv6 주소
  • IPv6 헤더에는 추가적인 확장 헤더들이 포함될 수 있고, 이들은 Next Header 필드를 통해 서로 연결되어있다.

IPv6 주소의 장점

  • 확대된 주소 공간

    • 주소의 길이가 128bits로 IPv4의 4배
  • 단순해진 헤더 포맷

    • IPv4의 불필요한 필드를 제거하여 빠른 처리 가능
  • 간편해진 주소 설정 기능

    • IPv6 프로토콜에 내장된 주소 자동 설정 기능을 이용한 플러그 앤 플레이 설치 가능
  • 강화된 보안기능

    • IPv6에서 IPSec 기능을 기본 제공
  • 개선된 모바일 IP

    • IPv6 헤더에서 이동성을 지원

IPv4 및 IPv6 주소 비교

구분IPv4IPv6
주소 길이32bits128bits
표시 방법8bits 씩 4부분으로 10진수로 표시
ex) 202.30.64.22
16bits 씩 8부분으로 16진수로 표시
ex)2001:0230:abcd:ffff:0000:0000:ffff:1111
주소 개수약 43억개약 43억x43억x43억x43억개
주소 할당A,B,C 등 클래스 단위의 비순차적 할당네트워크 규모 및 단말기 수에 따른 순차적 할당
품질 제어지원 수단 없음등급 및 서비스별로 패킷을 구분할 수 있어 품질 보장 용이
보안 기능IPSec 프로토콜 별도 설치확장기능에서 기본으로 제공
Plug & play지원 수단 없음Auto Configuration 기능을 이용하여 IP주소 자동 할당
헤더 크기옵션 필드로 인한 가변 크기40bytes 고정 길이 Header
모바일 IP상당히 곤란용이
웹 캐스팅곤란용이
주소 유형유니캐스트
멀티캐스트
브로드캐스트
유니캐스트
멀티캐스트
애니캐스트

IPv4 헤더 vs IPv6 헤더 비교

IPv4 헤더 vs IPv6 헤더 비교


주소 유형

주소 유형내용그림
Unicast1:1 통신
대상 MAC Addr가 아닐 시 drop하기 때문에 다른 pc들의 성능을 저하하지 않음
unicast
Broadcast1:N 통신
보통 유니캐스트 통신 전 네트워크 장비의 주소를 정확히 알기 위해 동일 네트워크에 존재하는 모든 장비와 통신
트래픽 증가, 오버헤드 발생
broadcast
Multicast1:그룹 통신
그룹 주소를 이용하여 해당 그룹에 속한 다수의 호스트로 패킷을 전송
라우터나 스위치에서 기능을 제공해야 함
multicast
Anycast1:1 통신(가장 가까운 통신)
유니캐스트와 비슷하지만 다른 점으로는 네트워크에 연결된 수신 가능한 장비 중에서 가장 가까운 한 노드에만 전송함(IPv6 기반으로 동작)
anycast
profile
배움의 기록을 차곡차곡

0개의 댓글