Capítulo 4 – Família de protocolos PIM
4.5. PIM Source Specific Mode (PIM SSM)
4.6.5. Cenário PIMv6 SM e PIMv6 SSM
De forma a analisar a coexistência dos protocolos PIMv6 SM e PIMv6 SSM, permitindo assim comunicações multicast simultâneas para os modelos ASM e SSM, configurou-se em laboratório a rede da Figura 131. Como protocolo de encaminhamento unicast foi usado o protocolo RIPng. DeskPC (emissor) 2001:690:2380:7770::/64 2001:690:2380:7770::/64 Ares dabase xl0 rl1 rl0 FBSD_2 FBSD_3 xl0 xl1 vx0 FBSD_1 xl0 xl1 xl1 vx0 xl2 FBSD_4 Pluton fxp0 fxp1 rl0 rl1 2001:690:2380:7772::/64 2001:690:2380:7772::/64 2001:690:2380:7771::/64 2001:690:2380:7771::/64 2001:690:2380:7773::/64 2001:690:2380:7773::/64 :202:44ff:fe90:6295 DeskPC Gordon xl0 :260:97ff:fea0:5b5 xl1 :2a0:24ff:fea6:d7b4 xl2 :2a0:24ff:fe55:9f1c FBSD_1 xl0 :204:76ff:fed9:9d4d xl1 :250:4ff:fe52:107c vx0 :2a0:24ff:fe58:66b5 FBSD_3 xl0 :2a0:24ff:fe55:9f19 xl1 :2a0:24ff:fea6:d2c9 vx0 :2a0:24ff:fe8a:76d4 FBSD_2 xl0 :204:76ff:fed9:9927 rl0 :202:44ff:fe8c:c395 rl1 :202:44ff:fe84:5733 Pluton fxp0 :290:27ff:fea7:b0b fxp1 :202:b3ff:feee:a13f :202:b3ff:fe1c:a67 Dabase FBSD_4 rl0 :202:44ff:fe7e:a895 rl1 :202:44ff:fe8c:8d5d 2001:690:2380:7776::/64 2001:690:2380:7776::/64 rl0 xl0 2001:690:2380:7777::/64 2001:690:2380:7777::/64 Gordon 2001:690:2380:7774::/64 2001:690:2380:7774::/64 Centaurus 2001:690:2380:7778::/64 2001:690:2380:7778::/64 2001:690:2380:7775::/64 2001:690:2380:7775::/64 :202:b3ff:fe3c:cba5 Ares :2a0:c9ff:fe1d:c15 Centaurus rl0 fxp0 fxp0 rl0 fxp0 fxp0 fxp0 fxp0 (emissor) (receptor) (receptor) (RP) (BSR)
Configurações:
As configurações efectuadas para cada um dos routers (no ficheiro /usr/local/v6/etc/pim6sd.conf), encontram-se apresentadas de seguida.
Em todos os routers configuraram-se as interfaces para suportarem as duas versões do protocolo MLD. O router Gordon foi configurado como BSR e RP da rede (garantindo assim as sessões multicast ASM) e, como não foi especificada nenhuma interface para candidato a RP e BSR, é então assumida a interface que tem o maior endereço IPv6 unicast global (neste caso a interface xl0). Uma vez que não foi configurada nenhuma gama de endereços multicast a ser servida pelo RP, é assumida a gama FF00::/8 para as sessões multicast ASM.
Procedimento Experimental:
1. Depois de activar o encaminhamento unicast, activou-se o protocolo de encaminhamento
multicast em todos os routers executando para esse efeito o comando: /usr/local/v6/sbin/pim6sd -c /usr/local/v6/etc/pim6sd.conf
Inicialmente, verificaram-se mensagens Hello trocadas periodicamente entre todos os routers
multicast e de seguida verificaram-se mensagens Bootstrap enviadas pelo router Gordon e
encaminhadas pelos restantes routers, permitindo desta forma que todos os routers conheçam qual o RP a usar para as sessões multicast ASM. Nesta fase, a informação multicast de todos os
routers é semelhante à apresentada de seguida para o router Pluton.
Gordon: FBSD_2:
phyint xl0 mld_version any; phyint rl0 mld_version any; phyint xl1 mld_version any; phyint rl1 mld_version any; phyint xl2 mld_version any; phyint xl0 mld_version any; phyint vx0 mld_version any;
cand_rp;
cand_bootstrap_router;
FBSD_3: Pluton:
phyint xl0 mld_version any; phyint fxp0 mld_version any; phyint xl1 mld_version any; phyint fxp1 mld_version any; phyint vx0 mld_version any;
FBSD_1: FBSD_4:
phyint xl0 mld_version any; phyint rl0 mld_version any; phyint xl1 mld_version any; phyint rl1 mld_version any;
2. De seguida, configurou-se a aplicação mcastread no emissor Ares para enviar tráfego com destino ao grupo multicast FF0e::77:2222 e a aplicação mcastread no receptor Dabase, para aderir à sessão multicast ASM identificada pelo grupo FF0e::77:2222. Depois de criada a árvore de distribuição central entre o router Gordon (origem da árvore) e o router Pluton (DR da rede 2001:690:2380:7775::/64), verificou-se que o receptor Dabase passa a receber os pacotes de dados enviados pelo emissor Ares. Nesta fase, a tabela Multicast Routing Table do router Gordon apresenta o estado (*,G) relativo ao grupo FF0e::77:2222.
3. Posteriormente, configurou-se a aplicação mcastsend no emissor DeskPC para enviar tráfego com destino ao grupo FF3e::77:1111 e configurou-se a aplicação mcastread no receptor Centaurus, para aderir à sessão multicast SSM identificada pelo emissor DeskPC e pelo grupo FF3e::77:1111. Depois de criada a árvore de distribuição do emissor DeskPC entre os routers FBSD_2 (origem da árvore) e o Gordon (DR da rede 2001:690:2380:7778::/64), o receptor Centaurus passa a receber através dessa árvore multicast os pacotes de dados enviados pelo
Multicast Routing Table
Source Group RP-addr Flags ---(*,G)---
IN6ADDR_ANY ff0e::77:2222 2001:690:2380:7778:260:97ff:fea0:5b5 WC RP
Joined oifs: ..j... Pruned oifs: ... Asserted oifs: ... Outgoing oifs: ..o... Incoming : ...I Upstream nbr: NONE
Multicast Interface Table
Mif PhyIF Local-Address/Prefixlen Scope Flags 0 fxp0 2001:690:2380:7776:290:27ff:fea7:b0b/64 0 PIM QRY fe80::290:27ff:fea7:b0b/64 1
Timers: PIM hello = 0:20, MLD query = 2:00 possible MLD version = 1 2
1 fxp1 2001:690:2380:7775:202:b3ff:feee:a13f/64 0 DR PIM fe80::202:b3ff:feee:a13f/64 2
Timers: PIM hello = 0:20, MLD query = 0:45 possible MLD version = 1 2
2 lo0 fe80::1/64 5 DISABLED ::1/128 0
Timers: PIM hello = 0:00, MLD query = 0:00 possible MLD version = 1
3 regist fe80::290:27ff:fea7:b0b/64 1 REGISTER Timers: PIM hello = 0:00, MLD query = 0:00
possible MLD version = 1
PIM Neighbor List
Mif PhyIF Address Timer 0 fxp0 fe80::2a0:24ff:fea6:d2c9 90 2001:690:2380:7776:2a0:24ff:fea6:d2c9 fe80::2a0:24ff:fe55:9f1c 90 2001:690:2380:7776:2a0:24ff:fe55:9f1c 1 fxp1 fe80::202:44ff:fe8c:8d5d 95 2001:690:2380:7775:202:44ff:fe8c:8d5d
Multicast Routing Table
Source Group RP-addr Flags ---(*,*,RP)--- Number of Groups: 0
Number of Cache MIRRORs: 0
---RP-Set---
Current BSR address: 2001:690:2380:7778:260:97ff:fea0:5b5 Prio: 0 Timeout: 130 RP-address(Upstream)/Group prefix Prio Hold Age
2001:690:2380:7778:260:97ff:fea0:5b5(fe80::2a0:24ff:fe55:9f1c%fxp0) ff00::/8 0 150 120
emissor DeskPC. A tabela Multicast Routing Table do router Gordon passou a incluir o novo estado (S,G) relativo ao emissor DeskPC e ao grupo FF3e::77:1111, tal como apresentado de seguida:
Nesta fase, verificou-se que os pacotes de dados enviados pelo emissor Ares são recebidos pelo receptor Dabase e que os pacotes de dados enviados pelo emissor DeskPC são recebidos pelo receptor Centaurus, coexistendo no mesmo cenário a sessão multicast ASM e a sessão
multicast SSM.
4. Ao configurar a aplicação mcastsend do emissor DeskPC para enviar tráfego com destino ao grupo FF0e::77:2222, o receptor Dabase passa a receber através da árvore de distribuição central (composta pelos routers Gordon e Pluton) os pacotes de dados enviados pelo emissor DeskPC para além dos pacotes de dados enviados para esse grupo pelo emissor Ares, já que na sessão multicast ASM o receptor recebe os pacotes de dados enviados por qualquer emissor para esse grupo.
5. Ao terminar a execução da aplicação macstread no receptor Centaurus, verificou-se o abandono por parte deste da sessão multicast SSM e, nesta fase, deixou de existir a árvore de distribuição do emissor DeskPC para o grupo FF3e::77:1111. O passo seguinte consistiu em configurar a aplicação mcastread no receptor Centaurus para aderir à sessão multicast do grupo FF3e::77:1111 (gama SSM), mas sem especificar qualquer emissor do qual pretende receber os pacotes de dados. Analisando a informação multicast do router Gordon (apresentada de seguida), verificou-se que apesar de existir na tabela Reported MLD Group uma entrada para o grupo FF3e::77:1111 de qualquer emissor e, apesar de existir um RP configurado na rede, não foi incluído na tabela Multicast Routing Table nenhum estado (*,G) relativo a esse grupo
Multicast Routing Table
Source Group RP-addr Flags ---(*,G)---
IN6ADDR_ANY ff0e::77:2222 2001:690:2380:7778:260:97ff:fea0:5b5 WC RP
Joined oifs: ..j... Pruned oifs: ... Asserted oifs: ... Outgoing oifs: ..o... Incoming : ...I Upstream nbr: NONE
---(S,G)---
2001:690:2380:7770:202:44ff:fe90:6295 ff3e::77:1111 NULL CACHE SG Joined oifs: ...
Pruned oifs: ... Asserted oifs: ... Outgoing oifs: o... Incoming : .I....
(FF3e::77:1111), existindo apenas o estado (*.G) relativo à sessão multicast ASM (grupo FF0e::77:2222).
Desta forma, verificou-se que o DR de uma rede não processa pedidos do receptor que manifesta interesse em aderir a grupos multicast dentro da gama SSM sem especificar os emissores desejados, motivo pelo qual o receptor Centaurus não recebe os pacotes de dados enviados pelo emissor DeskPC com destino ao grupo FF3e::77:1111.
6. Finalmente, configurou-se a aplicação mcastread do receptor Dabase para aderir à sessão
multicast do emissor Ares para o grupo FF3e::77:1111. Depois de criada a árvore de
distribuição do emissor Ares, composta pelos routers FBSD_1 (origem da árvore), FBSD_3 e Pluton, verificou-se que o receptor Dabase passa também a receber os pacotes de dados, destinados ao grupo FF3e::77:1111, enviados pelo emissor Ares. Nesta fase, o receptor dabase recebe simultaneamente os pacotes de dados da sessão multicast ASM e da sessão multicast SSM. A informação multicast relativa ao router Pluton é a apresentada de seguida:
Reported MLD Group
Mif PhyIF Group(Group-Timer,MLD-ver(Filter-Mode,Compat-Timer))/Source(TimerID) xl0 ff3e::77:1111 (#10 (v2 EX #0))
(any source) (-)
Multicast Routing Table
Source Group RP-addr Flags ---(*,G)---
IN6ADDR_ANY ff0e::77:2222 2001:690:2380:7778:260:97ff:fea0:5b5 WC RP Joined oifs: ..j...
Pruned oifs: ... Asserted oifs: ... Outgoing oifs: ..o... Incoming : ...I Upstream nbr: NONE
Reported MLD Group
Mif PhyIF Group(Group-Timer,MLD-ver(Filter-Mode,Compat-Timer))/Source(TimerID) 1 fxp1 ff3e::77:1111 (#0 (v2 IN #0))
2001:690:2380:7774:202:b3ff:fe3c:cba5 (#378) fxp1 ff0e::77:2222 (#379 (v2 EX #0))
(any source) (-)
Multicast Routing Table
Source Group RP-addr Flags ---(*,G)---
IN6ADDR_ANY ff0e::77:2222 2001:690:2380:7778:260:97ff:fea0:5b5 WC RP
Joined oifs: .... Pruned oifs: .... Asserted oifs: .... Outgoing oifs: .o.. Incoming : I...
Upstream nbr: fe80::2a0:24ff:fe55:9f1c
---(S,G)---
2001:690:2380:7774:202:b3ff:fe3c:cba5 ff3e::77:1111 NULL CACHE SG
Joined oifs: .... Pruned oifs: .... Asserted oifs: .... Outgoing oifs: .o.. Incoming : I...
Na tabela Reported MLD Group encontram-se duas entradas relativas às sessões multicast ASM e SSM. Pelo mesmo motivo, a tabela Multicast Routing Table contém o estado (*,G) relativo à sessão multicast ASM do grupo FF0e::77:2222 e o estado (S,G) relativo ao emissor Ares e ao grupo FF3e::77:1111.
Conclusões
O DR de uma rede, não processa pedidos do receptor que manifesta interesse em aderir a uma sessão multicast identificada por um dado grupo dentro da gama SSM sem especificar os emissores desejados, garantindo desta forma que os pedidos de adesão a sessões multicast sem especificar os emissores desejados, são apenas processados para grupos multicast fora da gama SSM.
O suporte simultâneo de sessões multicast ASM e SSM, é possível em cenários onde os routers
multicast suportem os protocolos PIMv6 SM e PIMv6 SSM. Estes cenários são de particular
interesse, quando se pretende garantir na mesma infra-estrutura a coexistência de serviços de vídeo e áudio conferências (modelo ASM), em que tipicamente as estações assumem o papel de emissor/receptor e serviços de transmissão de vídeo ou rádio (modelo SSM), onde existe um emissor e vários receptores.