QoS between 6509s and 3750s

MonkerzMonkerz Member Posts: 842
Before I begin, please understand that I am just now beginning my journey into QoS. I have put it on the back burner longer than I should have.

So my issue is we have 25+ 6509s and 200+ 3750s in our network, as well as a variety of other gear. We are to the point where we need to start implementing enterprise dialing/least cost routing and video conferencing across the enterprise.

I am researching to figure out exactly how to tackle this. For right now I just want to focus on the connections between 6509s and 3750s. We use redundant 6509s as cores and 3750s as IDF switches at each facility. Between locations we have 10G, 1G or 100M connections. Between 6509s and 3750s we have 10G.

If I needed to give priority to Video, Voice and Signaling; given this 6509 and 3750 environment only, could I use a port-based policy such as below?
mls qos
!
mls qos map cos-dscp 0 8 16 24 32 46 48 56
!
mls qos srr-queue input buffers 70 30
mls qos srr-queue input priority-queue 2 bandwidth 30
mls qos srr-queue input bandwidth 70 30
mls qos srr-queue input threshold 1 80 90
!
mls qos srr-queue input  cos-map  queue 1 threshold 1 0 1 2
mls qos srr-queue input  cos-map  queue 1 threshold 2 3 
mls qos srr-queue input  cos-map  queue 1 threshold 3 6 7
mls qos srr-queue input  cos-map  queue 2 threshold 1 4 5
!
mls qos srr-queue input  dscp-map queue 1 threshold 1 0 8 10 12 14 
mls qos srr-queue input  dscp-map queue 1 threshold 1 16 18 20 22 
mls qos srr-queue input  dscp-map queue 1 threshold 1 26 28 30 34 36 38 
mls qos srr-queue input  dscp-map queue 1 threshold 2 24
mls qos srr-queue input  dscp-map queue 1 threshold 3 48 56
mls qos srr-queue input  dscp-map queue 2 threshold 1 32 46
!
mls qos srr-queue output cos-map queue 1 threshold 3 4 5
mls qos srr-queue output cos-map queue 2 threshold 1  2
mls qos srr-queue output cos-map queue 2 threshold 2  3
mls qos srr-queue output cos-map queue 2 threshold 3  6 7
mls qos srr-queue output cos-map queue 3 threshold 3  0
mls qos srr-queue output cos-map queue 4 threshold 3  1
!
mls qos srr-queue output dscp-map queue 1 threshold 3 32 46
mls qos srr-queue output dscp-map queue 2 threshold 1 16 18 20 22
mls qos srr-queue output dscp-map queue 2 threshold 1 26 28 30 34 36 38
mls qos srr-queue output dscp-map queue 2 threshold 2 24
mls qos srr-queue output dscp-map queue 2 threshold 3 48 56
mls qos srr-queue output dscp-map queue 3 threshold 3 0
mls qos srr-queue output dscp-map queue 4 threshold 1 8
mls qos srr-queue output dscp-map queue 4 threshold 2 10 12 14
!
mls qos queue-set output 1 threshold 2 80 90 100 100
mls qos queue-set output 1 threshold 4 60 100 100 100
!
interface XXXXXXXXXX
mls qos trust dscp
queue-set 1
srr-queue bandwidth share 1 30 35 5
priority-queue out

