QoS – 8 Points
7.1 Frame Relay Traffic Shaping
We need to configure FRTS on r1.
AIR = 512Kbps
CIR = 384Kbps
MINCIR = 256Kbps
Be = Up to port speed
Tc = 100ms
We also know that we need to use adaptive shaping.
Bc = CIR * (Tc/1000)
Be = (AR – CIR) * (Tc/1000)
Adaptive Frame Relay Traffic Shaping for Interface Congestion
We can knock out the easy ones first:
map-class frame-relay FRTS
frame-relay cir 384000
frame-relay mincir 256000
frame-relay adaptive-shaping becn
Now we just need to configure Bc and Be.
Bc = CIR * (Tc/100)
Bc = 384000 * (100/1000)
Bc = 384000 * .1
Bc = 38400
Be = (AR – CIR) * (Tc/1000)
Be = (512000 – 384000) * (100/1000)
Be = (128000) * (.1)
Be = 12800
So our final map-class is:
map-class frame-relay FRTS
frame-relay cir 384000
frame-relay bc 38400
frame-relay be 12800
frame-relay mincir 256000
frame-relay adaptive-shaping becn
r1(config#int s0/0
r1(config-if)#frame traffic
r1(config-if)#frame interface-dlci 113
r1(config-fr-dlci)#class FRTS
r1(config-if)#do sh traffic
Interface Se0/0
Access Target Byte Sustain Excess Interval Increment Adapt
VC List Rate Limit bits/int bits/int (ms) (bytes) Active
103 56000 875 7000 0 125 875 –
104 56000 875 7000 0 125 875 –
105 56000 875 7000 0 125 875 –
113 384000 6400 38400 12800 100 4800 BECN
102 56000 875 7000 0 125 875 –
IE simply applies the map-class to the interface. I don’t agree with their solution as all PVCs are affected and not just the PVC to r1. Of course, only DLCI 113 is actually being used so…..ask your friendly proctor for clarification. 🙂
7.2 RTP Header Compression
Configure the Frame connection between r3 and r4 to support RTP header compression.
r3’s s0/0 is a multipoint, physical Frame-Relay interface and we need to configure this only on the DLCI to r4. I had to peek the answer on this one.
frame-relay map ip rtp header-compression
r3(config-if)# frame-relay map ip 162.1.0.4 304 rtp header-compression ?
active Always compress RTP headers
connections Maximum number of compressed RTP connections
passive Compress for destinations sending compressed RTP headers
periodic-refresh Send periodic refresh packets
<cr>
Ummmm….did this blow away my broadcast capability
Before:
r3(config-if)#do sh run int s0/0:0 | i 162.1.0.4
frame-relay map ip 162.1.0.4 304 broadcast
After:
r3(config-if)#do sh run int s0/0:0 | i 162.1.0.4
frame-relay map ip 162.1.0.4 304 rtp header-compression passive connections 15
r3(config)#do sh frame map | sec 162.1.0.4
Serial0/0:0 (up): ip 162.1.0.4 dlci 304(0x130,0x4C00), static,
CISCO, status defined, active
RTP Header Compression (enabled), passive (enabled), connections: 15
Make sure that you leave your broadcast keyword in your map:
frame-relay map ip 162.1.0.4 304 broadcastrtp header-compression passive connections 15
Your connections need to match on both sides:
r4(config-if)#do sh run int s0/0 | i header
frame-relay map ip 162.1.0.3 403 broadcast rtp header-compression connections 15
r3#sh ip rtp header-compression
RTP/UDP/IP header compression statistics:
DLCI 304 Link/Destination info: ip 162.1.0.4
Interface Serial0/0:0 DLCI 304 (compression off, Cisco, RTP, passive)
Rcvd: 0 total, 0 compressed, 0 errors, 0 status msgs
0 dropped, 0 buffer copies, 0 buffer failures
Sent: 0 total, 0 compressed, 0 status msgs, 0 not predicted
0 bytes saved, 0 bytes sent
Connect: 15 rx slots, 15 tx slots,
0 misses, 0 collisions, 0 negative cache hits, 15 free contexts
7.3 Bandwidth Limiting
“…Microsoft SQL traffic is limited to an average rate of 256Kbps on r2’s connection to the Frame Realy cloud.”
“Up to 2048 SQL packets in excess of 256Kbps should be queued up by r2 before packet loss occurs.”
Sounds like queueing to me.
“Do not use an access-list to accomplish this.”
That means we’ll be using a class-map with NBAR to match the traffic.
r2(config-cmap)#match protocol ?
—output truncated—
sqlnet SQL*NET for Oracle
sqlserver MS SQL Server
—output truncated—
We need to match on MICROSOFT SQL:
class-map match-all TASK_73
match protocol sqlserver
r2(config-if)#policy-map TASK_73
r2(config-pmap)#class TASK_73
r2(config-pmap-c)#shape average 256000
r2(config-pmap-c)#shape ?
adaptive Enable Traffic Shaping adaptation to BECN
average configure token bucket: CIR (bps) [Bc (bits) [Be (bits)]],
send out Bc only per interval
fecn-adapt Enable Traffic Shaping reflection of FECN as BECN
fr-voice-adapt Enable rate adjustment depending on voice presence
max-buffers Set Maximum Buffer Limit
peak configure token bucket: CIR (bps) [Bc (bits) [Be (bits)]],
send out Bc+Be per interval
r2(config-pmap-c)#shape max-buffers 2048
r2(config-pmap-c)#int s0/0/0.1
r2(config-subif)#service-policy output TASK_73
r2(config-subif)#do sh policy-map int s0/0/0.1
Serial0/0/0.1
Service-policy output: TASK_73
Class-map: TASK_73 (match-all)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: protocol sqlserver
Traffic Shaping
Target/Average Byte Sustain Excess Interval Increment
Rate Limit bits/int bits/int (ms) (bytes)
256000/256000 1984 7936 7936 31 992
Adapt Queue Packets Bytes Packets Bytes Shaping
Active Depth Delayed Delayed Active
– 0 0 0 0 0 no
Class-map: class-default (match-any)
23 packets, 2598 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: any
Leave a comment