QoS must be consistent end-to-end. One misconfigured hop ruins quality for the entire path.
Design steps:
Identify applications. Voice, video, critical apps, bulk transfers.
Define classes. Group into - classes. More adds complexity.
Assign DSCP. Voice is EF. Video is AF41. Follow RFC .
Design queuing. Allocate percentages. Configure LLQ for voice.
Place trust boundaries. Typically at access layer.
Document everything.
Test before deployment. Verify voice quality under load. Check video does not starve data.