Multicast over FR NBMA part2 – (PIM NBMA mode and static RP)


This is the second part of the document “multicast over FR NBMA”, this lab focus on the deployment of PIM NBMA mode in a HUB and Spoke FR NBMA network with static Rendez-vous Point configuration.

Figure1 illustrates the Lab topology used, the HUB is connected to the FR NBMA through the main physical interface, SpokeA and SpokeB are connected through multipoint sub-interface, the FR NBMA is a partial mesh topology with two PVCs from each spoke to the HUB main physical interface.

Figure1 : Lab topology

I – SCENARIO I

PIM-Sparse mode is used with Static RP role played by the HUB.

1 – CONFIGURATION

HUB:

Frame Relay configuration:

interface Serial0/0

ip address 192.168.100.1 255.255.255.0

encapsulation frame-relay

!! Inverse ARP is disabled

no frame-relay inverse-arp

!! OSPF protocol have to be consistent with the Frame Relay !!topology, in this case it is HUB & Spoke in which traffic destined !!to spokes will be forwarded to the HUB then from there to the !!spoke.


ip ospf network point-to-multipoint

!! With inverse ARP disabled you have to configure FR mapping and do !!not forget to enable “pseudo broadcasting” at the end of frame !!relay maps

frame-relay map ip 192.168.100.2 101 broadcast

frame-relay map ip 192.168.100.3 103 broadcast

Multicast configuration:

interface Loopback0

ip address 192.168.101.1 255.255.255.255

!! Enable Sparse mode on all interfaces

ip pim sparse-mode

interface Serial0/0

!! Enable PIM NBMA mode


ip pim nbma-mode

ip pim sparse-mode

!! Enable multicast routing, the IOS will alert you if you are !!trying to use multicast commands without if you forgot it

ip multicast-routing

ip pim rp-address 192.168.101.1

Routing configuration:

router ospf 10

network 10.10.10.0 0.0.0.255 area 100


network 192.168.100.0 0.0.0.255 area 0

SpokeA:

Frame Relay configuration:

interface Serial0/0

no ip address

encapsulation frame-relay

no frame-relay inverse-arp

interface Serial0/0.201 multipoint

ip address 192.168.100.2 255.255.255.0

frame-relay map ip 192.168.100.1 201 broadcast 

Multicast configuration:

interface Serial0/0.201 multipoint

ip pim nbma-mode

ip pim sparse-mode

ip pim rp-address 192.168.101.1

ip multicast-routing 

Routing protocol configuration:

router ospf 10

network 20.20.20.0 0.0.0.255 area 200

network 192.168.100.0 0.0.0.255 area 0

interface Serial0/0.201 multipoint

ip ospf network point-to-multipoint 

SpokeB:

Frame Relay configuration:

interface Serial0/0

no ip address

encapsulation frame-relay

serial restart-delay 0

no frame-relay inverse-arp

interface Serial0/0.301 multipoint

ip address 192.168.100.3 255.255.255.0

frame-relay map ip 192.168.100.1 301 broadcast 

Multicast configuration:

ip pim rp-address 192.168.101.1

ip multicast-routing

interface Serial0/0.301 multipoint

ip pim sparse-mode

ip pim nbma-mode 

Routing Protocol configuration:

router ospf 10

network 192.168.40.0 0.0.0.255 area 300

network 192.168.100.0 0.0.0.255 area 0

interface Serial0/0.301 multipoint

ip ospf network point-to-multipoint

 

2 – ANALYSIS

SpokeB:

SpokeB#sh ip route

Codes: C – connected, S – static, R – RIP, M – mobile, B – BGP

D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area

N1 – OSPF NSSA external type 1, N2 – OSPF NSSA external type 2

E1 – OSPF external type 1, E2 – OSPF external type 2

i – IS-IS, su – IS-IS summary, L1 – IS-IS level-1, L2 – IS-IS level-2

ia – IS-IS inter area, * – candidate default, U – per-user static route

o – ODR, P – periodic downloaded static route

 

Gateway of last resort is not set

 

20.0.0.0/32 is subnetted, 1 subnets

O IA 20.20.20.20 [110/129] via 192.168.100.1, 00:01:16, Serial0/0.301

C 192.168.40.0/24 is directly connected, FastEthernet1/0

10.0.0.0/8 is variably subnetted, 3 subnets, 2 masks

O IA 10.0.0.2/32 [110/66] via 192.168.100.1, 00:01:16, Serial0/0.301

O IA 10.10.10.0/24 [110/65] via 192.168.100.1, 00:01:16, Serial0/0.301

