네트워크 계층

삼식이·2022년 11월 14일
0

컴퓨터 통신

목록 보기
11/11

본 자료 정리는 '쉽게 배우는 데이터 통신과 컴퓨터 네트워크(개정판)' 원서에 출처합니다. Copyright © 한빛 아카데미.

학습목표

  • IPv6의 필요성과 헤더 구조 이해
  • 이동 IP 프로토콜의 터널링 원리 이해
  • ARP/RARP의 필요성 이해
  • ICMP의 헤더와 제어 메시지 이해
  • IGMP의 헤더와 멀티캐스트 그룹 관리 방식 이해

내용

  • IPv6 프로토콜
  • 이동 IP 프로토콜
  • 기타 네트워크 계층 프로토콜

IPv6 프로토콜

  • IPv6의 주요 변경 사항

    • 주소 공간 확장: 공간이 32비트에서 128비트로 확장(이론상 2의 128승개의 호스트)

    • 헤더 구조 단순화: 오류제어 등의 오버헤드를 줄여 프로토콜의 전송 효율 향상

    • 흐름 제어 기능 지원: 일정 범위 내에서 예측 가능한 데이터 흐름을 지원
      (스트리밍 서비스) -> 실시간 멀티미디어 응용 환경을 수용

IPv6 헤더 구조

  • 9개의 기본 필드를 지원, 총 40바이트 중에서 32바이트는 주소 공간으로 할당, 8바이트만 프로토콜 가능

  • 확장 헤더의 종류: 기본 헤더 바로 뒤에 하나 이상 확장 가능

    • Hop-by-Hop Options Header: hop-by-hop 옵션 처리를 지원

      • Jumbo 페이로드 옵션: 데이터의 크기가 65,535 바이트보다 클 때 사용
      • 라우터 긴급 옵션: 라우터에 전송 대역 예약 같은 특정 정보를 제공
    • Routing Header

      • IPv4의 소스 라우팅과 유사한 기능
      • 패킷이 Routing Header에 지정된 특정 노드를 경유하여 전송됨
    • Fragment Header: 패킷 분할과 관련된 정보를 포함

    • Destination Options Header: 수신 호스트가 확인할 수 있는 옵션 정보

    • Authentication Header: 패킷 인증 관련 기능

    • Encapsulating Security Payload Header: 프라이버시 기능

  • DS (Differentiated Services)/ ECN (Explicit Congestion Notification) 필드

    • 차등 서비스가 도입되면서 6비트의 DS필드와 2비트의 ECN 필드가 정의됨
  • Flow Label 필드

    • 음성이나 영상 데이터처럼 실시간 서비스가 필요한 응용환경에서 사용
  • 기타 필드

    • Version Number(버전 번호): IP 프로토콜의 버전 번호

    • Payload Length(페이로드 길이): 헤더를 제외한 패킷의 크기

    • Next Header: 기본 헤더 다음에 이어지는 헤더의 유형을 수신 호스트에 알려줌

    • Hop Limit(홉 제한): IPv4의 Time To Live 필드와 동일한 역할 수행

    • Source Address/Destination Address(송신 호스트 주소/수신 호스트 주소): 송수신 호스트의 IP 주소를 나타냄

IPv6 주소

  • 주소 표현
    • 128비트, 16비트의 숫자 8개를 콜론(:)으로 구분

  • 축약 표현

X는 16비트이므로 총 96(16x6)비트, d는 8비트이므로 총 32(8x4)비트
즉, 전체 크기는 IPv6의 주소 크기와 동일한 128(96+32)비트

  • 주소 공간
    - IPv6의 주소 공간

이동 IP 프로토콜

  • PSTN -> ISDN -> Broadband 멀티미디어 서비스

  • 터널링 원리

  • 상이한 전송 수단: 이동 IP

    • IP 프로토콜을 교체하는 방식 (버스 -> 배 -> 버스)
      : 버스 배 버스는 네트워크 계층을 지원하는 IP 프로토콜
      : 홍길동은 IP 프로토콜의 전송 데이터

