quantrs2_device/distributed/
network.rs1use serde::{Deserialize, Serialize};
4use std::collections::HashMap;
5use std::net::SocketAddr;
6use std::time::Duration;
7
8use super::types::*;
9
10#[derive(Debug, Clone, Serialize, Deserialize, Default)]
12pub struct NetworkPerformanceMetrics {
13 pub latency: Duration,
14 pub bandwidth: f64,
15 pub packet_loss: f64,
16 pub jitter: Duration,
17}
18
19#[derive(Debug, Clone, Serialize, Deserialize, Default)]
21pub struct DistributedResourceUtilization {
22 pub cpu_usage: f64,
23 pub memory_usage: f64,
24 pub network_usage: f64,
25 pub quantum_resource_usage: f64,
26}
27
28#[derive(Debug, Clone, Serialize, Deserialize, Default)]
30pub struct FaultToleranceMetrics {
31 pub failure_detection_time: Duration,
32 pub recovery_time: Duration,
33 pub availability: f64,
34 pub reliability: f64,
35}
36
37#[derive(Debug, Clone, Serialize, Deserialize, Default)]
39pub struct DistributedCostAnalysis {
40 pub computational_cost: f64,
41 pub network_cost: f64,
42 pub storage_cost: f64,
43 pub total_cost: f64,
44}
45
46#[derive(Debug, Clone, Serialize, Deserialize, Default)]
48pub struct SecurityAuditTrail {
49 pub authentication_events: Vec<String>,
50 pub authorization_events: Vec<String>,
51 pub security_violations: Vec<String>,
52 pub encryption_events: Vec<String>,
53}