namespace Monitor.Protocol; public static class ProtocolVersion { public const int Container = 1; public const int Wire = 1; } public static class ProtocolLimits { /// 持续任务每 10 秒切一块。 public const int ChunkSeconds = 10; /// 单块记录数上限。 public const int MaxRecordsPerChunk = 50_000; /// 解压后的块上限(防解压炸弹)。 public const int MaxDecodedChunkBytes = 64 << 20; public const int MaxStreamsPerChunk = 16; public const int MaxColumnsPerStream = 64; /// 每条线路持续任务的总带宽上限(bit/s)。 public const long MaxLineBudgetBitsPerSecond = 100_000; } /// 二进制通道号(0–15 属于 Fleet,Monitor 从 16 开始)。 public static class MonitorChannels { /// Agent → Backend:RawChunk(发件箱)。 public const byte RawChunk = 16; /// Probe → Agent:列块(点对点会话的发件箱)。 public const byte ColumnBlock = 17; } public static class MonitorCapabilities { public const string Base = "monitor.v1"; public const string KindsPrefix = "monitor.kinds:"; public const string BlocksPrefix = "monitor.blocks:"; }