[AUDIO LOGO]
So let's jump in and start talking
about multicast operation.
What we're really going to be focusing on here
is how packets are forwarded through the network
incoming interfaces, outgoing interfaces, S comma G entries
in our multicast routing table.
What is an S comma G entry?
And how do we get them?
Now, we're not going to be focusing here
on say PIM sparse mode versus PIM dense mode.
We do have other videos coming up,
in this skill, that will cover that.
But for now, we're just going to discuss generic IP forwarding
for multicast operations.
So let's go ahead and jump in.
We'll take a look at a diagram, here,
so we can discuss what happens as we're
learning information and passing packets
through our multicast environment.
So the first step in our multicast routing
is going to be to enable PIM, on the necessary interfaces,
on the necessary devices.
So let's start with the obvious interfaces.
All of the interfaces on the routers that
are facing other routers are going to have to run PIM.
So that takes care of all of those interfaces.
However, what might not be so clear is also
the interface facing the source, it also has to be PIM-enabled.
And the interfaces facing any clients also
needs to be PIM-enabled.
The simple fact is here.
Cisco routers will not forward routed multicast
unless an interface is PIM-enabled.
So essentially, we need to enable it
on all the interfaces, on all the routers
unless we have some reason that a particular interface
or circuit should not carry multicast.
Generally speaking, we're going to want it enabled everywhere.
The next step is our multicast source
needs to start sending multicast packets onto the network.
Now remember, there is no protocol
or anything running between the source
and what's called the first hop router, which in this case
would be router 1.
This is our first hop router.
The multicast packets simply need to show up
on this PIM-enabled interface.
As soon as that happens, router 1
is going to make what's called an S comma G entry or a source
comma group.
Let's take a look at what that would be.
Let's say, for example, that this source
has an address of 10.1.1.1.
And it is sending to the multicast destination of--
we'll make it real easy.
We'll just make it 224.1.1.1.
And it doesn't have to be fancy.
What the S comma G entry on router 1
is now going to look like in the multicast routing table
is it's going to have 10.1.1.1.
That's the source, comma, the group 224.1.1.1.
This is what we call an S comma G entry
in the multicast routing table.
It's how we know what sources are available from which
groups.
So this is the fundamental of multicast routing.
All of these routers are going to ultimately
need an S comma G entry in order to forward the traffic.
Now they're also going to need an oil, which is, of course,
the outbound interface list.
And we'll keep track of that just on router 1
here, just as an example.
But we'll keep track of our oil.
Now in order to do this, we are going
to have to label our interfaces here.
I don't care so much about the incoming interface.
But we'll just say that, perhaps, this is gigabit 1.
We'll say that this interface up here is gigabit 2.
And this one is gigabit 3 just to make it simple.
So now we have this multicast traffic showing up on router 1.
Since router 1 has seen the traffic,
it now knows the S comma G. An important thing to note here,
the S comma G entry is traffic-driven.
And we'll see this as we move through PIM, both sparse mode
and dense mode.
There's no magic signaling or anything that happens here.
The way the routers learn the S comma G entries
is simply by seeing the traffic.
In the IP headers of the multicast traffic
is the source and the destination information.
We simply read that information out of the packet
headers and make an S comma G entry.
So one of the fundamental principles
for multicast routing is to get the multicast traffic
to the appropriate routers.
So that they can make an S comma G entry.
Now how that's done, that's a big difference
between sparse mode and dense mode.
How do the routers get the S comma G entry?
That is our fundamental focus and what we need to examine.
Now like I said, in this video, that's not our focus.
Although I will point out that as we
go through this discussion, this is
going to be closer to how dense mode works.
But let's just go ahead, and move forward, and talk
about the moving parts here.
Now before router 1 can begin forwarding traffic,
we have to know what interfaces are on the oil.
And as we've mentioned, this is, of course,
going to be different between sparse and dense mode.
This is a hybrid.
Again, we're just having a general discussion here.
But the first thing that needs to happen
is our clients over here need to tell us that they
want this particular group.
So let's talk about that.
What's going to happen is the client
will signal what's called the last hop router.
In this case, the last hop routers
are router 2, router 5, and router 7.
But the clients signaled their interest to the last hop router
with something called IGMP or Internet Group Management
Protocol.
Now IPv6 6 does this a little bit differently.
It uses something called MLD or Multicast Listener Discovery.
But we're focusing right now on IPv4.
So we'll be talking about IGMP.
IGMP comes in three versions.
Version 1 is a bit old.
It's missing something called a leave mechanism.
We'll talk more about IGMP in some more detail later.
But version 1 is pretty much not used anymore.
Our routers these days will default to version 2.
Version 2 is the most common version that we use.
However, just to throw this out there,
we have mentioned SSM or Source-Specific Multicast
a few times so far in our multicast discussions.
That requires IGMP version 3.
This adds SSM into the equation.
So generally speaking, we're going to run IGMP version
2 unless you're using SSM.
And then you're going to want to use version 3.
Now just as a note here, I have been
in companies that are running IGMP version 3 on everything.
And I'm like, well, are you guys using SSM?
They're like, well, no.
I'm like, well, why are you running IGMP version 3 then?
And their answer was, well, that's the newest version.
I mean, isn't that what we should be running?
I'm like, well, I mean, it is the newest version.
Sure.
You aren't really using a feature from it.
But there's no harm in running it either.
So IGMP version 3 will do everything version 2 will do.
It just adds that feature of SSM.
So do we really need it if we're not doing SSM?
Not really but again, the flip side of that
is it's not going to hurt anything either.
So again, in our environments, we
should be running either IGMP version 2 or version 3.
But version 3 is going to be required if we need that SSM.
So now we have all of our clients
indicate that they want this group.
So now the last hop routers have these interfaces on their oil.
It's now up to the last hop routers to figure out
how to get this traffic.
And again, this is where sparse mode and dense mode
are going to differ greatly, how they learn this.
But again, let's just go generic here.
Router 2 would send a PIM join message
to get this traffic flowing to router 2.
Router 1 will respond by adding gigabit
2 to its outbound interface list and then forwarding
this multicast traffic up to router 2.
Router 2 of course, knows the client wants it.
It has that interface on its oil.
So it goes ahead and forwards the traffic to the client.
And so far, we have one client receiving our multicast.
And since router 2 has now seen the traffic coming
from our green line here indicating our traffic flow,
router 2 now knows the S comma G entry
for this particular traffic.
Remember, the S comma G entry is this entry over here.
We're just not going to write it out every time.
It'll get rather large.
But that's the entry we're talking about,
the 10.1.1.1 having the group 224.1.1.1.
Router 5 is also going to send an IGMP join message
towards router 4.
Router 4 would send a join to router 3.
Router 3 send a join up to router 1.
And once all these joins are done,
well, you can see what's going to happen now.
We now add gigabit 3 to our oil.
Router 1 sends the traffic to router 3.
Router 3 now knows the S comma G entry.
Router 3 forwards it to router 4.
Router 4 now knows the S comma G entry.
Router 4 forwards this to router 5.
And, of course, router 5 forwards it to the client while
at the same time, of course, learning the S comma G entry.
When router 7 sends its join message to router 4,
router 4 is simply going to graph the tree,
and add this interface to its oil,
and start sending this to router 7.
We know, of course, that router 7 forwards this to the client
as well as learning the S comma G entry.
So overall, this is the process that we
go through for all of the routers
to learn the S comma G entry.
Now, again, how this actually occurs
does vary between sparse mode and dense mode.
So again, this is a generic conversation.
I just want to make that clear.
This was a dense mode conversation here.
But sparse mode works in a similar fashion.
It just involves a rendezvous point.
What we drew here is more of a push model.
But we'll get into more detail on those two differences
in a little bit.
Our main focus here is the creation
of the S comma G entry, how the oil gets populated.
And one more thing to discuss, what if one of these clients--
we'll take the client up here--
decides they don't want to watch this multicast stream anymore,
whatever it may be?
So they are going to leave the group.
That means that router 5 is going to remove
this interface from its oil.
It will no longer forward out that interface.
Since router 5 has no other clients,
it would then send what's called a PIM prune message back
to router 4 saying, hey, I don't need this multicast anymore.
I don't have any clients.
Stop sending it.
Router 4 would then remove that interface
from its oil and our environment would end up looking like this.
Now keep in mind router 5 will still have this S comma G
entry until it times out.
But again, we'll get into those details in a future video.
But this is the idea behind basic multicast operation,
so we understand the moving parts.
So in this video, we jumped in.
And we took a look at the basics of multicast routing.
We took a look at how the routers need
to form an S comma G or a source comma group entry
in their multicast routing table so that they know
what sources have which groups and what interfaces
are on the oil.
So it knows which interfaces to forward this multicast traffic
out.
This is, of course, all maintained through prunes
and joins.
However, an interesting question that came up here
is how did these routers know which way to send the join?
How did everybody to send a join towards router 1
in our example?
Now, we didn't make that real clear.
Part of that is knowing the S comma G entry.
It gets a little complicated.
But part of the answer is the same thing
we use a for loop prevention here, which
is reverse path forwarding.
And that's something we have to look at in more detail.
That's exactly what we're going to do next.
Until then, I hope this has been informative for you.
And I'd like to thank you for viewing.