Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
The QoS Marker service, defined in ISO/IEC 29341-8-18, provides a standardized mechanism for marking network packets with QoS priority information within the UPnP QoS architecture v3. Packet marking is the process of writing QoS-related information into packet headers so that downstream network elements can apply appropriate treatment without re-classifying the traffic. The marker supports both Layer 3 (DSCP/ToS byte in IP headers) and Layer 2 (802.1p priority in Ethernet VLAN headers) marking.
The service defines actions to configure and apply marking rules. Each marking rule specifies a traffic class (TrafficClassID) and the corresponding Layer 2 and Layer 3 marking values to be applied. The service also maintains a default marking table for traffic classes that do not have explicit marking rules.
| Action | Input Parameters | Effect |
|---|---|---|
| SetMarkingRule | TrafficClassID, DSCPValue, 802.1pPriority, UserPriority | Creates or updates a marking rule for a traffic class |
| RemoveMarkingRule | TrafficClassID | Removes a specific marking rule, reverting to the default mapping |
| GetMarkingRule | TrafficClassID | Retrieves the current marking values for a traffic class |
| GetDefaultMarkingTable | None | Returns the complete default marking table |
The marking operation itself must be performed with minimal latency. On software-based routers and gateways, packet marking requires modifying the packet header in memory, which involves checksum recalculation for IP and transport-layer headers. The QoS Marker service implementation should use hardware offload where available — most modern Ethernet controllers support DSCP marking and 802.1p priority insertion at wire speed.
An important consideration is the trust boundary. Packets arriving from untrusted interfaces (such as the WAN port of a residential gateway) may already contain DSCP markings set by the sender. The QoS Marker service must be configured with a trust model: either trust the existing markings (pass-through mode) or overwrite them based on classification results (re-mark mode).
The service also manages the relationship between TrafficClass identifiers and concrete marking values. The UPnP QoS architecture defines eight traffic classes corresponding roughly to the IEEE 802.1D priority levels (0-7). The mapping from TrafficClass to DSCP should follow the standardized DSCP per-hop behaviors defined in RFC 2474 and RFC 4594 for interoperability with DiffServ domains.
Yes. The service supports marking for both IPv4 and IPv6. For IPv4, the TOS byte (DSCP field) is modified. For IPv6, the Traffic Class byte is modified. The same marking rules apply regardless of the IP version.
The most recently applied SetMarkingRule action takes precedence. The service updates the marking table entry for the specified TrafficClass and generates a notification event. Control points can subscribe to these events to maintain a synchronized view of the marking configuration.
Yes. The QoS Marker service can operate independently of the QoS Classifier. A packet can be marked based on its existing classification (e.g., from a previously applied classifier) or the device can apply marking using its own internal classification logic. However, the standard recommends using the QoS Classifier for classification and the QoS Marker only for marking to maintain architectural separation.
For packets with VLAN tags (802.1Q), the marker updates the PCP (Priority Code Point) field in the VLAN header, which corresponds to the 802.1p priority value. For untagged packets, the marker inserts the priority information only in the IP header’s DSCP field.