O IA 10.0.0.1/32 [110/66] via 192.168.100.1, 00:01:16, Serial0/0.301

192.168.102.0/32 is subnetted, 1 subnets

O 192.168.102.1 [110/65] via 192.168.100.1, 00:01:16, Serial0/0.301

192.168.100.0/24 is variably subnetted, 3 subnets, 2 masks

C 192.168.100.0/24 is directly connected, Serial0/0.301

O 192.168.100.1/32 [110/64] via 192.168.100.1, 00:01:16, Serial0/0.301

O 192.168.100.2/32 [110/128] via 192.168.100.1, 00:01:16, Serial0/0.301

192.168.101.0/32 is subnetted, 1 subnets

O 192.168.101.1 [110/65] via 192.168.100.1, 00:01:17, Serial0/0.301

SpokeB#

The connectivity is successful and SpokeB has received correct routing information about the network

SpokeB#sh ip pim rp

Group: 239.255.1.1, RP: 192.168.101.1, uptime 00:17:31, expires
never

Group: 224.0.1.40, RP: 192.168.101.1, uptime 00:17:31, expires never

SpokeB# 

Because we use PIM-SM with static RP, the group-to-RP mapping will never expire

SpokeB#sh ip mroute

IP Multicast Routing Table

Flags: D – Dense, S – Sparse, B – Bidir Group, s – SSM Group, C – Connected,

L – Local, P – Pruned, R – RP-bit set, F – Register flag,

T – SPT-bit set, J – Join SPT, M – MSDP created entry,

X – Proxy Join Timer Running, A – Candidate for MSDP Advertisement,

U – URD, I – Received Source Specific Host Report,

Z – Multicast Tunnel, z – MDT-data group sender,

Y – Joined MDT-data group, y – Sending to MDT-data group

Outgoing interface flags: H – Hardware switched, A – Assert winner

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

 

(*, 239.255.1.1), 00:46:09/stopped, RP 192.168.101.1, flags: SJC

Incoming interface: Serial0/0.301, RPF nbr 192.168.100.1

Outgoing interface list:

FastEthernet1/0, Forward/Sparse, 00:46:09/00:02:38

 

(10.10.10.1, 239.255.1.1), 00:22:22/00:02:50, flags: JT

Incoming interface: Serial0/0.301, RPF nbr 192.168.100.1

Outgoing interface list:

FastEthernet1/0, Forward/Sparse, 00:22:22/00:02:38

 

(*, 224.0.1.40), 00:18:10/00:02:24, RP 192.168.101.1, flags: SJCL

Incoming interface: Serial0/0.301, RPF nbr 192.168.100.1

Outgoing interface list:

Serial0/0.301, 192.168.100.3, Forward/Sparse, 00:14:36/00:00:21

 

SpokeB# 

 

SpokeB#mtrace 10.10.10.1 192.168.40.104 239.255.1.1

Type escape sequence to abort.

Mtrace from 10.10.10.1 to 192.168.40.104 via group 239.255.1.1

From source (?) to destination (?)

Querying full reverse path…

0 192.168.40.104

-1 192.168.40.1 PIM [10.10.10.0/24]

-2 192.168.100.1 PIM Reached RP/Core [10.10.10.0/24]

SpokeB# 

According to the two previous outputs, The spokeB (PIM-DR) has joined the shared (RPT) tree rooted at the RP/Core (the HUB) and the traffic across this shared tree is entering the FR interface and forwarded to the LAN interface Fa1/0.

Because it is a static RP configuration there is only one multicast group service 224.0.1.40 through which a shared tree is built for PIM-SM routers to communicate with the RP.

HUB:

HUB#sh ip mroute

IP Multicast Routing Table

Flags: D – Dense, S – Sparse, B – Bidir Group, s – SSM Group, C – Connected,

L – Local, P – Pruned, R – RP-bit set, F – Register flag,

T – SPT-bit set, J – Join SPT, M – MSDP created entry,

X – Proxy Join Timer Running, A – Candidate for MSDP Advertisement,

U – URD, I – Received Source Specific Host Report,

Z – Multicast Tunnel, z – MDT-data group sender,

Y – Joined MDT-data group, y – Sending to MDT-data group

Outgoing interface flags: H – Hardware switched, A – Assert winner

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

 

(*, 239.255.1.1), 00:48:20/00:03:22, RP 192.168.101.1, flags: S

Incoming interface: Null, RPF nbr 0.0.0.0


Outgoing interface list:


Serial0/0, 192.168.100.3, Forward/Sparse, 00:48:20/00:03:22


Serial0/0, 192.168.100.2, Forward/Sparse, 00:48:20/00:03:09

 

