IGMP: Difference between revisions
From CS Wiki
No edit summary |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
[[분류:네트워크]] | [[분류:네트워크]] | ||
;Internet Group Management Protocol | |||
* 멀티캐스트 | ;Internet Group Management Protocol | ||
* | |||
서브넷(로컬 네트워크) 상의 멀티캐스팅 멤버십 제어(그룹 관리)를 위한 프로토콜 | |||
* 하나의 라우터와 여러 호스트로 구성되는 서브 네트워크(Sub-Network) 상에서 | |||
* 호스트들이 어떤 멀티캐스트 그룹에 속하는 가를 라우터에게 알리기 위한 | |||
* 일종의 그룹 관리용 신호 프로토콜(Signaling Protocol) | |||
== 통신계층상의 위치 == | |||
* IGMP,ICMP 등은 데이터 전송용 프로토콜이 아니고, 네트워크 상에 이벤트 또는 변화를 알리는데 사용되는 제어용 프로토콜임 | |||
[[파일:IGMP의 통신계층 상의 위치.png]] | |||
== 동작 개요 == | |||
* 멀티캐스트 라우터는, 주기적으로, [[서브넷]] 호스트 그룹들(224.0.0.1 : 멀티캐스트 주소)에게 IGMP Query 메시지를 전송 | |||
* 호스트는, 이러한 Query 요청 메시지에 응답하면서, 자신이 가입하려는 그룹 정보(멀티캐스트 주소)를 IGMP Report 메시지를 통해 라우터에게 알려줌 | |||
* 한편, 호스트는 자체적으로, IGMP Query 메시지(라우터 -> 호스트) 없이도, 먼저 Report 메시지를 라우터에게 전송도 가능 | |||
== IGMP 메시지 종류 == | |||
* '''Membership Query''' (라우터 -> 호스트) | |||
** 그룹 멤버십 조사 (monitoring) : 멤버십 질의 메시지를 보내서 응답을 기다림 | |||
** 일정 횟수 이상 응답이 없거나, 탈퇴 메세지를 주면, 라우터는 해당 호스트를 그룹에서 탈퇴 시킴 | |||
* '''Membership Report''' (호스트 -> 라우터) | |||
** 그룹 가입 (joining): 그룹에 가입하고자 하는 요청을 라우터에 보고 | |||
** 멤버십 연속 (member continuation) : 계속해서 해당 그룹에 남기를 원하는 보고 | |||
* '''Leave Report''' (호스트 -> 라우터) | |||
** 그룹 탈퇴 (leavinig): 더이상 그룹에 남아있지 않고 탈퇴함 | |||
== IGMP 패킷 == | |||
[[파일:IGMP 패킷.jpg]] | |||
* [[IP 데이터그램|IPv4 헤더]] 내 IGMP 관련 | |||
** 프로토콜 ID : 2 ☞ IANA의 공식 PPP Numbers | |||
** IGMP의 TTL : 1 | |||
*** 로컬 서브네트워크를 벗어나면 자동 폐기됨 | |||
** IPv4 옵션 : Router Alert 옵션이 사용됨 | |||
* 유형(type) (8 비트) | |||
** 0x11 : Membership Query | |||
** 0x12 : IGMP v1 Membership Report [<nowiki>RFC 1112</nowiki>] | |||
** 0x16 : IGMP v2 Membership Report [<nowiki>RFC 2236</nowiki>] | |||
** 0x17 : IGMP v2 Leave Group [<nowiki>RFC 2236</nowiki>] | |||
** 0x22 : IGMP v3 Membership Report [<nowiki>RFC 3376</nowiki>] | |||
== IGMP 버전 == | |||
* '''IGMPv1''' : Membership Query, Membership Report [<nowiki>RFC 1112</nowiki>] | |||
* '''IGMPv2''' : Membership Query, Membership Report, Leave Report [<nowiki>RFC 2236</nowiki>] | |||
** IGMPv1에 그룹 탈퇴(Leave Report) 기능 추가 | |||
** 또한, 그룹 탈퇴를 좀더 확인하기 위한 Group Specific Query 메세지도 추가됨 | |||
* '''IGMPv3''' : Membership Query, Membership Report [<nowiki>RFC 3376</nowiki>] | |||
** SSM(Source-specific Multicast) 기능 추가 | |||
** source filter 모드 | |||
*** include 모드 : 명시한 모든 source list를 포함 | |||
*** exclude 모드 : 명시한 source list를 제외한 기타 모든 source들을 포함 | |||
*** include null : 어떠한 source에서 입력된 해당 그룹에 대해 수신 안함 | |||
*** exclude null : 모든 source에서 입력된 해당 그룹에 대해 join | |||
== 기타 기능 == | |||
* IGMP Snooping | |||
** IGMP Snooping은 라우터와 호스트 사이에 있는 스위치가 IGMP 메세지들을 들을 수 있게 하는 기능 | |||
* IGMP Querier Election | |||
** 동일 LAN에 여러 멀티캐스트 라우터가 있으면, IPv4 주소 중 가장 낮은 주소를 갖는 라우터가 Querier 역할을 집중하게 함 | |||
== 관련 표준 == | |||
* <nowiki>RFC 1112</nowiki> (IGMP v1, Host extensions for IP Multicasting) | |||
* <nowiki>RFC 2236</nowiki> (IGMP v2, Internet Group Management Protocol, Version 2) | |||
* <nowiki>RFC 3376</nowiki> (IGMP v3, Internet Group Management Protocol, Version 3) | |||
== 참고 문헌 == | |||
* 정보통신기술용어해설 |
Latest revision as of 02:28, 3 February 2022
- Internet Group Management Protocol
서브넷(로컬 네트워크) 상의 멀티캐스팅 멤버십 제어(그룹 관리)를 위한 프로토콜
- 하나의 라우터와 여러 호스트로 구성되는 서브 네트워크(Sub-Network) 상에서
- 호스트들이 어떤 멀티캐스트 그룹에 속하는 가를 라우터에게 알리기 위한
- 일종의 그룹 관리용 신호 프로토콜(Signaling Protocol)
통신계층상의 위치[edit | edit source]
- IGMP,ICMP 등은 데이터 전송용 프로토콜이 아니고, 네트워크 상에 이벤트 또는 변화를 알리는데 사용되는 제어용 프로토콜임
동작 개요[edit | edit source]
- 멀티캐스트 라우터는, 주기적으로, 서브넷 호스트 그룹들(224.0.0.1 : 멀티캐스트 주소)에게 IGMP Query 메시지를 전송
- 호스트는, 이러한 Query 요청 메시지에 응답하면서, 자신이 가입하려는 그룹 정보(멀티캐스트 주소)를 IGMP Report 메시지를 통해 라우터에게 알려줌
- 한편, 호스트는 자체적으로, IGMP Query 메시지(라우터 -> 호스트) 없이도, 먼저 Report 메시지를 라우터에게 전송도 가능
IGMP 메시지 종류[edit | edit source]
- Membership Query (라우터 -> 호스트)
- 그룹 멤버십 조사 (monitoring) : 멤버십 질의 메시지를 보내서 응답을 기다림
- 일정 횟수 이상 응답이 없거나, 탈퇴 메세지를 주면, 라우터는 해당 호스트를 그룹에서 탈퇴 시킴
- Membership Report (호스트 -> 라우터)
- 그룹 가입 (joining): 그룹에 가입하고자 하는 요청을 라우터에 보고
- 멤버십 연속 (member continuation) : 계속해서 해당 그룹에 남기를 원하는 보고
- Leave Report (호스트 -> 라우터)
- 그룹 탈퇴 (leavinig): 더이상 그룹에 남아있지 않고 탈퇴함
IGMP 패킷[edit | edit source]
- IPv4 헤더 내 IGMP 관련
- 프로토콜 ID : 2 ☞ IANA의 공식 PPP Numbers
- IGMP의 TTL : 1
- 로컬 서브네트워크를 벗어나면 자동 폐기됨
- IPv4 옵션 : Router Alert 옵션이 사용됨
- 유형(type) (8 비트)
- 0x11 : Membership Query
- 0x12 : IGMP v1 Membership Report [RFC 1112]
- 0x16 : IGMP v2 Membership Report [RFC 2236]
- 0x17 : IGMP v2 Leave Group [RFC 2236]
- 0x22 : IGMP v3 Membership Report [RFC 3376]
IGMP 버전[edit | edit source]
- IGMPv1 : Membership Query, Membership Report [RFC 1112]
- IGMPv2 : Membership Query, Membership Report, Leave Report [RFC 2236]
- IGMPv1에 그룹 탈퇴(Leave Report) 기능 추가
- 또한, 그룹 탈퇴를 좀더 확인하기 위한 Group Specific Query 메세지도 추가됨
- IGMPv3 : Membership Query, Membership Report [RFC 3376]
- SSM(Source-specific Multicast) 기능 추가
- source filter 모드
- include 모드 : 명시한 모든 source list를 포함
- exclude 모드 : 명시한 source list를 제외한 기타 모든 source들을 포함
- include null : 어떠한 source에서 입력된 해당 그룹에 대해 수신 안함
- exclude null : 모든 source에서 입력된 해당 그룹에 대해 join
기타 기능[edit | edit source]
- IGMP Snooping
- IGMP Snooping은 라우터와 호스트 사이에 있는 스위치가 IGMP 메세지들을 들을 수 있게 하는 기능
- IGMP Querier Election
- 동일 LAN에 여러 멀티캐스트 라우터가 있으면, IPv4 주소 중 가장 낮은 주소를 갖는 라우터가 Querier 역할을 집중하게 함
관련 표준[edit | edit source]
- RFC 1112 (IGMP v1, Host extensions for IP Multicasting)
- RFC 2236 (IGMP v2, Internet Group Management Protocol, Version 2)
- RFC 3376 (IGMP v3, Internet Group Management Protocol, Version 3)
참고 문헌[edit | edit source]
- 정보통신기술용어해설