Nearly any modern Cisco IOS box can handle this. The traditional "Priority Queueing" as you know it is now legacy, and has been superseded with the more powerful CBWFQ (also known as PQ/CBWFQ, or LLQ) via Modular QoS CLI (you'll see this referred to as MQC in documentation).
CBWFQ gives us the ability to define multiple queues, and provide different treatment for each queue. For example, we could create a class for JDE and give it XX Kb/sec of priority treatment, create a class for email and guarantee is XX Kb/sec of WFQ treatment, and have a default class ("class-default" in MQC speak) which we could give "whatever is left" WFQ treatment.
The benefits to this approach are numerous:
1. Traditional Priority Queueing was subject to queue starvation of lower-priority queues; this is no longer the case, since with the PQ in CBWFQ we can define the maximum amount we wish to prioritize.
2. We can now define more than the previous 4 queues.
3. We can now define different treatment for the different queues; previously, if we used traditional Priority Queueing, all queues were PQd. Now we can define different behavior per-queue.
4. All of these queue settings are "in the event of congestion" in recent code. So if you define a class and guarantee it 64 Kb/sec, you can rest assured it will get that 64 Kb/sec if there is congestion on the link. However, if there is no congestion, it will eat up as much bandwidth as is there. You are simply defining a "worst-case" scenario.
The way this is typically done is by enabling FRTS, and then applying a service-policy to the frame-relay map-class. Be sure you define FRTS settings, because IOS defaults to 56Kb per PVC, with a mincir of 32Kb. This means if you leave a PVC's FRTS setting undefined, the router will manually shape down to 56Kb (with backoff to 32Kb if receiving BECNs):
It appears there have been some very recent enhancements to MQC on Frame Relay, where the shape'ing commands have been moved back to MQC allowing you to apply specific FRTS settings on a per-class basis; I have never configured this myself, but it is outlined in the following document:
So, long story short, assuming you have IOS routers handling the Frame Relay you can do this with the gear you have today. CBWFQ for Frame Relay has been around for awhile now, but it's probably best to stay in a fairly recent code as there has been a lot of progress as of late. I typically stick with 12.2 mainline for networks that can get by with it, 12.3 mainline for networks that need the voice features that were introduced in 12.2T.
For examples of customers doing this today on your very own management platform, I would recommend you work with Mike Ikemeyer in your Network Operations Center (NOC) and look at the router configurations for RB or MS [customer names obfuscated for privacy]. Both of these customers are using the aforementioned QoS features over Frame Relay using IOS routers today.
This document gives several answers on frequently asked questions for PFRv3 channel state behavior.
Q1: What are all the channel operational states from a BR (border role) perspective and what are the rules/conditions to be in each st...
The need was to reach an host inside a LAN through a VPN connection managed by the LAN gateway (Cisco 1921).
The LAN gateway performs NAT and there was a dedicate nat rule for the host i wanted to reach through VPN.
I couldn't connect to the hos...
We have 3 identical switches configured by someone else and would like to claim some of the Gigabit ports(G1/G2/G3/G4) for use on servers. When we try to change the wiring and configuration, we run in to connectivity issues. Attached is a des...