From ff4feb5faa3e6dddfb42068fcf4b2e824c557a7e Mon Sep 17 00:00:00 2001 From: Nikaidou Haruki Date: Sat, 6 Sep 2025 18:24:55 +0900 Subject: [PATCH] implement random workload generator --- ubw-sward/src/udp/generator.rs | 21 +++++++++++++++++++++ ubw-sward/src/udp/mod.rs | 3 ++- 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 ubw-sward/src/udp/generator.rs diff --git a/ubw-sward/src/udp/generator.rs b/ubw-sward/src/udp/generator.rs new file mode 100644 index 0000000..7201574 --- /dev/null +++ b/ubw-sward/src/udp/generator.rs @@ -0,0 +1,21 @@ +use rand::RngCore; + +pub struct RandomUdpWorkloadGenerator { + rng: Rng, +} + +impl RandomUdpWorkloadGenerator { + pub fn new(rng: Rng) -> Self { + Self { rng } + } + pub fn generate_sized(&mut self) -> [u8; SIZE] { + let mut buf = [0u8; SIZE]; + self.rng.fill_bytes(&mut buf); + buf + } + pub fn generate_boxed(&mut self, size: usize) -> Box<[u8]> { + let mut buf = vec![0u8; size].into_boxed_slice(); + self.rng.fill_bytes(&mut buf); + buf + } +} \ No newline at end of file diff --git a/ubw-sward/src/udp/mod.rs b/ubw-sward/src/udp/mod.rs index 8888b3d..5fc6ce0 100644 --- a/ubw-sward/src/udp/mod.rs +++ b/ubw-sward/src/udp/mod.rs @@ -1 +1,2 @@ -pub mod random_flood; \ No newline at end of file +pub mod random_flood; +pub mod generator; \ No newline at end of file