QoS is usually deployed by first marking packets, then policing the packets, and, finally, scheduling the packets. Marking refers to deciding what priority a packet should be and labeling it accordingly. For example, a voice RTP stream would have the highest priority. Policing refers to the actions the router takes based on how the packets are marked. For example, we might specify that any packet marked with the highest priority should be guaranteed 10 percent of the overall link's available bandwidth. Scheduling refers to the interface actually serving the packets, in the order determined by how the marked packets are policed. In other words, in the case of high-priority voice RTP packets, we will deliver them first, and then deliver all other packets according to their priorities (if applicable).
All of these steps can be carried out on the same device, or on separate devices. For example, Cisco IP phones can automatically set their voice RTP packets to a high priority. This means you don't have to test for that packet type on the router. Marking on a router adds CPU load, so if it can be offloaded to a device that can do it natively, that's generally a good idea.
Every IP packet has a field in it called the Type of Service (TOS) field. This eight-bit field is split up into a couple of sections that can be a little confusing. The beauty of the design is buried in its logic, so hang in there.
Two primary types of IP prioritization are used at layer three: ...