(PSTN: Public Switched Telephone Network)
(
ISDN: Integrated Services Digital Network)

  • 터널링 방식

IP 터널링

  • 무선 호스트가 움직일 때 이동(Mobile) IP 프로토콜의 기본 동작 원리

    • 이동 호스트가 움직이면 새로운 위치를 관장하는 포린 에이전트 (Foreign Agent) FAnew로 부터 새로운 COA(Care of Address)를 얻음

    • 이 주소는 이동 호스트의 홈 에이전트(Home agent) HA에 등록되어 FAnew와 HA사이에 터널을 생성

    • HA로 라우팅된 패킷을 이동 호스트에 전달하려면 새로 생성된 터널을 통해 Fnew로 전달

    • 이동 호스트에는 고유 IP 주소인 홈 주소Home Address HA가 할당, 호스트 위치가 바뀌어도 변하지 않음. 홈 주소는 홈 에이전트와 밀접한 관련

    • COA는 이동 호스트가 새로 이동한 지역에서 일시적으로 할당된 IP 주소
      호스트가 이동할 때마다 FA로부터 새로운 COA가 할당되고 기존 COA는 회수되
      는 과정이 반복됨

    • 송신 호스트에서 이동 호스트까지 패킷 전달 과정: 송신 호스트 → HA → FA → 이동 호스트

      • 이동 호스트를 목적지로 하는 패킷은 HA에게 전달됨

      • HA는 FA와의 터널을 이용해 FA에게 패킷을 전달함

      • FA는 이동 호스트에게 패킷 전달함

    • 홈 에이전트와 이동 에이전트 사이에 설정되는 터널Tunnel은 원 IP 패킷을 목적지까지 전송하기 위한 중간 단계의 새로운 경로임

  • 터널구간 라우팅 처리

    • 원 IP 패킷을 데이터로 취급하는 새로운 형태의 IP 캡슐 패킷 이 구성되어 전달. 원 패킷의 Destination Address 필드에는 이동 호스트의 홈 주소가 들어감

    • 홈 에이전트에서는 원 패킷을 이동 호스트에 전달하려고 그림처럼 캡슐 패킷으로 변경

    • 추가된 헤더의 Destination Address에는 COA가 들어감

