Upload
hahanh
View
254
Download
8
Embed Size (px)
Citation preview
쉽게 배우는 데이터 통신과 컴퓨터 네트워크
네트워크 계층 프로토콜
2/27
학습목표
IPv6의 필요성과 헤더 구조를 이해한다.
이동 IP 프로토콜의 터널링 원리를 이해한다.
ARP/RARP의 필요성을 이해한다.
ICMP의 헤더와 제어 메시지를 이해한다.
IGMP의 헤더와 멀티캐스트 그룹 관리 방식을 이해한다.
3/27
1절. IPv6
• 주소 공간 확장
– IPv4의 32 비트에서 128 비트로 확장
– 최대 2128개의 호스트를 지원
• 헤더 구조 단순화
– 오류제어 등의 오버헤드를 줄여 프로토콜의 전송 효율 향상
• 흐름 제어 기능 지원
– 일정 범위 내에서 예측 가능한 데이터 흐름을 지원
– 실시간 멀티미디어 응용 환경을 수용
4/27
1절. IPv6
IPv6 헤더 형식 • 기본 헤더 [그림 8-1]
• 총 40 바이트 중 32 바이트를 주소 공간으로 사용
• 필요 시 기본 헤더 뒤에 여러 개의 확장 헤더를 지원
5/27
1절. IPv6
IPv6 헤더 형식 • 확장 헤더의 종류
• Hop-by-Hop Options Header: hop-by-hop 옵션 처리를 지원
– Jumbo 페이로드 옵션: 데이터의 크기가 65535 바이트보다 클 때 사용
– 라우터 긴급 옵션: 라우터에 전송 대역 예약 같은 특정 정보를 제공
• Routing Header
– IPv4의 소스 라우팅과 유사한 기능
– 패킷이 Routing Header에 지정된 특정 노드를 경유하여 전송됨
• Fragment Header: 패킷 분할과 관련된 정보를 포함
• Destination Options Header: 수신 호스트가 확인할 수 있는 옵션 정보
• Authentication Header: 패킷 인증 관련 기능
• Encapsulating Security Payload Header: 프라이버시 기능
6/27
1절. IPv6
IPv6 헤더 형식
우선 순위
• Priority 필드: 특정 패킷의 우선 순위를 상향
• 혼잡 제어 유무에 따른 처리
– 혼잡 제어 기능이 없으면 우선 순위를 8 단계로 구분하여 처리
– 혼잡 제어 기능이 있으면 인터넷 제어 트래픽, 대화식 트래픽, 대용량 전송 트래픽, 데이터 트래픽, 필터 트래픽 등으로 구분하여 처리
흐름 제어
• IPv4에서는 패킷 중개 시 동일한 기준을 적용
• Flow Label 필드: 실시간 서비스가 필요한 응용 환경에서 사용
• 필드를 지원하지 않는 호스트 혹은 라우터에서의 처리
– 패킷 생성시 0으로 지정
– 패킷 중개시 현재 값 유지
– 패킷 수신시 값 무시
• 0이 아닌 동일번호 패킷들은 중개 과정을 간단히 처리할 수 있음
7/27
1절. IPv6
IPv6 헤더 형식
기타 필드
• Version Number: 6으로 지정
• Payload Length: 헤더를 제외한 패킷의 크기
• Next Header: 기본 헤더 다음에 위치하는 헤더의 유형
– IPv6의 확정 헤더
– 상위 계층인 TCP 혹은 UDP 헤더
• Hop Limit: IPv4의 Time To Live 필드와 동일한 역할을 수행
• Source Address / Destination Address: IPv6 주소
8/27
1절. IPv6
IPv6 주소 • 128 비트로 확장
주소 표현
• 16 비트의 숫자 8개를 콜론으로 구분 [그림 8-2]
9/27
1절. IPv6
IPv6 주소
주소 공간
• [표 8-1]
10/27
2절. 이동 IP
터널링 원리
상이한 전송 수단 [그림 8-3]
11/27
2절. 이동 IP
터널링 원리
터널링 방식 [그림 8-4]
12/27
2절. 이동 IP
IP 터널링
주소 표현
• 호스트 이동 시 IP 주소의 처리
– 새로운 주소 할당: 라우팅의 처리가 수월하지만 주소 교체 작업이 필요
– 고유의 주소 유지: 주소 교체 작업이 필요 없지만 라우팅의 처리가 복잡
에이전트
• 두 종류의 주소 사용
– HA: 이동 호스트를 위한 고정 위치의 홈 에이전트
– FA: 이동 호스트를 위한 가변 위치의 포린 에이전트
• 호스트가 이동할 때의 처리
– HA는 변하지 않고 FA만 변함
– 따라서 HA와 새로운 FA 사이에 터널 설정
13/27
2절. 이동 IP
IP 터널링
에이전트
• 송신 호스트에서 이동 호스트까지 패킷 전달 과정 [그림 8-5]
– 먼저, 이동 호스트를 목적지로 하는 패킷은 HA에게 전달됨
– HA는 FA와의 터널을 이용해 FA에게 패킷을 전달함
– FA는 이동 호스트에게 패킷 전달함
14/27
2절. 이동 IP
IP 터널링
IP 터널 [그림 8-6]
• 터널 구간에서 IP 캡슐링 방식으로 패킷을 중개
– 원 패킷: 송신 호스트가 전송하고, 수신 호스트가 수신 받는 패킷
– IP 캡슐 패킷: 터널 구간에서 원 패킷을 IP 캡슐화
15/27
3절. 기타 네트워크 계층 프로토콜
• ARP, RARP, ICMP, IGMP
ARP • IP 주소와 MAC 주소 사이의 변환 기능 수행
MAC 주소
• 송신 호스트의 IP 주소: 송신 호스트의 하드 디스크에서 얻을 수 있음
• 수신 호스트의 IP 주소: 사용자가 제공
• 송신 호스트의 MAC 주소: 송신 호스트의 LAN 카드에서 얻을 수 있음
• 수신 호스트의 MAC 주소: ARP 프로토콜이 제공
• ARP 프로토콜
– 특정 호스트의 IP 주소로 부터 MAC 주소를 제공하는 프로토콜
– ARP request라는 특수 패킷을 브로드캐스팅
– IP 주소에 해당하는 호스트만 ARP reply로 MAC 주소를 회신
– 효율 향상을 위해 캐시 기능을 제공
16/27
3절. 기타 네트워크 계층 프로토콜
ARP
MAC 주소
• ARP의 필요성 [그림 8-7]
17/27
3절. 기타 네트워크 계층 프로토콜
ARP
RARP
• 하드 디스크가 없는 시스템은 자신의 IP 주소를 알 수 없음 [그림 8-8]
• 특정 호스트의 MAC 주소로 부터 IP 주소를 제공하는 프로토콜
18/27
3절. 기타 네트워크 계층 프로토콜
ICMP • 인터넷 환경에서 오류에 관한 처리를 지원
ICMP 메시지
• ECHO REQUEST, ECHO REPLY: ping 프로그램
• DESTINATION UNREACHABLE: 수신 호스트에 접근이 불가능
• SOURCE QUENCH: 네트워크에 필요한 자원 부족으로 패킷 폐기
• TIME EXCEEDED: 시간 초과 현상으로 패킷 폐기
• TIMESTAMP REQUEST, TIMESTAMP REPLY: 네트워크 지연 측정
19/27
3절. 기타 네트워크 계층 프로토콜
ICMP
ICMP 헤더 형식 [그림 8-9]
• 처음 8 바이트는 모든 메시지에 반드시 포함됨
• Type: 메시지를 구분
• Code: 메시지 내용에 대한 자세한 정보
• Checksum: 전체 메시지에 대한 체크섬 기능
• ICMP 메시지 내용 1: 메시지 종류에 따라 값이 결정됨
20/27
3절. 기타 네트워크 계층 프로토콜
ICMP
ICMP 헤더 형식
• ICMP 메시지 내용 2
– 오류 원인을 제공한 IP 패킷의 헤더와 이어지는 8 바이트의 정보가 포함됨
– [그림 8-10]
21/27
3절. 기타 네트워크 계층 프로토콜
ICMP
ICMP 메시지의 전송
• ICMP는 기능적으로 IP 프로토콜과 같은 계층의 역할을 수행
• ICMP 메시지는 IP 프로토콜에 캡슐화되어 전송 [그림 8-11]
22/27
3절. 기타 네트워크 계층 프로토콜
IGMP • 멀티캐스팅: 특정 그룹에 속한 모든 호스트에게 메시지를 전송하는 방식
그룹 관리
• 그룹의 생성/제거, 그룹 참가/탈퇴
• 멀티캐스팅을 지원하기 위한 방안
– 다중 호스트를 표시하는 멀티캐스트 그룹 주소 표기 방법의 통일
– 라우터가 멀티캐스트 주소와 이 그룹에 속하는 호스트 사이의 연관성 처리
– 효율적인 멀티캐스트 라우팅 알고리즘
IGMP 헤더 형식
• 임의의 호스트가 멀티캐스트 그룹에 가입하거나 탈퇴할 때 사용
23/27
3절. 기타 네트워크 계층 프로토콜
IGMP
IGMP 헤더 형식
• IGMP 버전 2의 메시지 형식 [그림 8-12]
– 질의 메시지: 라우터에서 호스트로 전달
– 보고 메시지: 질의 메시지에 대한 응답으로 호스트가 회신
24/27
3절. 기타 네트워크 계층 프로토콜
IGMP
IGMP 헤더 형식
• Version Number [편집 오류]: 버전 2에서 사라진 필드
• Type
– 0x11: 질의 메시지
– 0x16: 보고 메시지
– 0x17: 그룹 탈퇴에 관한 메시지
• Max Response Time
– 질의 메시지에서 사용하며 보고 메시지가 전송되어야 하는 최대 응답 시간
• Checksum
• Group Address
– 질의 메시지: 0으로 채움
– 보고 메시지: 호스트가 가입을 원하는 그룹 주소 표기
25/27
3절. 기타 네트워크 계층 프로토콜
IGMP
IGMP 동작 과정
• 그룹 가입 [그림 8-13(a)]
• 그룹 유지 [그림 8-13(b)]
• 그룹 탈퇴 [그림 8-13(c)]
26/27
3절. 기타 네트워크 계층 프로토콜
IGMP
IGMP 메시지의 전송
• IGMP는 IP 프로토콜과 동등한 계층의 기능을 수행
• IP 패킷에 캡슐화되어 전송 [그림 8-14]
IT CookBook, 쉽게 배우는 데이터 통신과 컴퓨터 네트워크