|
ProtoCore v0.0.1
Deterministic, zero-heap network stack for embedded targets
|
Layer 4 (Transport) - DiffServ QoS marking (RFC 2474) for outbound traffic. More...
#include "protocore_config.h"Go to the source code of this file.
Layer 4 (Transport) - DiffServ QoS marking (RFC 2474) for outbound traffic.
Stamps the 6-bit DSCP into the DS field (the high 6 bits of the IPv4 TOS / IPv6 Traffic-Class byte) of outbound TCP connections and UDP datagrams so a QoS-aware network - and the Wi-Fi driver's 802.11e WMM access-category mapping - can prioritize real-time / safety packets over best-effort. The marking is applied on tcpip_thread where the pcb is created (accept / connect / udp create), so nothing is added to the send hot path. This module owns the two server-wide DSCP defaults; the per-listener and per-connection overrides live with their pcb (listener.cpp / tcp.cpp) but read the defaults through here.
Three levels of control, coarse to fine:
Definition in file diffserv.h.