기타 네트워크 계층 프로토콜

  • IP 프로토콜: 사용자 데이터; ICMP: 제어 메시지; ARP/RARP

  • ARP (Address Resolution Protocol) 프로토콜

    • IP 주소와 MAC 주소 사이의 변환을 담당
  • MAC 주소

    • 송신 호스트의 IP 주소 : 송신 호스트의 하드디스크에서 얻을 수 있음

    • 수신 호스트의 IP 주소 : 사용자가 제공(DNS: 도메인이름→IP주소 변환하여)

    • 송신 호스트의 MAC 주소 : 송신 호스트의 LAN 카드에서 얻을 수 있음

    • 수신 호스트의 MAC 주소 : 수신호스트의 IP 주소를 매개변수로 하여 ARP 프로토콜로 얻음

    • ARP 프로토콜

      • 특정 호스트의 IP 주소로 부터 MAC 주소를 제공하는 프로토콜

      • ARP request라는 특수 패킷을 브로드캐스팅

      • IP 주소에 해당하는 호스트만 ARP reply로 MAC 주소를 회신

      • 효율 향상을 위해 캐시 기능을 제공, 과정중 수신한 IP주소와 MAC 주소 매핑값은 재활용

  • ARP의 필요성

  • RARP (Reverse Address Resolution Protocol) 프로토콜의 필요성

    • 하드 디스크가 없는 시스템은 자신의 IP 주소를 알 수 없음

    • 특정 호스트의 LAN카드에 내장된 MAC 주소로 부터 IP 주소를 제공하는 프로토

  • ICMP (Internet Control Message Protocol) 프로토콜

    • 인터넷 환경에서 오류에 관한 처리를 지원

    • ICMP 메시지

      • 오류 보고 메시지(Error-Reporting Message): : IP 패킷을 전송하는 과정에서 발생하는 문제를 보고하는 것이 목적, 오류 해결은 상위계층

  • 질의 메세지(Query Message): 라우터 혹은 다른 호스트들의 정보를 획득하려는 목적

  • ICMP 헤더 형식
    • 오류 보고 메세지

  • 오류 원인을 제공한 IP 패킷의 헤더와 이어지는 8바이트의 정보가 오류 보고 메시지에 포함됨

  • Type(유형) : 1바이트 크기로 메시지의 종류를 구분

  • Code(코드) : 메시지 내용에 대한 자세한 정보를 제공하는 매개변수 값

  • Checksum(체크섬) : ICMP 전체 메시지에 대한 체크섬 기능을 지원

  • 질의 메시지

    • Identifier와 Sequence Number 필드를 사용하여 메시지를 구분하는 기능이 사용

  • ICMP 메시지 전송

    • ICMP는 기능적으로 IP 프로토콜과 같은 네트워크 계층의 역할을 수행

    • ICMP 메시지는 IP 프로토콜에 캡슐화되어 전송

  • IGMP 프로토콜

    • 멀티캐스팅: 특정 그룹의 모든 호스트에 메세지를 전송하는 방식

    • 멀티캐스트 라우팅: 멀티캐스팅에 필요한 라우팅 알고리즘

  • 그룹 관리

    • 그룹 관리의 주요 기능: 그룹의 생성, 제거, 전송 호스트의 그룹 참가, 탈퇴 등

    • 멀티캐스팅 기능

      • 다중 호스트를 표시하는 멀티캐스트 그룹 주소 표기 방법의 통일

      • 라우터가 멀티캐스트 주소와 이 그룹에 속하는 호스트 사이의 연관성 처리(추가, 삭제 기능)

      • 멀티캐스트 라우팅 알고리즘은 그룹의 모든 맴버에게 가장 짧은 경로를 선택하는 기능 제공

  • IGMP(Internet Management Protocol)

    • 멀티캐스트 그룹에 가입하거나 탈퇴할 때 사용하는 프로토콜

    • 멀티캐스트 그룹에 가입한 호스트와 라우터 사이에 멤버 정보를 교환하는 용도

    • 질의 메시지: 멀티캐스트 라우터가 그룹 정보를 얻기 위하여 호스트에 전달

    • 보고 메시지: 질의의 응답으로 호스트가 보고 메시지를 회신

  • IGMP 헤더의 구조

  • Type(유형):
    0x11 - 멀티캐스트 라우터가 전송한 질의 메시지
    0x16 - 호스트가 전송하는 보고 메시지
    0x17 - 그룹 탈퇴에 관한 메시지

  • Max Response Time(최대 응답 시간): 질의에 대한 보고 메시지가 전송되는 최대응답시간

  • Checksum(체크섬): IP 프로토콜에서 사용하는 알고리즘과 동일한 방식(오류 검출용으로 이용)

  • Group Address(그룹 주소): 질의 메시지는 0, 보고 메시지에는 호스트가 가입을 원하는 그룹 주소를 표기

  • IGMP 동작 과정

    • 그룹 가입: 해당 멀티캐스트 주소를 표기한 IGMP 보고 메시지를 전송

    • 그룹 유지: IGMP 보고 메시지를 사용해 IGMP 질의에 응답해야함

    • 그룹 탈퇴: 라우터의 질의 메시지에 대해 호스트의 보고 메시지 응답이 없음
      -> 탈퇴한 것으로 간주

  • IGMP의 메시지의 전송
    • IGMP는 IP 패킷에 캡슐화되어 보내짐
      즉, IGMP 메시지는 IP 프로토콜의 데이터로 처리되기 때문에 IP 패킷의 헤더에 실려서 계층 2 프로토콜로 전달됨

profile
I want to be coool and chilll developer...

0개의 댓글