WEBVTT

1
00:00.000 --> 00:04.600
Well, an important part of going through this course is going to be to log in

2
00:04.600 --> 00:05.060
and perform

3
00:05.060 --> 00:06.060
some labs.

4
00:06.060 --> 00:10.130
And so we are going to be doing that here in this skill later on, where we're

5
00:10.130 --> 00:10.660
taking a

6
00:10.660 --> 00:12.660
look at the lab that we have access to.

7
00:12.660 --> 00:15.590
We're going to be given access to quite a few routers, but in the end, we're

8
00:15.590 --> 00:15.980
really

9
00:15.980 --> 00:17.980
only going to use one of them.

10
00:17.980 --> 00:22.380
And so we're going to spend our time here on router one looking at our MQC

11
00:22.380 --> 00:23.700
configuration.

12
00:23.700 --> 00:26.700
So we're here to talk about class maps to start with.

13
00:26.700 --> 00:33.620
And so what we can do is do a config T and use this class dash map command.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

13
00:26.700 --> 00:33.620
And so what we can do is do a config T and use this class dash map command.

14
00:33.620 --> 00:36.340
Now when we do a question mark here, we're going to see that we can specify

15
00:36.340 --> 00:36.840
again that

16
00:36.840 --> 00:39.660
match all or that match any.

17
00:39.660 --> 00:42.630
And depending on the platform we're looking at, there might be different types

18
00:42.630 --> 00:42.980
of class

19
00:42.980 --> 00:43.980
maps.

20
00:43.980 --> 00:47.700
This is especially true on the more modern platforms and Nexus switches.

21
00:47.700 --> 00:51.980
But traditionally on iOS, we don't have to specify a type here when we're just

22
00:51.980 --> 00:52.540
talking

23
00:52.540 --> 00:54.300
about quality of service.

24
00:54.300 --> 00:59.040
The reality is that Cisco uses MQC for a lot of different functions now in

25
00:59.040 --> 00:59.980
their modern

26
00:59.980 --> 01:01.380
OS's.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

26
00:59.980 --> 01:01.380
OS's.

27
01:01.380 --> 01:05.080
And again, that's especially true when we look at Nexus switches and the like,

28
01:05.080 --> 01:06.020
but rest assured

29
01:06.020 --> 01:12.830
when we are configuring class maps on classic iOS XE, I say classic iOS XE, but

30
01:12.830 --> 01:13.780
not Nexus

31
01:13.780 --> 01:17.400
and not some of these other platforms, then the only thing we really need to

32
01:17.400 --> 01:18.140
worry about

33
01:18.140 --> 01:20.460
is whether to add match all or match any.

34
01:20.460 --> 01:25.160
And technically even that is not required because it'll take our match all as a

35
01:25.160 --> 01:25.900
default, which

36
01:25.900 --> 01:28.140
is not necessarily what we want by the way.

37
01:28.140 --> 01:29.780
So let's go and configure a class map.

38
01:29.780 --> 01:34.570
We'll call this class map DSCP E F so I can just specify the class map name
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

38
01:29.780 --> 01:34.570
We'll call this class map DSCP E F so I can just specify the class map name

39
01:34.570 --> 01:35.180
here and

40
01:35.180 --> 01:36.180
hit enter.

41
01:36.180 --> 01:38.420
Now remember, I'm not defining an entire policy.

42
01:38.420 --> 01:40.660
I'm just defining a single queue.

43
01:40.660 --> 01:41.980
So it goes into this queue.

44
01:41.980 --> 01:44.660
Well, I'm going to use the match command to do this.

45
01:44.660 --> 01:49.580
So I can use match and then clarify specify a COS value.

46
01:49.580 --> 01:51.620
I could specify DSCP.

47
01:51.620 --> 01:55.960
I could specify an again, an access control list in here using the access group

48
01:55.960 --> 01:57.940
command.

49
01:57.940 --> 02:00.420
Cisco actually gives us a lot of options here.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

49
01:57.940 --> 02:00.420
Cisco actually gives us a lot of options here.

50
02:00.420 --> 02:03.460
We can even do things like input interfaces.

51
02:03.460 --> 02:06.300
And yes, we can even put a class map inside of a class map.

52
02:06.300 --> 02:09.020
We're not going to get into any of those kinds of situations.

53
02:09.020 --> 02:12.740
For the most part, we're just going to be focusing in on QOS tags.

54
02:12.740 --> 02:14.940
So we want to say match DSCP.

55
02:14.940 --> 02:18.310
Do my question mark and we'll see all of those per hot behaviors we talked

56
02:18.310 --> 02:18.820
about.

57
02:18.820 --> 02:23.670
The 12 different assured forwarding values from one one all the way up to four

58
02:23.670 --> 02:24.340
three.

59
02:24.340 --> 02:28.960
Our class selectors that we talked about as well CS, we can use default to

