Architecture · Topic 4 of 6
QoS Architecture in Service Provider Networks
Describe Uniform, Pipe and Short Pipe MPLS QoS models, DS-TE with MAM and RDM, CBTS and PBTS, DiffServ, IntServ, trust boundaries and the IPv6 flow label.
- 6 min
- Includes a diagram
- DiffServ keeps no per flow state. IntServ reserves resources per flow with RSVP.
- The trust boundary is usually at the ingress PE, where traffic is classified and re-marked.
- Uniform lets the core change the customer DSCP at the exit.
What it is
QoS architecture is the set of design choices that decide how a provider treats customer traffic of different importance.
The provider core is shared. The design must decide whose markings are trusted, how markings travel across the MPLS core, and how bandwidth is reserved for important classes.
This page covers the architecture and the models. The configuration of classification, policing and shaping is in the Services chapter.
How it works
The models answer where the marking comes from at each point of the path.
DiffServ and IntServ
DiffServ marks each packet with a code point, the DSCP, in the IP header. Every router applies a per hop behaviour (PHB) for that class. No per flow state is kept, so it scales well.
IntServ reserves resources for each flow with RSVP before the traffic is sent. Every router on the path keeps state for each flow. This does not scale to a large core, so providers use DiffServ.
| Model | State in the core | Scalability | Mechanism |
|---|---|---|---|
| DiffServ | None per flow | High | DSCP and per hop behaviour |
| IntServ | One reservation per flow | Low | RSVP signalling |
Trust boundaries
The trust boundary is the point where the provider stops believing the markings it receives. For most enterprise customers, the boundary sits at the ingress PE.
At that point the provider classifies traffic and often re-marks it into its own classes. It may also police each class to the rate in the service agreement. Inside the core, markings are then trusted.
MPLS QoS tunnel models
When a packet enters an MPLS tunnel, the IP DSCP is copied or mapped into the TC bits of the label. The three models decide what happens at the far end.
| Model | Customer DSCP | Egress PE queues by |
|---|---|---|
| Uniform | Can be changed by the core | TC, then the TC value is copied back into the DSCP |
| Pipe | Left unchanged | TC, and the label is removed afterwards |
| Short Pipe | Left unchanged | The customer DSCP, after the label is removed |
- Uniform: the customer and provider form one DiffServ domain. A marking change in the core is visible to the customer at the exit.
- Pipe: the provider keeps its own marking, and the customer DSCP is never changed. The egress PE applies the provider's PHB, which suits a provider that must enforce its class at the egress. The label must still be present at the egress PE for this, so the penultimate router does not remove it.
- Short Pipe: like Pipe, but the egress PE applies the customer's PHB based on the DSCP. This is the usual choice for a managed VPN service where the customer expects its own markings to count.
In Short Pipe the label is normally removed by the penultimate router, so the egress PE sees the IP header.
RP/0/RP0/CPU0:PE1(config)# policy-map CUST_IN
RP/0/RP0/CPU0:PE1(config-pmap)# class VOICE
RP/0/RP0/CPU0:PE1(config-pmap-c)# set mpls experimental imposition 5
That is IOS XR. It sets the TC bits on the label that is added at the ingress PE, whatever the DSCP was.
MPLS TE QoS
DiffServ aware traffic engineering (DS-TE) reserves bandwidth per class, not just in total. Traffic is split into class types, and each class type has its own share of the link.
Two bandwidth constraint models decide how the shares interact:
| Model | How bandwidth is divided |
|---|---|
| MAM (Maximum Allocation Model) | Each class type has its own fixed limit, and the limits do not share |
| RDM (Russian Dolls Model) | The limits are nested, so lower classes can use space that higher classes leave free |
Once several tunnels exist to the same destination, something has to put the traffic into the right one. CBTS (class based tunnel selection) and PBTS (policy based tunnel selection) pick the tunnel by the traffic class of the packet. This lets voice use a low latency tunnel while data uses another.
IPv6 flow label
The IPv6 header has a 20 bit flow label. A source can set the same label on all packets of one flow.
Routers can use it to share load across equal paths without looking deeper into the packet, which keeps the flow in order. It is not a QoS marking. IPv6 QoS uses the traffic class field, which holds the DSCP.
What to remember for the exam
Eight facts cover most questions on this topic.
- DiffServ keeps no per flow state. IntServ reserves resources per flow with RSVP.
- The trust boundary is usually at the ingress PE, where traffic is classified and re-marked.
- Uniform lets the core change the customer DSCP at the exit.
- Pipe and Short Pipe leave the customer DSCP unchanged.
- Pipe queues at the egress by TC. Short Pipe queues at the egress by the customer DSCP.
- DS-TE reserves bandwidth per class type, using MAM or RDM.
- MAM gives each class a separate limit. RDM nests the limits.
- CBTS and PBTS choose a tunnel by traffic class, and the IPv6 flow label is for load sharing.
To tell the models apart, ask who the egress PE queues by. Pipe uses the provider TC, and Short Pipe uses the customer DSCP.
Common mistakes
These four mistakes appear often.
Confusing Pipe and Short Pipe. Both keep the customer DSCP unchanged. They differ in which marking the egress PE uses for queuing.
Mixing up MAM and RDM. MAM is the model with separate limits, and RDM is the one with nested limits.
Calling the flow label a QoS field. It identifies a flow, and routers use it to share load.
Using IntServ in a large core. Per flow state does not scale, so DiffServ is the usual choice.
CBTS and PBTS describe the same idea, and the name and configuration depend on the platform and release.
Check yourself
Work through these three questions.
Which MPLS QoS model lets a marking change in the core reach the customer?
Uniform does, because the TC value is copied back into the DSCP at the exit.
How do MAM and RDM differ?
MAM gives every class type its own separate limit, while RDM nests the limits so unused space can be shared.
What does the IPv6 flow label do?
It identifies a flow, so routers can share load while keeping packets of one flow in order.
Topic 4 of 6 in Architecture
Test yourself on Architecture
The full Cisco CCNP 350-501 SPCOR question bank has 738 questions, with timed practice exams and an explanation for every answer.
This study guide is independent and is not affiliated with, endorsed by, or sponsored by Cisco. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.