컴퓨터 네트워크
네트워크 16강 - ICMP 와 IPv6
판교가고싶어요
2020. 8. 12. 09:25
이전에 IP 얘기를 하면서 TTL에서 ICMP 얘기가 잠깐 나왔던 것 같다. IP는 데이터 전송이 목적이고 ICMP는 데이터 전송에 대한 메타 데이터를 담당 한다. 즉 전송이 아닌 메타 데이터만 담당하므로 ICMP와 IP는 깊은 연관이 있다. 그리고 IP 주소 고갈 문제를 해결하는 IPv6를 살펴보자.
ICMP
- Internet Contorl Message Protocol의 약자이다.
- IP 제어를 위해 사용되는 프로토콜이다.
- 오류 보고, echo reply/ request 를 담당한다.
- ICMP는 IP 데이터그램에 캡슐화된다.
- IP 패킷 페이로드 부분에 실린다.
- ICMP는 직접 전송을 담당하는 프로토콜이 아니기 때문이다.
- Type과 Code, 오류를 일으킨 IP 데이터그램의 첫번째 8바이트로 구성된다.
- Type과 Code
- 0 0 Echo Reply (pong)
- 3 3 목적지 포트 도착불가(Dest. port unreachable)
- 11 0 TTL Expired
- 8 0 Echo Request
- Echo (에코, 반향)란? 에코는 수신측이 활성상태인지 확인하는 메세지이다.
- TTL 과 포트 도착불가를 사용해서 어느 라우터들을 거쳐갔는지 알 수 있다.
- ICMP 메세지에는 어느 라우터가 보냈는지가 담겨있기 때문이다.
- Type과 Code
IPv6
- IPv4의 문제점
- IPv4는 32비트 주소를 사용하므로 부족하다.
- NAT를 사용한다면 출발지/도착지/포트번호를 바꾸게 되므로 End to End 통신을 침범하게 된다.
- 차세대 버전인 IPv6가 필요하다.
- IPv6의 특징
- 주소로 128비트를 사용한다.
- 주소 두개 32 바이트 + 다른 헤더 부분 8 바이트
- 라우팅 성능 향상과 QoS를 제공한다.
- Flow Label을 사용해서 VOD는 먼저, HTTP는 조금 나중에 보내도록 스케줄링 할 수도 있다.
- 자원을 낭비없이 사용 가능한 것이다.
- 단편화를 허용하지 않는 단순한 고정길이 헤더로 라우팅 성능을 향상시킨다.
- 주소로 128비트를 사용한다.
IP Datagram Format

- IPv6의 헤더를 살펴보자.
- Version : IP의 버젼이 들어간다
- Traffic Class : Priority라고도 한다. QoS를 위한 라벨이다.
- Flow Label : QoS를 위한 라벨이다.
- Payload Length : 페이로드(데이터)의 크기를 나타낸다.
- Next Header : 고정길이 헤더를 사용하므로 Optional 헤더가 필요하면 헤더를 여러개 보내는데 이 때 사용한다. 또한 마지막 헤더일 시에 상위 계층 레이어를 표시하기도 한다.
- Hop Limit : TTL과 같다.
- IPv6 데이터그램의 특징
- IPv4보다 단순한 헤더를 사용해서 처리속도가 빠르다.
- 고정길이 40바이트 헤더를 사용한다.
- No Fragmentation allowed.
- MTU가 작으면 ICMPv6를 이용해서 보고하고 드랍한다.
- Fragmentation은 호스트에서 처리한다.
IPv4와 IPv6 간 연동
- 터널링
- Tunneling
- IPv4라우터 사이로 IPv6 데이터그램이 지나가야 할 때 IPv6 데이터그램은 IPv4 페이로드에 실린다.
- 즉 양 끝단의 IPv6 라우터는 IPv4로 통신하는 Endsystem처럼 취급된다.
더보기
본 게시물은 kocw 이화여자대학교 이미정 교수님의 컴퓨터 네트워크 강의를 듣고 정리한 글임을 밝힙니다.
내용상 틀린 부분이 있을 수도 있으며 이에 대한 책임을 지지 않습니다.
틀린 부분이나 오타 지적은 댓글로 남겨주세요.