포스트

컴퓨터 네트워크 #14


목차

  1. IPv6

IPv6

IPv6의 등장은 IPv4가 가지는 주소한계 때문이다.

IPv4의 32비트의 주소필드는 40억이 넘는 주소를 할당할 수 있지만, 한 기관이 하나의 LAN 만 사용하는 것이 아니기 때문에 주소필드의 부족함이 생겼다.

이 외에도 다음과 같은 문제점이 발생했다.

  1. IPv4의 문제점

    • IP 주소의 2계층 구조 (네트워크 / 호스트) 는 주소 공간의 낭비가 생긴다.

      → 네트워크 번호가 어떤 네트워크에 할당되었다고 하자.

      그러면 네트워크 번호에 대한 모든 호스트 번호를 이 네트워크에 배정할 것이다.

      실제로는 주소(호스트)가 5개밖에 없다고 할지라도, 네트워크 번호가 사용된 이상 이 네트워크의 모든 주소를 사용하는 것 처럼 보여진다.

    • IP 주소 모델은 IP 네트워크가 인터넷에 연결되어 있지 않더라도 유일한 네트워크 번호를 할당해야 한다.

    • 새로운 분야에서의 TCP/IP 사용 증가로 인한 IP 주소에 대한 요구가 급격히 상승
    • IPv4는 하나의 IP주소 - 각 호스트에 할당하는 방식이지만, 좀 더 좋은 기능을 원한다면 단일 호스트에 여러개의 IP주소를 배정하는 것이 좋다.

    Desktop View


  2. IPv6의 특징

    • 확장된 주소 공간(32비트 → 128비트, 8개의 16진수 수를 : 로 구분)

      → 주소 축약 : 0000 → 0, 단 하나의 0 에 대해서 생략 가능

    • 선택 사항(Option) 을 따로 분리

      IPv6에 있지 않고 별도의 선택 사항 헤더에 있다.

      이렇게 분리된 선택사항 헤더는 라우터에서 검사하거나 처리하지 않기 때문에 패킷 처리 과정이 단순하고 빠르다.

      또한 새로운 선택사항의 추가를 쉽게한다.

    • 주소 자동구성

      IP 주소의 동적 할당

    • 주소 지정 융통성 증가

      애니 캐스트, 멀티 캐스트, 유니 캐스트

      (IPv6 는 브로드캐스트를 지원하지 않는다.)

      애니 캐스트 : 1대 多 전송 (다수 중 가장 가까운 하나에게만 전송)
      멀티 캐스트 : 1대 多 전송
      유니 캐스트 : 1대 1 전송

    • 자원 할당 지원

      송신자의 요구를 위해 특정 트래픽 흐름에 속하는 패킷에 레이블을 달 수 있게 지원한다.


  3. IPv6 PDU(Protocol Data Unit)구조

    Desktop View

    1. IPv6 header

      필수 헤더이다. 40옥텟의 고정길이를 가진다.

      이 헤더를 제외한 나머지를 확장 헤더라고 부른다. (첫번째 그림을 참조)

      IPv4 와 같은 부분은 설명을 생략하였다.

      • 버전 (4비트) : 인터넷 프로토콜의 버전 번호(=6)
      • 페이로드 길이 : 헤더 다음에 따라오는 IPv6 패킷의 나머지 부분 길이를 옥텟 단위로 표시. (= 확정헤더의 총 길이 + 전송계층 PDU)
      • 다음 헤더 : 바로 다음에 오는 헤터의 Type 을 가리킨다. 가리키는 것은 확장헤더이거나 TCP 또는 UDP 같은 상위계층 헤더이다.
      • 홉 한계 : 이 패킷에 대한 남은 홉 수 이다. 노드에서 1씩 감소하며 홉 한계가 0 이 되는 순간 패킷을 폐기한다.
      • 흐름 레이블 (Flow label) : 발신지가 중간 라우터들에게 특별한 처리를 요청한 패킷

      → 발신지 관점 : 같은 전송 서비스 요구 조건을 가지는 발신지의 한 응용에서 생성한 일련의 패킷

      → 라우터 관점 : 라우터가 처리하는 방법에 영향을 주는 속성을 공유하고 있는 일련의 패킷

      → 흐름의 식별 : 발신지 주소 + 목적지 주소 + 흐름 레이블

      → 기능 : 라우터가 헤더의 다른 정보 없이 흐름 레이블 정보만으로도 경로를 찾아 패킷을 처리할 수 있다.


    2. Hop-by-Hop

      홉간 선택 사항 헤더로 홉간 처리를 요구하는 선택사항을 정의함.

      • 경로상의 모든 라우터가 처리해야 한다.
      • 구성

        옵션 식별자(8비트) + 옵션길이(8비트) + 옵션 데이터(가변길이)

      • 옵션 식별자의 구성

        2+1+5 옵션 데이터 (가변길이)

        2 : 옵션 미지원 라우터의 행동을 지시

        00 : 홉간 옵션 헤더를 건너뛰시오.

        01 : 패킷을 폐기하시오.

        10 : 패킷을 폐기하고 발신지 주소로 ICMP 매개변수 문제 메시지를 보내시오.

        11 : 패킷을 폐기하고 목적지 주소가 멀티캐스트 주소가 아닐 때만 패킷의 발신지 주소로 ICMP 매개변수 문제 메시지를 보내시오

        5 : flag 라고 하며 옵션 데이터 변경 기능 여부

      • 옵션 데이터(가변길이)

        • 패드 : 헤더가 8바이트의 배수가 되도록 0을 패딩

        • 점보 페이로드 : 6335 옥텟 이상의 패킷 전송 시 사용, IPv6 기본 헤더의 페이로드 길이는 0으로 표시

        • 라우터 경보 : 라우터가 패킷의 내용을 알아야 되는 경우 사용

      • 단편 헤더(Fragment)

        • IPv6의 단편화는 발신지에서 수행 (IPv4 는 라우터에서 수행했다)
        • 발신지가 경로 상 모든 네트워크의 최소 MTU 값을 알아내는 알고리즘을 수행해야 한다
        • MTU (Maximum Transfer Unit : 최대 패킷 크기)
      • 경로배정 헤더

        하나 이상의 패킷이 목적지로 가는 도중 방문하는 중간 노드의 목록을 가지고 있다.

      • 목적지 선택 사항 헤더

        패킷의 목적지 노드에서만 검사하는 선택사항 정보를 가지고 있다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.