1. ML 및 MLD
ㅇ 멀티캐스트 리스너 (Multicast Listener)
- 멀티캐스트 패킷을 수신 원하는 호스트
ㅇ MLD (Multicast Listener Discovery)
- IPv6에서 멀티캐스트 리스너 그룹 관리용 프로토콜
. IPv4에서는, IGMP가 이와 유사한 기능을 함
. IPv6에서는, ICMPv6의 일부 기능이 이를 수행함
- MLD 메세지는 Link Local Unicast Address으로 만 전송됨
2. 멀티캐스트 주소 학습을 담당하는 프로토콜
ㅇ IPv4 : IGMP 프로토콜이 담당
ㅇ IPv6 : ICMPv6 프로토콜 중 MLD가 이를 담당
- MLDv1 (RFC 2710) : IGMPv2와 유사
- MLDv2 (RFC 3810) : IGMPv3와 유사(대부분의 라우터들이 이를 사용)
※ 따라서, 멀티캐스터 라우터는 IGMP(IPv4)/MLD(IPv6) 메세지를 이용하여,
멀티캐스트 그룹 관리를 함
3. MLD 메세지 유형
ㅇ MLD (Multicast Listener Discovery,멀티캐스트 리스너 발견) 유형
- MLQ (Multicast Listener Query,조회) : ICMPv6 type 130 (라우터 -> 호스트)
. 특정 그룹에 참여하는 호스트 있는지 확인 조회
- MLR (Multicast Listener Report,보고) : ICMPv6 type 131 (호스트 -> 라우터)
. 가입코자하는 그룹의 멀티캐스트 주소를 밝히는 것
- MLD (Multicast Listener Done,종료) : ICMPv6 type 132 (호스트 -> 라우터)
. 더이상 특정 멀티캐스트 수신을 원하지 않음
4. MLD 패킷 형식
ㅇ 패킷 형식 (MLDv1)
ㅇ 각 필드별 설명 (MLDv1)
- type (8 비트)
. Query (type 130), Report (131), Done (132)
- code (8 비트)
. '0'으로 셋팅됨. 아무런 의미 없음
- 체크섬 (16 비트)
- 최대응답지연(Maximum Response Delay) (16 비트)
. 라우터가 Query 메세지 보낸 후, 각 호스트가 이에 랜덤 지연 응답하는 시간
. 한꺼번에 모든 호스트가 응답하는 것을 가급적 피하기 위함
- 멀티캐스트 주소 (128 비트)
. General Query : 모두 `0`으로 셋팅됨
. Multicast Address Specific Query : 현재 수신 여부를 알고자하는 멀티캐스트 주소
. Report : 호스트가 수신 원하는 멀티캐스트 주소
. Done : 호스트가 그만 탈퇴하고 싶은 멀티캐스트 주소