feat(client): implement DSCP negotiation and socket traffic class application
Apply the negotiated DSCP value to the UDP socket after a successful session open and clear it before closing to support network-level quality of service. This change adds platform-specific socket option handling for IPv4 TOS and IPv6 Traffic Class.
This commit is contained in:
1 parent
ab95489f20
commit
063214b83b
8 files changed
+419
-1
No files matched your search
@@ -392,6 +392,19 @@ fn backend_basic_open_echo_close() {
|
||||
client.close(ClientTimestamp::now()).unwrap();
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn backend_dscp_smoke() {
|
||||
let mut params = default_params();
|
||||
params.dscp = 46;
|
||||
let server = start_open_server(params.clone(), None);
|
||||
let mut client = Client::connect(config_for_params(server.addr, ¶ms)).unwrap();
|
||||
|
||||
let outcome = client.open(ClientTimestamp::now()).unwrap();
|
||||
assert!(matches!(outcome, irtt_client::OpenOutcome::Started { .. }));
|
||||
client.close(ClientTimestamp::now()).unwrap();
|
||||
server.join();
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn backend_received_stats_smoke() {
|
||||
for mode in [
|
||||
|
||||
Reference in new issue
Block a user