U kunt redundantie hebben voor Rendezvous Point (RP) door protocollen zoals auto-RP en Bootstrap uit te voeren. In geval van falen is de convergentie echter niet zo snel. Er is een concept van Anycast RP waar het zelfde IP adres (rp-adres) op twee of meer routers wordt gevormd die u als RP wilt dienen. Druk vervolgens op deze IP in IGP. Andere routers zullen een van deze routers selecteren op basis van het beste pad naar het IP-adres. In geval van een storing is de convergentie hetzelfde als het Protocol van de Binnenlandse Gateway (IGP).
Met dit concept ontstaat een probleem. De informatie moet tussen de verschillende RP's worden gesynchroniseerd omdat weinig zenders en ontvangers zich bij router 1 kunnen aansluiten die als RP werkt en weinigen zich bij router 2 kunnen aansluiten die als RP werkt. Deze routers zouden geen volledige informatie over alle bronnen hebben en multicast zou worden verbroken. De oplossing voor dit probleem is het hebben van een mechanisme om informatie met betrekking tot bronnen tussen alle routers te synchroniseren die als RP werken. Er zijn twee protocollen die dit doel kunnen dienen:
Multicast voor Source Discovery Protocol (MSDP)
PIM
De MSDP bestaat al een tijdje. Bron Actieve berichten worden naar andere routers verzonden wanneer een bron naar een RP registreert. Er is een verbetering aan PIM die in dit document uitvoerig wordt beschreven. Op dit moment is deze versterking alleen beschikbaar voor Nexus.
Cisco raadt kennis van de volgende onderwerpen aan:
Anycast RP’s
PIM (Nexus)
Dit document is niet beperkt tot specifieke software- en hardware-versies.
Dit is een voorbeeldtopologie:
Zender(172.16.1.1)—(9/3)Nexus-1(9/2)—(9/2)Nexus-2
relevante configuratie:
ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4 ip pim anycast-rp 10.1.1.1 192.168.1.1 ip pim anycast-rp 10.1.1.1 192.168.2.2 interface loopback1 ip address 192.168.1.1/32 ip router ospf 1 area 0.0.0.0 ip pim sparse-mode interface loopback7 ip address 10.1.1.1/32 ip router ospf 1 area 0.0.0.0 ip pim sparse-mode interface Ethernet9/2 ip address 10.7.7.1/24 ip router ospf 1 area 0.0.0.0 ip pim sparse-mode interface Ethernet9/3 ip address 172.16.1.2/24 ip router ospf 1 area 0.0.0.0 ip pim sparse-mode
relevante configuratie van Nexus 2:
ip pim rp-address 10.1.1.1 group-list 224.0.0.0/4 ip pim ssm range 232.0.0.0/8 ip pim anycast-rp 10.1.1.1 192.168.1.1 ip pim anycast-rp 10.1.1.1 192.168.2.2 interface loopback1 ip address 192.168.2.2/32 ip router ospf 1 area 0.0.0.0 ip pim sparse-mode interface loopback7 ip address 10.1.1.1/32 ip router ospf 1 area 0.0.0.0 ip pim sparse-mode interface Ethernet9/2 ip address 10.7.7.2/24 ip router ospf 1 area 0.0.0.0 ip pim sparse-mode
Er zijn twee Nexus-boxen: Nexus-1 en Nexus-2. Beide worden gebruikt als RP. Het RP-adres moet 10.1.1.1 zijn. Loopback 7 staat op beide Nexus-boxen die dit IP hebben geconfigureerd. Deze loopback wordt dan geadverteerd in Open Shortest Path First (OSPF) zo verschillende routers in het netwerk zal Nexus-1 of Nexus-2 voor de RP bereiken. Dit is afhankelijk van de beste pad-metriek.
Op beide Nexuses wordt 10.1.1.1 gedefinieerd als de RP met deze opdracht:
ip pim rp-Address 10.1.1.1 Group-list 224.0.0.0/4
Nu moet je iets definiëren dat de RP set heet. Dit is de set van alle routers die als RP zou werken. U moet een loopback hebben op elke prospectieve RP router, die anders is dan de loopback die als RP-adres wordt gebruikt. In dit voorbeeld, is loopback 1 op beide Nexuses die IP adres 192.168.1.1/32 en 192.168.2.2/32 hebben, respectievelijk. Deze loopback 1 wordt gebruikt om de RP set te definiëren. De opdracht om hetzelfde te doen is:
ip pim anycast-rp <rp-adres> <ip-adres-van-prospective-RP>
De opdrachten voor beide Nexussen voor de instellingen zijn:
ip pim anycast-rp 10.1.1.1 192.168.1.1
ip pim anycast-rp 10.1.1.1 192.168.2.2
Eén ding om hier op te merken is dat je je eigen IP moet definiëren, zowel als in de RP set. Daarom moeten beide opdrachten op beide Nexus-boxen worden geplaatst.
Zodra RP is ingesteld, is dit de output die u ziet voor RP-mapping:
Nexus-1# show ip pim rp PIM RP Status Information for VRF "default" BSR disabled Auto-RP disabled BSR RP Candidate policy: None BSR RP policy: None Auto-RP Announce policy: None Auto-RP Discovery policy: None Anycast-RP 10.1.1.1 members: 192.168.1.1* 192.168.2.2 RP: 10.1.1.1*, (0), uptime: 00:00:58, expires: never, priority: 0, RP-source: (local), group ranges: 224.0.0.0/4 Nexus-2# show ip pim rp PIM RP Status Information for VRF "default" BSR disabled Auto-RP disabled BSR RP Candidate policy: None BSR RP policy: None Auto-RP Announce policy: None Auto-RP Discovery policy: None Anycast-RP 10.1.1.1 members: 192.168.1.1 192.168.2.2* RP: 10.1.1.1*, (0), uptime: 02:46:54, expires: never, priority: 0, RP-source: (local), group ranges: 224.0.0.0/4
Bijvoorbeeld, ontvangt u een registratiebericht op één van de routers die deel uitmaakt van de RP set. Deze router zal S,G voor deze bron in zijn tabel toevoegen. Tevens zal de router een PIM registratiebericht naar alle andere leden van RP-set sturen. Het bron IP van dit register bericht zou het adres van deze router zijn, dat in de RP-set staat, en de bestemming zou het adres van elke router in de RP-set zijn.
In dit voorbeeld, wanneer bron 172.16.1.1 multicast pakketsnelheid verstuurt naar 239.1.1.1 naar Nexus-1, registreert Nexus-1 deze bron als RP en stuurt een registrbericht naar Nexus-2 voor bron 172.16.1.1 en groep 239.1.1. Wanneer Nexus-1 2 ontvangt dit register en voegt S,G-code toe voor 172.16.1.1, 239.1.1.1 in de routingtabel. Nu weten zowel RP Nexus-1 als Nexus-2 over deze bron. Het registratiebericht dat van Nexus-1 naar Nexus-2 werd verzonden, had IP 192.168.1.1-bron en was bestemd voor IP 192.168.2.2, zoals gedefinieerd in de RP-set.
Routeitems op beide Nexus-boxen na het registratieproces:
Nexus-1# sh ip mroute 239.1.1.1 IP Multicast Routing Table for VRF "default" (172.16.1.1/32, 239.1.1.1/32), uptime: 00:00:22, ip pim Incoming interface: Ethernet9/3, RPF nbr: 172.16.1.1, internal Outgoing interface list: (count: 0) Nexus-2# sh ip mroute 239.1.1.1 IP Multicast Routing Table for VRF "default" (172.16.1.1/32, 239.1.1.1/32), uptime: 00:00:17, pim ip Incoming interface: Ethernet9/2, RPF nbr: 10.7.7.1, internal Outgoing interface list: (count: 0)
Dump van een dergelijk register bericht bij Nexus-2:
Ethernet II, Src: d8:67:d9:04:5f:41 (d8:67:d9:04:5f:41), Dst: d8:67:d9:02:3b:41 (d8:67:d9:02:3b:41) Destination: d8:67:d9:02:3b:41 (d8:67:d9:02:3b:41) Address: d8:67:d9:02:3b:41 (d8:67:d9:02:3b:41) .... ...0 .... .... .... .... = IG bit: Individual address (unicast) .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default) Source: d8:67:d9:04:5f:41 (d8:67:d9:04:5f:41) Address: d8:67:d9:04:5f:41 (d8:67:d9:04:5f:41) .... ...0 .... .... .... .... = IG bit: Individual address (unicast) .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default) Type: IP (0x0800) Internet Protocol, Src: 192.168.1.1 (192.168.1.1), Dst: 192.168.2.2 (192.168.2.2) Version: 4 Header length: 20 bytes Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00) 0000 00.. = Differentiated Services Codepoint: Default (0x00) .... ..0. = ECN-Capable Transport (ECT): 0 .... ...0 = ECN-CE: 0 Total Length: 128 Identification: 0x1b27 (6951) Flags: 0x00 0.. = Reserved bit: Not Set .0. = Don't fragment: Not Set ..0 = More fragments: Not Set Fragment offset: 0 Time to live: 254 Protocol: PIM (0x67) Header checksum: 0x9aea [correct] [Good: True] [Bad : False] Source: 192.168.1.1 (192.168.1.1) Destination: 192.168.2.2 (192.168.2.2) Protocol Independent Multicast Version: 2 Type: Register (1) Checksum: 0xdeff [correct] PIM parameters Flags: 0x00000000 0... .... .... .... .... .... .... .... = Not border .0.. .... .... .... .... .... .... .... = Not Null-Register Internet Protocol, Src: 172.16.1.1 (172.16.1.1), Dst: 239.1.1.1 (239.1.1.1) Version: 4 Header length: 20 bytes Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00) 0000 00.. = Differentiated Services Codepoint: Default (0x00) .... ..0. = ECN-Capable Transport (ECT): 0 .... ...0 = ECN-CE: 0 Total Length: 100 Identification: 0x0000 (0) Flags: 0x00 0.. = Reserved bit: Not Set .0. = Don't fragment: Not Set ..0 = More fragments: Not Set Fragment offset: 0 Time to live: 254 Protocol: ICMP (0x01) Header checksum: 0xa294 [correct] [Good: True] [Bad : False] Source: 172.16.1.1 (172.16.1.1) Destination: 239.1.1.1 (239.1.1.1) Internet Control Message Protocol Type: 8 (Echo (ping) request) Code: 0 () Checksum: 0x9484 [correct] Identifier: 0x0000 Sequence number: 0 (0x0000) Data (72 bytes) 0000 00 00 00 00 00 71 e9 54 ab cd ab cd ab cd ab cd .....q.T........ 0010 ab cd ab cd ab cd ab cd ab cd ab cd ab cd ab cd ................ 0020 ab cd ab cd ab cd ab cd ab cd ab cd ab cd ab cd ................ 0030 ab cd ab cd ab cd ab cd ab cd ab cd ab cd ab cd ................ 0040 ab cd ab cd ab cd ab cd ........ Data: 000000000071E954ABCDABCDABCDABCDABCDABCDABCDABCD... [Length: 72]
U kunt dit filter gebruiken om PIM-pakketten in te voeren op een videoband van de Nexus:
ethanalyzer lokale interface-inband opnamefilter "ip proto 103" limiet-opgenomen frames 0 schrijfflitser: pim.pcap
Dit begint PIM-pakketten voor onbepaalde tijd in te voeren totdat Ctrl+c is ingedrukt. De pakketten worden op het scherm weergegeven en worden in een logflitser naar het pim.pcap-bestand geschreven. U kunt ook het IP-adres toevoegen om pakketten op te nemen uit een bepaalde PIM-buurman ("ip-protocol 103 en host <ip_adres>").
Dit zijn de twee debugs die behulpzaam zijn bij de controle van het registratieproces op Nexus:
ip pim data-register verzenden
debug van ip ontvangen data-register
Nexus 1
2012 Sep 20 12:25:52.537472 pim: [6405] (default-base) Received Register from 172.16.1.2 for (172.16.1.1/32, 239.1.1.1/32) 2012 Sep 20 12:25:52.537656 pim: [6405] (default-base) Create route for (172.16.1.1/32, 239.1.1.1/32) 2012 Sep 20 12:25:52.537716 pim: [6405] (default-base) Add route (172.16.1.1/32, 239.1.1.1/32) to MRIB, multi-route TRUE 2012 Sep 20 12:25:52.537745 pim: [6405] (default-base) RP 10.1.1.1 is an Anycast-RP 2012 Sep 20 12:25:52.537771 pim: [6405] (default-base) Forward Register to Anycast-RP member 192.168.2.2 2012 Sep 20 12:25:52.537825 pim: [6405] (default-base) Send Register-Stop to 172.16.1.2 for (172.16.1.1/32, 239.1.1.1/32) 2012 Sep 20 12:25:52.538591 pim: [6405] (default-base) Received Register-Stop from 10.1.1.1 for (172.16.1.1/32, 239.1.1.1/32)
Nexus 3000-2
2012 Sep 20 12:26:36.367862 pim: [7189] (default-base) Received Register from 192.168.1.1 for (172.16.1.1/32, 239.1.1.1/32) 2012 Sep 20 12:26:36.368093 pim: [7189] (default-base) Create route for (172.16.1.1/32, 239.1.1.1/32) 2012 Sep 20 12:26:36.368175 pim: [7189] (default-base) Add route (172.16.1.1/32, 239.1.1.1/32) to MRIB, multi-route FALSE 2012 Sep 20 12:26:36.368223 pim: [7189] (default-base) RP 10.1.1.1 is an Anycast-RP 2012 Sep 20 12:26:36.368240 pim: [7189] (default-base) Register received from Anycast-RP member 192.168.1.1
Deze RFC geeft meer informatie over het PIM-registratieproces: http://tools.ietf.org/rfc/rfc4610.txt
Raadpleeg ook PIM en PIM6 configureren voor meer informatie.