Configuring quality of service is going to be a very critical part of deploying SD-WAN into production environments.
So let's make sure that we remember how exactly to deploy quality of service,
which, remember, requires us to think about things from two perspectives.
First of all, defining the queues and pushing them out to our edges,
which requires us to push them out, push out the queue configuration, that QoS map,
as well as pushing it onto the interfaces themselves that are going to be running that.
And then we need to think about traffic assignment, and we can push that out locally via ACLs,
or what we've really focused more on from a demonstration perspective is pushing it out centrally.
So let's go ahead and walk through this challenge step by step.
So first of all, we're tasked with creating the class maps and a QoS map that achieves certain goals.
So the way we're going to do this is we're going to go to configuration, down to policies,
and up here under custom options, I'm going to look on the localized side, and I'm going to go to my lists.
This is where I can go to class map.
Again, keep in mind that even though we like to call them class lists,
we like to refer to a lot of these things as lists.
Under the hood, Cisco's calling this a class map because that's what iOS XE calls it.
So either way, class list or class map, however we want to call it that,
we need to make sure that we've created some queues.
Now, if you're working your way through the course sequentially, you probably have a few of these queues already configured,
and that's perfectly fine.
We can go ahead and reuse these.
I've got a voice over IP queue and a best effort queue, but I do need to configure a bulk queue.
So I'm going to come in here.
I'm going to enter a class called bulk, and I just need to assign this to a queue that isn't one of the ones I already have assigned.
So, yeah, we've got queues number one, two, and three, and so we should be good there.
So next, we want to come up to custom options, and we want to come down to the forwarding class,
which is where we're going to define a QoS map.
and here we'll just call this something like QoS challenge.
Let's just call it QoS map challenge, and then the description is a QoS map for the challenge,
and now, remember, we start with queue number zero having 100% of the bandwidth.
So let's add a queue.
We're going to add queue number one, which is the voice over IP queue.
Probably not in real life going to actually match these, but that's perfectly fine.
Drop type, we'll just do tail drop here.
We weren't told which drop type to use, so that doesn't matter, at least as far as the challenge is concerned,
and always remember that as I add bandwidth for other queues here like queue number one, it takes away from queue number zero.
So as far as this configuration is concerned, queue number zero is always going to get whatever is left over,
So next we were told that bulk gets 20% of the bandwidth, so bulk was the one that I added, which was queue number three,
and we said 20% for our bandwidth and our buffer.
Drop type again can just be tail drop, and then lastly I'm going to add queue number two, which would be my best effort queue,
and I was told that it should get 50% of the buffer.
So 50 or, well, both, bandwidth and buffer, and tail drop again.
So at this point we should see that the bandwidth is broken out exactly how I want with the best effort getting 50%,
voice over IP getting 15, bulk getting 20, and the remainder of the traffic goes to queue number zero at 15%.
So I'm going to go ahead and save this policy, and that should have been task number one, which was creating the class list and the QoS map.
So we're going to create a new localized policy, so I can actually scroll up here and go to localized policy, add a policy.
We don't need to create any groups of interest, so I just need to click through here to QoS map.
I'm going to import the QoS map I just configured, which was my challenge map.
Import that, very good.
And since that's the only thing I'm doing here, I'm not adding ACLs or anything, I can click all the way through to the end.
Policy name, I'm just going to call this challenge policy, and challenge policy.
And remember, I do need to click a couple of these boxes.
Cloud QoS is going to enable this towards the transport side, and then I also want to click application if I'm doing application recognition,
which we're not technically doing as part of this challenge exercise, so we can leave it checked or we cannot, but either way I'm going to save the policy here.
Remember, because this is a localized policy, I have to push it out to my devices.
I'm going to do that via a template.
If I was doing a centralized policy, which we're actually going to do here momentarily, then the centralized policy gets pushed to the vSmart or the SD-WAN controller,
but for me, I've got to push it out to the edges.
I'm going to come out to my device templates, look at my lab edge template here.
I'm going to edit this, and I'm going to click on additional templates here, and under policy, we've got this QoS localized policy.
I'm going to change this to my challenge policy.
I'm going to click update, and click next, and configure these devices, and confirm the changes.
So I've just pushed that out.
Now what I need to do is I need to apply it to the interfaces, because remember, by pushing the template out via device template,
the edges now have my QoS policy, but we haven't actually applied it anywhere yet.
So I want to apply it to my MPLS link is what we're told in the challenge.
So I'm going to go back here, click back, find my way over to the feature templates, and this is where my MPLS interface should be.
I'm going to edit this feature template.
I can either scroll up a little bit or scroll up all the way.
Either way, find the ACL and QoS section, and I need to change my QoS map right here.
So I'm going to change this to a global configuration, which will apply to all of my edge devices, and now I need to type in the QoS map name.
It's very important we remember what we called it.
We called this QoS map challenge all caps, and now I can click update.
So this is going to push this out to my two edge devices, verify I want to configure it on both of them, and allow it to push it out.
The problem is that we don't actually have any traffic flowing into those queues yet.
We have to actually perform the traffic assignment, and again, I can do that localized via ACL, or I can do it via centralized policy through the SD-WAN controller,
and that's what we're going to do here in this challenge.
So now that this is successfully pushed out, I'm going to want to configure that centralized policies.
I'm going to go to configuration, and then policies.
I'm going to come up to custom options.
Traffic policies are how we go about configuring manipulation to our traffic, including the idea of putting traffic into queues.
So it's not application aware routing.
Keep in mind, it's under traffic data, and I'm going to add a policy here, and we'll call this QoS, I don't know, traffic challenge.
There we go.
So QoS challenge traffic data.
We're going to add a sequence type.
We've got a quality of service traffic type right there.
That should catch our eye.
I'm going to add a sequence rule, and now we have our match action statement.
So the question is, what are we going to match on?
Well, we said we want to match on DSCP, and so I'm going to click DSCP here, and now I have to add in a DSCP value,
and keep in mind, this has to be entered from a decimal perspective.
So what are we matching?
EF, we have to remember, is DSCP of 46.
So let's start with our EF, and we'll put that into the voice over IP queue.
So this is where we put match, or what we put in on the match side.
I click actions.
I'm going to choose a forwarding class, and now I have to remember what I called this.
I called it voice over IP or VOIP.
I'm now going to save.
Whoops.
I do that sometimes.
Big blue button attracts me.
So we're going to do the same thing.
I'm going to match DSCP, and now I need to do AF21 for bulk.
AF21 is going to have to be a decimal value.
So what do I do?
I do that 8X plus 2Y that we've done so many times.
It looks like it's going to be AF21, so it should be 2 times 8 is 16, plus 2 more is 18.
So 18 should be the value that I use here, 1.8.
And then under actions, I'm going to match it to the forwarding class of bulk.
I save match in actions, and then I need one more sequence rule for best effort.
Now be very careful here, because I might be tempted to say match DSCP of 0,
but we're not matching only DSCP of 0.
We're told to match all other traffic.
So it's really less about adding DSCP of 0 and 1 and 2 and 3.
I really just want to match all of the traffic that is left over.
So I could do something like, let's just do source data prefix,
and I can just enter in 0.0.0.0.0.
So basically match any source IP address.
I could use a data prefix list if I had one configured.
I'm just going to statically enable this,
and under actions, I'm going to place it into the forwarding class called BE.
And so now I am going to save my actions.
So number one, we're matching DSCP of 46, which is EF, putting it into VOIP.
Next, we're matching AF21, putting it into bulk.
We're matching everything else and putting it into best effort.
Now I can save the data policy.
Now at this point, I could go to my, let's see here, QS traffic challenge policy.
I've created this.
So I would come out to my policies.
I guess I can just go back here.
All right, there we go.
So now we can add a policy, and we can skip through this.
Get to the bottom.
There we go.
And we're going to skip through that part, go to traffic data,
and we'd add our policy here.
So import existing.
I would import my traffic challenge map here or traffic challenge policy, click next,
and this is where I would add a name and apply it.
I'm just going to cancel out of this at this point because from a lab perspective,
we'll just call that good.
But that is how we would finish out that challenge.
Now lastly, we need to add an adaptive QoS policy,
and so we could do it via the graphical user interface, but we're told to do it via CLI.
So just remember where we would do this via graphical user interface if we needed to.
So we would actually come over to configuration, go to templates,
and we'd come over to the feature template
and really just get onto the same interface template that we did earlier.
And when we edit it, we find the QoS and ACL section right here,
and we can globally enable adaptive QoS at which point we can change all of the shaping configurations.
But we want to do this via CLI, so let's go ahead and switch over to the CLI and get that done.
So here I am on Edge 14.
We're going to do a config dash T.
We get into the SD-WAN configuration side of things and then get onto our interface.
So for the MPLS link on Edge 14, we would do that in gigabit Ethernet 1,
I can continue to put commands in here as our Viptela OS allows us to usually just use the same line,
or I can hit enter, and at this point I have my commands for configuring downstream and upstream
as well as modifying the period, which has a default timer of 15 minutes.
So we're told to change this to 40 minutes.
Let's go ahead and start there, period 40.
And then I use the upstream command, so upstream, and then we were told to set it to 200 megabits per second as a target.
Remember, this is in kilobits per second, so I'm going to 200,000.
And then I also am going to use the range command to configure that range from 100 megabits per second to 300 megabits per second.
And then I would commit this.
So I can commit, and now we have deployed our adaptive QoS policy via CLI.
So that was very fast.
We just blazed right through that, got the configuration done on the UI side,
got the configuration done for adaptive QoS on CLI.
Quality of service, it takes a little bit of practice to go in there and do that,
so if any of this tripped you up, not a problem at all.
Just go through the process again two or three more times until we know exactly how we go about doing things.
There's a lot to do as far as creating the actual queues, pushing them out, getting them on the interfaces.
If any of those steps were missed as part of the process, then, again, just do it until we've got that process down.
Otherwise, if we're good with quality of service configuration,
then let's go ahead and wrap this up by taking a look at the management side of our SD-WAN.