syntax = "proto3"; package v2ray.core.transport.internet; option csharp_namespace = "V2Ray.Core.Transport.Internet"; option go_package = "internet"; option java_package = "com.v2ray.core.transport.internet"; option java_multiple_files = true; import "v2ray.com/core/common/serial/typed_message.proto"; enum TransportProtocol { TCP = 0; UDP = 1; MKCP = 2; WebSocket = 3; } message TransportConfig { // Type of network that this settings supports. TransportProtocol protocol = 1; // Specific settings. Must be of the transports. v2ray.core.common.serial.TypedMessage settings = 2; } message StreamConfig { // Effective network. TransportProtocol protocol = 1; repeated TransportConfig transport_settings = 2; // Type of security. Must be a message name of the settings proto. string security_type = 3; // Settings for transport security. For now the only choice is TLS. repeated v2ray.core.common.serial.TypedMessage security_settings = 4; } message ProxyConfig { string tag = 1; }