(10.10.10.1, 239.255.1.1), 00:25:33/00:03:26, flags: T

Incoming interface: FastEthernet1/0, RPF nbr 0.0.0.0


Outgoing interface list:


Serial0/0, 192.168.100.2, Forward/Sparse, 00:25:33/00:03:08


Serial0/0, 192.168.100.3, Forward/Sparse, 00:25:33/00:03:22

 

(10.10.10.3, 239.255.1.1), 00:00:22/00:02:37, flags: T

Incoming interface: FastEthernet1/0, RPF nbr 0.0.0.0


Outgoing interface list:


Serial0/0, 192.168.100.2, Forward/Sparse, 00:00:22/00:03:08


Serial0/0, 192.168.100.3, Forward/Sparse, 00:00:22/00:03:22

 

(192.168.100.1, 239.255.1.1), 00:00:23/00:02:36, flags:

Incoming interface: Serial0/0, RPF nbr 0.0.0.0


Outgoing interface list:


Serial0/0, 192.168.100.2, Forward/Sparse, 00:00:23/00:03:07


Serial0/0, 192.168.100.3, Forward/Sparse, 00:00:23/00:03:20

 

(*, 224.0.1.40), 00:32:02/00:03:09, RP 192.168.101.1, flags: SJCL

Incoming interface: Null, RPF nbr 0.0.0.0


Outgoing interface list:


Serial0/0, 192.168.100.2, Forward/Sparse, 00:32:00/00:03:09


Serial0/0, 192.168.100.3, Forward/Sparse, 00:32:02/00:02:58

 

HUB# 

Note that for all RPT and SPT the HUB consider two “next-hops” out of the same Serial0/0 interface, this is the work of PIM NBMA mode that makes the layer3 PIM aware of the real layer 2 topology which is not Broadcast but separated “point-to-point PVCs”, as against using only pseudo broadcast that will give the layer 3 an illusion of multi-access network.

Because the shared tree (*,239.255.1.1) is originated locally, the incoming interface list is null.

A source routed tree (10.10.10.1, 239.255.1.1) is also built between the source and the RP.

SpokeA:

SpokeA#sh ip mroute

IP Multicast Routing Table

Flags: D – Dense, S – Sparse, B – Bidir Group, s – SSM Group, C – Connected,

L – Local, P – Pruned, R – RP-bit set, F – Register flag,

T – SPT-bit set, J – Join SPT, M – MSDP created entry,

X – Proxy Join Timer Running, A – Candidate for MSDP Advertisement,

U – URD, I – Received Source Specific Host Report,

Z – Multicast Tunnel, z – MDT-data group sender,

Y – Joined MDT-data group, y – Sending to MDT-data group

Outgoing interface flags: H – Hardware switched, A – Assert winner

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

 

(*, 239.255.1.1), 01:07:17/stopped, RP 192.168.101.1, flags: SJCLF

Incoming interface: Serial0/0.201, RPF nbr 192.168.100.1

Outgoing interface list:

Loopback0, Forward/Sparse, 01:07:17/00:02:39

 

(10.10.10.1, 239.255.1.1), 00:43:08/00:02:59, flags: LJT

Incoming interface: Serial0/0.201, RPF nbr 192.168.100.1

Outgoing interface list:

Loopback0, Forward/Sparse, 00:43:08/00:02:39

 

(*, 224.0.1.40), 00:38:39/00:02:42, RP 192.168.101.1, flags: SJCL

Incoming interface: Serial0/0.201, RPF nbr 192.168.100.1

Outgoing interface list:

Loopback0, Forward/Sparse, 00:38:39/00:02:42

 

SpokeA# 

 

SpokeA#mtrace 10.10.10.1 20.20.20.20 239.255.1.1

Type escape sequence to abort.

Mtrace from 10.10.10.1 to 20.20.20.20 via group 239.255.1.1

From source (?) to destination (?)

Querying full reverse path…

0 20.20.20.20

-1 20.20.20.20 PIM [10.10.10.0/24]

-2 192.168.100.1 PIM Reached RP/Core [10.10.10.0/24]

SpokeA# 

SpokeA has received the first packet through the RP, then switched to SPT (10.10.10.1, 239.255.1.1).

 

II – Scenario II

In this scenario the SpokeB play the role of the RP.

1 – CONFIGURATION

Multicast configuration:

The new static RP should be configured on all routers, 192.168.103.1 is a SpokeB loopback interface and it is advertised and reached from everywhere.

SpokeB:

ip pim rp-address 192.168.103.1

 

SpokeB(config)#do mtrace 10.10.10.1 192.168.40.104 239.255.1.1

