Alright, let's go ahead and go through this topology challenge together.
It's going to be really important that we take the time to pause this video if
we haven't
done this challenge yet.
Just go through each one of these questions and make sure that you can quickly
answer,
you don't necessarily have to sketch it all out, but hey, you know, maybe it
makes sense
to grab a piece of paper and a pencil, sketch out the topology and follow along
to make
sure that we know all of the operational aspects of Lisp.
So starting with number one here, they're color coded and they all have a WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So starting with number one here, they're color coded and they all have a
number.
So we're looking at number one scenario over here.
Number one says follow the green arrow, which represents a traffic flow between
R1 and R3
and identify the ETR and the ITR.
Well remember, all of these edge routers, router 1, router 3, router 2, they
are connected
to this Lisp site over here and they all have their own Lisp sites and they set
at the
edge of the network.
So these are going to be known as our Lisp tunneling routers and depending on WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So these are going to be known as our Lisp tunneling routers and depending on
the direction
of traffic flow, they're either an ingress tunneling router, the ITR or the E
gress tunnel
router, the ETR.
So is it always going to be the R1 is the ITR and R3 is the ETR?
Well no, because as soon as return traffic comes back through, we're going to
find those
roles reverse.
And so this is a term that is relative to the traffic flow.
It's not always going to be that R1 is an ITR or R3 is always an ETR, but WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
It's not always going to be that R1 is an ITR or R3 is always an ETR, but
rather depending
on the scenario and the traffic flow we're talking about, at that point we can
lock in the
role for that specific scenario.
So once again we sometimes will refer to these as XTRs just because they can
serve in either
capacity.
So number two, subnet A over here, so we're on number two, subnet A is being
registered via
the Lisp control plane.
What is the EID and what device will serve as the R lock for this registration WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
What is the EID and what device will serve as the R lock for this registration
and what device
performed this registration?
So let's just kind of start from the beginning here.
So remember, the goal of Lisp is to reduce the routing table sizes of all of
these routers
that are out in the underlay.
And so we're going to instead put all of the mappings down here and give
everybody access
to be able to pull the information as needed.
But in order for us to have this database of information, those EIDs and R
locks must be WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
locks must be
registered.
So first of all, what is an EID?
The EID is the subnet.
That is our endpoint identifier.
And yeah, it could be a slash 32, at that point it does represent a host.
But either way, it is a subnet in our case and so specifically it's going to be
subnet A
with this scenario.
Next is what device will serve as the R lock?
Well, the R lock stands for the routing locator and that's ultimately going to
be a some
kind of reachable address, usually loop back address on the edge device that is WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
kind of reachable address, usually loop back address on the edge device that is
performing
the registration, which ties into the last question of which device is
performing this
registration.
Well, router three is going to perform the registration because it's the one
that has
a route to this subnet because it has a route and it's local routing table.
It's going to perform this registration.
So ultimately, the arrow kind of comes from here and the registration is
performed via
R3 and R3 will insert itself as the R lock. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
R3 and R3 will insert itself as the R lock.
So again, it's going to be an IP address, probably it's loop back zero address
or some
loop back address that is used that again, we want to make sure it's reachable.
If we use, for example, the IP address for this physical link here and this
physical link
goes down, well, that's no good because we actually have a path through another
connection.
This is why we like to use a loop back so that if this link goes down or this
link goes
down for that matter as long as they both don't go down, we do have a path to
get to that
loop back address. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
loop back address.
So the device with the route performs the registration and it is the R lock.
So again, this is our EID and R lock mapping that gets formed.
Number three, a packet, which is the blue arrow over here, so our number three,
this packet
has just arrived on router two destined for subnet C. What device will send
back the map
response?
So notice, by the way, if we follow the arrow, we notice that we are performing
a map request.
There are very specific message types in the world of Lisp and a map request is WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
There are very specific message types in the world of Lisp and a map request is
one
of those.
The other one is going to be the map reply and the map reply is going to come
from a certain
device.
Now, we pointed out earlier, we might think that the database here, our MRMS
device, that
this is going to send back the reply, but that's not actually how it works.
We are asking for subnet C here and so the R MRMS is going to push that map WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
We are asking for subnet C here and so the R MRMS is going to push that map
request to
router one, knowing that this is where subnet C lives.
This allows router one to send back the map reply and so the answer is router
one.
Router one will actually send back this map reply.
Now something to keep in mind is that this option can be configured around, so
we could actually
configure the MRMS to perform direct replies if we so desire and that is
something that we
can look at with SDA as well. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
can look at with SDA as well.
But either way, by default, Lisp is going to send that map reply from the
destination
device rather than from the MRMS.
So number four, a packet with this red arrow over here, number four, if that's
red, I think
it's red enough.
This packet is just arrived on router three and it's destined for subnet G. So
a couple
of points about this.
So first of all, we can look around and see, I don't see subnet G anywhere.
So that's a pretty big clue as to what's happening. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So that's a pretty big clue as to what's happening.
But either way, what device will send back the response?
We see it sending a map request here and what response type will it be?
So in this case, the MRMS is going to send back a map reply, but it's
specifically a negative
map reply.
The negative part says that we don't have an entry and if the entry doesn't
exist in
the Lisp on the Lisp database here, then it just must not exist.
Because as soon as a new subnet shows up, let's say, subnet G showed up over WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Because as soon as a new subnet shows up, let's say, subnet G showed up over
here on router
two, well, we would perform the registration and it would know about it.
The fact that it doesn't know about it implies that the subnet exists outside
of the Lisp
space somewhere up here.
So part two of this question, where will the packet be forwarded or will it be
dropped?
Unfortunately, it's not going to get dropped.
We don't want to be dropping our frames.
Instead, we want to assume, probably properly, that subnet G lives out here. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Instead, we want to assume, probably properly, that subnet G lives out here.
Now we don't know this for sure, but we're going to treat this as sort of our
default route
to say that if we don't see a subnet here in the Lisp domain, then it must
exist outside
of the Lisp domain.
So I'm going to receive the negative map reply coming back here.
And router three is therefore going to send this packet, tunnel it to the WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And router three is therefore going to send this packet, tunnel it to the
nearest proxy
egress tunnel router.
So this is the PETR in this case.
And router 10 will then check its routing table and perform the appropriate
operation.
Now, router 10 doesn't have a route.
Well, it's connected to the outside world, so at that point it would be dropped
.
But again, let's assume here that G does exist out here in this space.
And router 10 will therefore check its routing table and find that we have a WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
And router 10 will therefore check its routing table and find that we have a
path in that
direction.
Now when the return traffic comes back, then router 10 will serve as the proxy
ingress
tunneling router.
And then the return traffic will come back.
So once again, we see that these roles flip flop depending on the direction of
traffic.
But let's make sure we understand the value and the really ultimately what we
're getting
out of this negative map reply and what we do with that information, which is
to send
it to the proxy ETR.
So this in a high level is really how Lisp operates. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
So this in a high level is really how Lisp operates.
It's all about reducing the load of those routers in the middle, routers 5, 17,
and really
even the XTRs there at the edge, they don't have to have the full internet
routing table.
They just need to know what any local routes might be.
And they need to know where all of the R-locks are, which are again going to be
loopback
addresses for all of the routers.
But in an environment with even dozens or hundreds of routers, that only
amounts to dozens
or hundreds of routes rather than hundreds of thousands of routes. WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
or hundreds of routes rather than hundreds of thousands of routes.
So we see that there's a tremendous amount of value in building a Lisp space
and tunneling
our traffic from one end to the other while ensuring number one that processing
is very fast,
even on lower end routers, so that reduces our latency.
But also we still have full reachability to the rest of the internet.
So at anyone that's not deploying Lisp, they still get, or we can still
communicate with
them.
I hope there's been informative for you and I'd like to thank you for viewing.