IPv6 в мультикасте
Основы
Используется также как и в IPv4:
- RPF check
- PIM-DM, PIM-SM для ASM
- SSM
Используется по-другому, в отличие от IPv4:
- IGMP -> MLD
- IPv6 include scoping
- не поддерживается MSDP: протокол посчитали не масштабируемым. Взамен него можно использовать внедрение инфо об RP в каждый адрес источника. Такой метод позволит работать междоменному ASM.
Формат
128 бит:
0-7 = 1111111 - начало, определяющее, что это мультикаст адрес.
8-11: флаги 0RPT: 0 = rezerved, R = встроенный адрес RP, P = unicast-prefix-based multicast address, T: 0 = permanent, 1 = non-permanent.
12-15: scop (ограничение): 1 = interface-local, 2 = link-local, 4 = admin-local, 5 = site-local, 8 = organization-local, E = global
16-128: группа.
Адресация
- все узлы: = 224.0.0.1
- FF01:0:0:0:0:0:0:1 (interface-local)
- FF02:0:0:0:0:0:0:1 (link-local)
-все роутеры: = 224.0.0.2
- FF01:0:0:0:0:0:0:2 (interface-local)
- FF02:0:0:0:0:0:0:2 (link-local)
- FF05:0:0:0:0:0:0:2 (site-local)
-Ethernet адреса:
- 33:33 + последние 32 бита IPv6 мультикаст адреса.
MLD
MLD - sub-protocol of ICMPv6. Сообщения MLD передаются внутри ICMPv6, next-header значение = 58.
Source-addr = link-local IPv6.
TTL = 1 и включает IPv6 router alert header.
MLDv1 = IGMPv2 MLDv2 = IGMPv3
Типы сообщений:
- Query: general, multicast address-specific, multicast address and source-specific query (MLDv2).
- Multicast listener report.
- Multicast listener done (MLDv1) = leave message.
ASM
Может использовать как PIM-DM, так и PIM-SM.
В PIM-SM:
- RP discovery:
- Static-RP
- BSR
- Auto-RP - не работает.
- RP redundancy:
- Anycast-RP with PIM-Anycast
- Anycast-RP with MSDP - не работает
- Interdomain multicast:
- Embedded RP (внедренная RP)
- MSDP - не работает.
Embedded RP Идея: позволить всем роутерам использовать 1 RP, чтобы изучить источники для групп. The domain ownin the multicast address вкладывает инфо об RP в IPv6 адрес группы.
в полях IPv6:
- флаги: если R = 1, значит используется embedded RP. При этом P=T=1.
- RIID: RP interface ID.
SSM
- Interdomain multicast:
- MSDP не используем
- Embedded RP используем
- Требуется MLDv2 include option - также как и в IGMPv3 позволяет формировать получатели запрос на "канал", а не просто на группу.
- Блок адресов: FF3x::/96, x = scoping value.
© Наталия Бобкова 2014—2022