60
02:28.960 --> 02:30.140
specify when
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

60
02:28.960 --> 02:30.140
specify when

61
02:30.140 --> 02:31.220
we're not using a tag.

62
02:31.220 --> 02:35.420
It's all zeros at that point and E F, which is kind of a big one.

63
02:35.420 --> 02:38.450
Now if we really wanted to, we could just specify the decimal value of any one

64
02:38.450 --> 02:38.940
of those

65
02:38.940 --> 02:43.640
per hot behaviors or for that matter, any of the 64 values that we could use

66
02:43.640 --> 02:44.380
there.

67
02:44.380 --> 02:48.540
But for the most part, we're going to stick with our per hot behaviors.

68
02:48.540 --> 02:54.740
So let's go ahead and specify E F. We called this class map DSCP underscore E F

69
02:54.740 --> 02:55.100
. So we're

70
02:55.100 --> 02:56.580
just going to say match DSCP.

71
02:56.580 --> 03:00.780
E F. Now there's nothing that I can do here to apply policy like bandwidth
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

71
02:56.580 --> 03:00.780
E F. Now there's nothing that I can do here to apply policy like bandwidth

72
03:00.780 --> 03:01.660
reservations,

73
03:01.660 --> 03:02.660
priority.

74
03:02.660 --> 03:04.780
Again, all of that's going to come later for now.

75
03:04.780 --> 03:08.220
I'm just defining what traffic goes into this queue.

76
03:08.220 --> 03:10.220
I could do some other options here.

77
03:10.220 --> 03:14.160
If I do a question mark, well, on this platform, we don't actually have any

78
03:14.160 --> 03:15.180
other options.

79
03:15.180 --> 03:17.060
We don't need to worry about that here.

80
03:17.060 --> 03:21.060
So we're just going to say exit and I've created my class.

81
03:21.060 --> 03:22.060
So what else?

82
03:22.060 --> 03:24.820
Well, I can do class map and create the other queue.

83
03:24.820 --> 03:30.400
So now let's say I do DSCP something like A F for X. So I want to put all of
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

83
03:24.820 --> 03:30.400
So now let's say I do DSCP something like A F for X. So I want to put all of

84
03:30.400 --> 03:30.940
the assured

85
03:30.940 --> 03:34.300
forwarding class fours into the same queue.

86
03:34.300 --> 03:35.300
All right.

87
03:35.300 --> 03:36.300
Well, that's great.

88
03:36.300 --> 03:41.220
I can say match DSCP and do my question mark and see what my options are here.

89
03:41.220 --> 03:46.750
If I want to match all of my AFs, then they're going to be our F4s rather than

90
03:46.750 --> 03:47.660
they're going

91
03:47.660 --> 03:48.820
to be right there.

92
03:48.820 --> 03:50.820
So I can say A F 41, but check this out.

93
03:50.820 --> 03:54.180
If I do a question mark, I can just keep adding more tags.

94
03:54.180 --> 03:58.230
So I could say A F 42 and A F 43 all in the same line, or I could specify them

95
03:58.230 --> 03:59.020
on different

96
03:59.020 --> 04:00.020
lines.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

96
03:59.020 --> 04:00.020
lines.

97
04:00.020 --> 04:07.250
Anyway, when I now exit out of this and say do show class map, we'll notice

98
04:07.250 --> 04:08.420
something

99
04:08.420 --> 04:09.620
interesting.

100
04:09.620 --> 04:15.760
So first of all, we have the class map match all DSCP F. So tells us our match

101
04:15.760 --> 04:16.820
parameters,

102
04:16.820 --> 04:20.340
including the decimal value by the way of our DSCP that we specified.

103
04:20.340 --> 04:22.100
So that's kind of cool.

104
04:22.100 --> 04:24.180
But notice a problem here.

105
04:24.180 --> 04:30.140
First of all, we did specify our A F 4 X and we've got the different A F 4
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

105
04:24.180 --> 04:30.140
First of all, we did specify our A F 4 X and we've got the different A F 4

106
04:30.140 --> 04:31.100
values in here

107
04:31.100 --> 04:32.100
and that's great.

108
04:32.100 --> 04:34.900
But notice that it defaults to match all.

109
04:34.900 --> 04:37.620
I did not specify a match all or match any.

110
04:37.620 --> 04:40.380
And I mentioned earlier, the default is match all.

111
04:40.380 --> 04:44.550
Well, as we joked earlier, can we match three different tags all at the same

112
04:44.550 --> 04:45.140
time in the

113
04:45.140 --> 04:46.140
answers?

114
04:46.140 --> 04:48.780
No, we cannot match three different tags.

115
04:48.780 --> 04:52.920
We must match only one tag at a time because that's the only number of tags a

116
04:52.920 --> 04:53.580
packet can

117
04:53.580 --> 04:54.580
have.

118
04:54.580 --> 04:58.300
So we're never going to match any traffic if we leave it like that.

