syntax = "proto3"; package xray.transport.internet.kcp; option csharp_namespace = "Xray.Transport.Internet.Kcp"; option go_package = "github.com/xtls/xray-core/transport/internet/kcp"; option java_package = "com.xray.transport.internet.kcp"; option java_multiple_files = true; import "common/serial/typed_message.proto"; // Maximum Transmission Unit, in bytes. message MTU { uint32 value = 1; } // Transmission Time Interview, in milli-sec. message TTI { uint32 value = 1; } // Uplink capacity, in MB. message UplinkCapacity { uint32 value = 1; } // Downlink capacity, in MB. message DownlinkCapacity { uint32 value = 1; } message WriteBuffer { // Buffer size in bytes. uint32 size = 1; } message ReadBuffer { // Buffer size in bytes. uint32 size = 1; } message ConnectionReuse { bool enable = 1; } // Pre-shared secret between client and server. It is used for traffic obfuscation. // Note that if seed is absent in the config, the traffic will still be obfuscated, // but by a predefined algorithm. message EncryptionSeed { string seed = 1; } message Config { MTU mtu = 1; TTI tti = 2; UplinkCapacity uplink_capacity = 3; DownlinkCapacity downlink_capacity = 4; bool congestion = 5; WriteBuffer write_buffer = 6; ReadBuffer read_buffer = 7; xray.common.serial.TypedMessage header_config = 8; reserved 9; EncryptionSeed seed = 10; }