Type escape sequence to abort.

Mtrace from 10.10.10.1 to 192.168.40.104 via group 239.255.1.1

From source (?) to destination (?)

Querying full reverse path…

0 192.168.40.104

-1 192.168.40.1 PIM Reached RP/Core [10.10.10.0/24]

-2 192.168.100.1 PIM [10.10.10.0/24]

SpokeB(config)# 

Now the multicast traffic received by SpokeB client is forwarded through the new RP (SpokeB) which is in the best path from the source to the receiver.

SpokeA:

SpokeA#mtrace 10.10.10.1 20.20.20.20 239.255.1.1

Type escape sequence to abort.

Mtrace from 10.10.10.1 to 20.20.20.20 via group 239.255.1.1

From source (?) to destination (?)

Querying full reverse path…

0 20.20.20.20

-1 20.20.20.20 PIM [10.10.10.0/24]

-2 192.168.100.1 PIM [10.10.10.0/24]

-3 10.10.10.1

SpokeA# 

 

SpokeA#sh ip mroute

IP Multicast Routing Table

Flags: D – Dense, S – Sparse, B – Bidir Group, s – SSM Group, C – Connected,

L – Local, P – Pruned, R – RP-bit set, F – Register flag,

T – SPT-bit set, J – Join SPT, M – MSDP created entry,

X – Proxy Join Timer Running, A – Candidate for MSDP Advertisement,

U – URD, I – Received Source Specific Host Report,

Z – Multicast Tunnel, z – MDT-data group sender,

Y – Joined MDT-data group, y – Sending to MDT-data group

Outgoing interface flags: H – Hardware switched, A – Assert winner

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

 

(*, 239.255.1.1), 01:24:27/stopped, RP 192.168.103.1, flags: SJCLF

Incoming interface: Null, RPF nbr 0.0.0.0

Outgoing interface list:

Loopback0, Forward/Sparse, 01:24:27/00:02:29

 

(10.10.10.1, 239.255.1.1), 01:00:18/00:02:59, flags: LJT

Incoming interface: Serial0/0.201, RPF nbr 192.168.100.1

Outgoing interface list:

Loopback0, Forward/Sparse, 01:00:18/00:02:29

 

(*, 224.0.1.40), 00:06:18/00:02:37, RP 192.168.103.1, flags: SJCL

Incoming interface: Null, RPF nbr 0.0.0.0

Outgoing interface list:

Serial0/0.201, 192.168.100.1, Forward/Sparse, 00:06:02/00:00:37

Loopback0, Forward/Sparse, 00:06:18/00:02:37

 

SpokeA# 

It seems that SpokeA has switched from RPT to SPT (10.10.10.1,239.255.1.1) (SJCLF: Sparse mode, join SPT, Register Flag and locally connected requester)

By the way let’s see what will happen if we disable the SPT switchover by providing the following command at SpokeA:

ip pim spt-threshold infinity

 

SpokeA(config)#do sh ip mroute

IP Multicast Routing Table

Flags: D – Dense, S – Sparse, B – Bidir Group, s – SSM Group, C – Connected,

L – Local, P – Pruned, R – RP-bit set, F – Register flag,

T – SPT-bit set, J – Join SPT, M – MSDP created entry,

X – Proxy Join Timer Running, A – Candidate for MSDP Advertisement,

U – URD, I – Received Source Specific Host Report,

Z – Multicast Tunnel, z – MDT-data group sender,

Y – Joined MDT-data group, y – Sending to MDT-data group

Outgoing interface flags: H – Hardware switched, A – Assert winner

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

 

(*, 239.255.1.1), 01:44:47/00:02:59, RP 192.168.103.1, flags: SCLF

Incoming interface: Serial0/0.201, RPF nbr 192.168.100.1

Outgoing interface list:

Loopback0, Forward/Sparse, 01:44:47/00:02:17

 

(*, 224.0.1.40), 00:26:39/00:02:11, RP 192.168.103.1, flags: SCL

Incoming interface: Serial0/0.201, RPF nbr 192.168.100.1

Outgoing interface list:

Loopback0, Forward/Sparse, 00:26:39/00:02:11

 

SpokeA(config)# 

No more SPT! only shared tree (*.239.255.1.1) rooted at the RP (spokeB)

Advertisements

About ajnouri
Se vi deziras sekure komuniki eksterbloge, jen mia publika (GPG) ŝlosilo: My public key for secure communication: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x41CCDE1511DF0EB8

One Response to Multicast over FR NBMA part2 – (PIM NBMA mode and static RP)

  1. Pingback: DMVPN animation | CCIE, the beginning!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: