#[arg(short = 'a', long, default_value = "h3")] /// ALPN labels to negotiate. /// /// This client still only does HTTP/3 no matter what the ALPN says. pub alpn: String,
#[arg(name = "qlog-dir", long, value_parser=clap::value_parser!(PathBuf))] /// Enable QLOG logging and QLOG traces to this directory pub qlog_dir: Option<PathBuf>,
#[derive(Debug, Parser)] pubstruct QuicParameters { #[arg(
short = 'Q',
long,
num_args = 1..,
value_delimiter = ' ',
number_of_values = 1,
value_parser = from_str)] /// A list of versions to support, in hex. /// The first is the version to attempt. /// Adding multiple values adds versions in order of preference. /// If the first listed version appears in the list twice, the position /// of the second entry determines the preference order of that version. pub quic_version: Vec<Version>,
#[arg(long, default_value = "16")] /// Set the `MAX_STREAMS_BIDI` limit. pub max_streams_bidi: u64,
#[arg(long, default_value = "16")] /// Set the `MAX_STREAMS_UNI` limit. pub max_streams_uni: u64,
#[arg(long = "idle", default_value = "30")] /// The idle timeout for connections, in seconds. pub idle_timeout: u64,
#[arg(long = "cc", default_value = "newreno")] /// The congestion controller to use. pub congestion_control: CongestionControlAlgorithm,
fn from_str(s: &str) -> Result<Version, Error> { let v = u32::from_str_radix(s, 16)
.map_err(|_| Error::Argument("versions need to be specified in hex"))?;
Version::try_from(v).map_err(|_| Error::Argument("unknown version"))
}
let client = client::client(client_args); let server = Box::pin(server::server(server_args));
tokio::select! {
_ = client => {}
res = server => panic!("expect server not to terminate: {res:?}"),
};
// Verify that the directory contains two non-empty files let entries: Vec<_> = fs::read_dir(temp_dir.path())
.unwrap()
.filter_map(Result::ok)
.collect();
assert_eq!(entries.len(), 2, "expect 2 files in the directory");
for entry in entries { let metadata = entry.metadata().unwrap();
assert!(metadata.is_file(), "expect a file, found something else");
assert!(metadata.len() > 0, "expect file not be empty");
}
}
}
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.14Bemerkung:
(vorverarbeitet am 2026-06-18)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.