119
04:58.300 --> 05:01.700
So we're going to have to do now is override that behavior.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

119
04:58.300 --> 05:01.700
So we're going to have to do now is override that behavior.

120
05:01.700 --> 05:05.000
And fortunately, Cisco allows us to do this with the class map command again,

121
05:05.000 --> 05:05.420
this time

122
05:05.420 --> 05:10.380
specifying match any and then DSCP F 4 X.

123
05:10.380 --> 05:12.820
It's the exact same name.

124
05:12.820 --> 05:17.200
And now if I do my show class map, which is a great command, by the way, to

125
05:17.200 --> 05:17.900
validate

126
05:17.900 --> 05:22.590
our configurations, we see that just by entering in the match any statement

127
05:22.590 --> 05:23.460
right here and

128
05:23.460 --> 05:27.660
going into our class map config that it has changed it to a match any.

129
05:27.660 --> 05:30.100
So that's absolutely something we're going to need to pay attention to when it
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

129
05:27.660 --> 05:30.100
So that's absolutely something we're going to need to pay attention to when it

130
05:30.100 --> 05:30.420
comes

131
05:30.420 --> 05:33.700
to our MQC configuration.

132
05:33.700 --> 05:37.490
Now the other thing in this show class map command that's worth noting is I

133
05:37.490 --> 05:38.260
only created

134
05:38.260 --> 05:39.260
two class maps.

135
05:39.260 --> 05:42.060
I created DSCP AF 4 X.

136
05:42.060 --> 05:44.620
I created DSCP EF.

137
05:44.620 --> 05:46.860
I did not create class default.

138
05:46.860 --> 05:50.540
Well as we mentioned, class default is a system configured class map.

139
05:50.540 --> 05:57.690
And so if I try to configure that here with class map, class default, it's

140
05:57.690 --> 05:59.140
going to suggest

141
05:59.140 --> 06:01.020
that I try something else.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

141
05:59.140 --> 06:01.020
that I try something else.

142
06:01.020 --> 06:04.870
And so what's happening here is when we configure a policy maps, again, there's

143
06:04.870 --> 06:05.700
always there

144
06:05.700 --> 06:08.940
has to be at least one queue in a policy map.

145
06:08.940 --> 06:13.070
And that queue has to be able to catch everything else that comes that isn't

146
06:13.070 --> 06:14.100
matched by other

147
06:14.100 --> 06:15.100
queues.

148
06:15.100 --> 06:16.880
So that is going to be our class default.

149
06:16.880 --> 06:22.360
Basically that's where we're going to place our untagged or DSCP 0 types of

150
06:22.360 --> 06:23.000
packets.

151
06:23.000 --> 06:24.320
But technically it's a catch all.

152
06:24.320 --> 06:27.920
It's going to catch anything that isn't matched by any of the other queues,

153
06:27.920 --> 06:29.120
which is why it's

154
06:29.120 --> 06:30.200
a requirement.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

154
06:29.120 --> 06:30.200
a requirement.

155
06:30.200 --> 06:33.820
If packets aren't matched by the three or four queues that we configure, well

156
06:33.820 --> 06:34.120
it's

157
06:34.120 --> 06:37.340
got to go somewhere and that is the queue where it's going to go.

158
06:37.340 --> 06:40.800
So I can't configure that with a class map command, but we will see that we

159
06:40.800 --> 06:41.560
apply policy

160
06:41.560 --> 06:44.160
to it coming up here with policy maps.

161
06:44.160 --> 06:47.480
So in the mirror we could just configure more class maps.

162
06:47.480 --> 06:55.920
I could say class map and again match any and we could make one for AF3Xs.

163
06:55.920 --> 06:57.160
So match any again.

164
06:57.160 --> 06:58.400
So that was important.

165
06:58.400 --> 07:03.920
And then we'll do match DSCP AF31, AF32, AF33.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

165
06:58.400 --> 07:03.920
And then we'll do match DSCP AF31, AF32, AF33.

166
07:03.920 --> 07:08.320
We could do this for AF2X, AF1X traffic.

167
07:08.320 --> 07:12.720
But really outside of that there's not a whole lot to creating the queues.

168
07:12.720 --> 07:15.520
It's just mainly understanding what we're accomplishing here.

169
07:15.520 --> 07:16.800
We are creating queues.

170
07:16.800 --> 07:20.670
We are creating the match statements, understanding the different options that

171
07:20.670 --> 07:21.480
we have available

172
07:21.480 --> 07:24.040
can really help with real world configurations.

173
07:24.040 --> 07:27.350
But within the context of what we're learning here, we're really going to be

174
07:27.350 --> 07:27.920
focusing in

175
07:27.920 --> 07:31.480
on matching specific DSCP and COS tags.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

175
07:27.920 --> 07:31.480
on matching specific DSCP and COS tags.
