Files
MoShiro/backend/shared/MoShiro.Protocol/ProtocolLimits.cs
T
justme ad5efc62ff agent: unify listening and dialing with directed mutual measurements
Replace Probe with Agent across node runtime, Fleet contracts, backend state, API and storage. Report incoming sessions and outgoing link health through each Agent uplink, and retain directed link controls and retry.

Update protocol fixtures and end-to-end coverage for the unified model; accept requested cancellation during the Fleet timeout test cleanup.
2026-10-21 11:55:36 +08:00

42 lines
1.2 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
namespace MoShiro.Protocol;
public static class ProtocolVersion
{
public const int Container = 1;
}
public static class ProtocolLimits
{
/// <summary>持续任务每 10 秒切一块。</summary>
public const int ChunkSeconds = 10;
/// <summary>单块记录数上限。</summary>
public const int MaxRecordsPerChunk = 50_000;
/// <summary>解压后的块上限(防解压炸弹)。</summary>
public const int MaxDecodedChunkBytes = 64 << 20;
public const int MaxStreamsPerChunk = 16;
public const int MaxColumnsPerStream = 64;
/// <summary>每条线路持续任务的总带宽上限(bit/s)。</summary>
public const long MaxLineBudgetBitsPerSecond = 100_000;
}
/// <summary>二进制通道号(0–15 属于 Fleet,MoShiro 从 16 开始)。</summary>
public static class MoShiroChannels
{
/// <summary>Agent → Backend:RawChunk(发件箱)。</summary>
public const byte RawChunk = 16;
/// <summary>拨号方 → Agent:列块(点对点会话的发件箱)。</summary>
public const byte ColumnBlock = 17;
}
public static class MoShiroCapabilities
{
public const string Base = "moshiro.v1";
public const string KindsPrefix = "moshiro.kinds:";
}