Comments

  • jamesp1983jamesp1983 Member Posts: 2,475 ■■■■□□□□□□
    I don't know how quickly you have to do this or how granular it needs to be, but have you considered Auto QoS? If you're under a time crunch it can certainly help.
    "Check both the destination and return path when a route fails." "Switches create a network. Routers connect networks."
  • MonkerzMonkerz Member Posts: 842
    Not in a time crunch at the moment, but will be in a few months if I do not get to labbing now.
  • deth1kdeth1k Member Posts: 312
    Don't bother with AutoQoS unless you want problems, even Cisco themselves don't recommend using it.
  • shodownshodown Member Posts: 2,271
    the 1st thing that needs to be done is a QOS policy which defines what gets treatment and what gets dropped. If you already have the video up and running you can do auto QOS.
    Currently Reading

    CUCM SRND 9x/10, UCCX SRND 10x, QOS SRND, SIP Trunking Guide, anything contact center related
  • shodownshodown Member Posts: 2,271
    deth1k wrote: »
    Don't bother with AutoQoS unless you want problems, even Cisco themselves don't recommend using it.

    We've used it in several deployments, we always tweak it but it has always worked for us. Tell us about some of your problems sounds like a good learning experience.
    Currently Reading

    CUCM SRND 9x/10, UCCX SRND 10x, QOS SRND, SIP Trunking Guide, anything contact center related
  • MonkerzMonkerz Member Posts: 842
    Why do I need a policy? I have defined the interface queues and what traffic is assigned to each queue...?
  • jamesp1983jamesp1983 Member Posts: 2,475 ■■■■□□□□□□
    You can always tweak it, and it doesnt hurt to take a look at the config in a lab that auto qos puts in place as a learning experience.
    "Check both the destination and return path when a route fails." "Switches create a network. Routers connect networks."
  • shodownshodown Member Posts: 2,271
    Monkerz wrote: »
    Why do I need a policy? I have defined the interface queues and what traffic is assigned to each queue...?


    I'm sorry I didn't speak fully. I meant a policy backed by management that is written down and understood by the users of your enterprise. When other groups find out there traffic maybe slowed down or even dropped when congestion occurs it can make for some nasty battles.

    As an example when I worked with one customer they had massive bandwidth a few 10 gig circuits between large sites. A few metro sites with fiber and even far branch sites with large bandwidth, but once the server team started to centralize services bandwidth started getting slower and slower. Eventually Reservations has to be made for video conferences to unsure everyone got a good experience with voice and video over a 30,000 user wan. The appetite for bandwidth from your end users never slows.
    Currently Reading

    CUCM SRND 9x/10, UCCX SRND 10x, QOS SRND, SIP Trunking Guide, anything contact center related
  • DarthVaderDarthVader Member Posts: 71 ■■□□□□□□□□
    Seriously,
    I would define the traffic and desired handling using Class-Maps/Policy-Maps. Then you apply those policies as "Service Policies" at the appropriate interfaces.

    I have been doing QoS for the past 9 years.

    No on Auto QoS

    you need to look at CBWFQ w/LLQ!!!!!!
  • MonkerzMonkerz Member Posts: 842
    I understand using class/policy maps, but if the gear I plan to QoS traffic for is already marking their packets with DSCP, could I not just setup the interface queues as in the code above and apply to each interface? Wouldn't that do the same thing or am I missing something? I am talking in terms of multilayer switches, not routers.
  • networkjutsunetworkjutsu Member Posts: 275 ■■■□□□□□□□
    I think queue-set command can be dropped since by default 3560/3750 platform use queue 1 as their expedite queue, if my memory serves me right.

    Also, I'd like to suggest to put at least a srr shape command in there even though it is not being honored anymore since you have the priority-queue out in there. IIRC, the default srr shape is 25? It's just nice to see a command in there for people who don't know their default values. Then again, that's just a preference. :)

    I don't like using mls qos trust dscp so I'd say don't use it. At least, use an ACL to filter out traffic that you didn't specify to be in the priority queue. If you don't want to use service-policy command on each interface, then you can always use mls qos vlan-based command and apply the service-policy command on the SVI. Again, this is just a preference.

    If you're not using CoS, I suggest to take them out of the config to make it a little short. :)

    Lastly, (hopefully I won't offend you by saying this) I think any guy who knows mls qos command knows that you're talking about multilayer switches here and not routers. :)

    Any mistakes on my part, please feel free to let me know.
  • DarthVaderDarthVader Member Posts: 71 ■■□□□□□□□□
    That's fine if your equipment is marking the traffic (DSCP). Now all you have to do is build class-maps using DSCP as the match criteria.
    Your queues are not going to automatically handle your traffic the way you want.
    You will need to go through the [class-map --> policy-map --> service policy] set up to impement QoS.

    Always remember: AutoQoS is just a set of Macro commands that some guy at Cisco came up with. When you want to deploy a true QoS solution you will need to design/test/deploy what makes sense for your requirements.
  • networkjutsunetworkjutsu Member Posts: 275 ■■■□□□□□□□
    DarthVader wrote: »
    Always remember: AutoQoS is just a set of Macro commands that some guy at Cisco came up with. When you want to deploy a true QoS solution you will need to design/test/deploy what makes sense for your requirements.

    That's why you need to tweak it as already mentioned by shodown to fit the environment. My previous environment used AutoQoS and let it run for quite a bit then it was tweaked and became the standard QoS config. No problems as far as I could tell. IIRC, AutoQoS use commands that are based on Cisco SRND guide. I think they've tested it out quite a bit before they put stuff in SRND, no? For the most part, I think AutoQoS will do just fine. Heck, I probably would've used it in my current environment if we had the right IOS. :)
  • MonkerzMonkerz Member Posts: 842
    DarthVader wrote: »
    Your queues are not going to automatically handle your traffic the way you want.

    You will need to go through the [class-map --> policy-map --> service policy] set up to impement QoS.

    OK, so call me stubborn, but I am still not understanding why I need the class-map/policy-map. You are telling me that I have to set these up in order to implement QoS, but.....

    What does a class-map do?
    (My thoughts): Class-maps match packet criteria via ACL or CoS/DSCP/ToS and assigning them to a class.

    What does a policy-map do?
    (My thoughts): Applies settings(bandwidth/priority/markings/policing to classes defined in class-maps.

    What does applying a service policy do?
    (My thoughts): Applies settings in policy-map to interface in directions specified.


    How does the config above not do the same thing? Does it not send traffic marked as certain types (Classifying) to different queues that are allotted certain shared bandwidth/priority (Policing) both ingress and egress (Servicing)?


    Forgive me for my ignorance....
  • networkjutsunetworkjutsu Member Posts: 275 ■■■□□□□□□□
    Are the PCs connected to these switches going to mark the DSCP values as well? If not, then you want to use class map(s) and policy map(s) so you can specify their DSCP values according to the QoS policies that users and network agreed to.
  • MonkerzMonkerz Member Posts: 842
    As of right now we do not use desktop video or soft phones that I am aware of so I was running with the assumption that PCs use default 0/0 DSCP/CoS. If/When we do need to mark certain packets that are not already predefined, I see where I would need class/policy maps as close to the device as possible. And of course when I traverse a router.

    So back to my original question, the config above would work to give video and voice priority as well as keeping the DSCP markings intact between switches?

    Is it possible to trust both DSCP and CoS?
  • networkjutsunetworkjutsu Member Posts: 275 ■■■□□□□□□□
    Monkerz wrote: »
    So back to my original question, the config above would work to give video and voice priority as well as keeping the DSCP markings intact between switches?

    I am not a QoS expert but it looks good to me. Though, I believe that it is discouraged to change the buffers unless you know what it'll do.

    Is your video gear sending marked DSCP value of 32?
    Is it possible to trust both DSCP and CoS?

    If I remember correctly, no. Either you use mls qos trust dscp or cos. Might as well use DSCP since it'll be intact. Your DSCP to COS map should be enough if everything stays in the Layer 2, if I am not mistaken.
  • MonkerzMonkerz Member Posts: 842
    So, after being swamped for a few weeks, I finally got the chance to sit down and play with this some more. To answer your question, the video gear will be marking with 34.

    I believe I have a working configuration, but a ton more testing will reveal anything I have overlooked. So far I have limited the bandwidth on the link between a 3560 and 3750 to 10Mb (testing for MetroE links <100Mb), congested the link with DSCP 0 traffic to the point I was seeing buffer drops, then trickled DSCP 46, 34 and 24 across the link. I saw no drops of 46, 34 or 24, while 0 kept overflowing. I have tested and verified quite a few simulations, but since I am still new to QoS, was wondering if someone could give me some good tests to perform.

    I still have to work on a config for the routers in our environment. I will be taking this to the lab to run in a mocked up enterprise network with core, edge routers, variety of wan speeds to faux branch offices. I will be running true VoIP and Video through the lab.
  • phoeneousphoeneous Member Posts: 2,333 ■■■■■■■□□□
    This is what I use on my 2911's. Just started learning qos 3 months ago.

    class-map match-any VOIP_RTP
    match dscp ef
    class-map match-any VOIP_SIP
    match dscp cs3
    match dscp af31
    match ip precedence 3
    !
    !
    policy-map WAN_QOS
    class VOIP_RTP
    priority percent 60
    class VOIP_SIP
    priority percent 5 (or bandwidth percent 5)
    class class-default
    random-detect

    interface Serial0/2/0:23
    description ***PRI***
    no ip address
    encapsulation hdlc
    isdn switch-type primary-ni
    isdn incoming-voice voice
    isdn supp-service name calling
    isdn outgoing ie facility
    trunk-group PRI-01
    no cdp enable
    service-policy output WAN_QOS
  • MonkerzMonkerz Member Posts: 842
    Yeah, that would appear to be standard MQC. I have worked out all kinks with the 3750, 3560 and 2901s, just have to figure out the Sup2Ts. I had to open a TAC case as my hardware, specifically the 6748-GE and 6724-SFP will not allow you to match DSCP when lan-queuing while using the Sup2T in the 6509 chassis.
Sign In or Register to comment.