syntax = "proto3"; option go_package = "pingtunnel"; message MyMsg { enum TYPE { DATA = 0; PING = 1; KICK = 2; MAGIC = 0xdead; } string id = 1; int32 type = 2; string target = 3; bytes data = 4; sint32 rproto = 5; sint32 magic = 6; sint32 key = 7; int32 timeout = 8; int32 tcpmode = 9; int32 tcpmode_buffersize = 10; int32 tcpmode_maxwin = 11; int32 tcpmode_resend_timems = 12; int32 tcpmode_compress = 13; int32 tcpmode_stat = 14; } message FrameData { enum TYPE { USER_DATA = 0; CONN = 1; CONNRSP = 2; CLOSE = 3; } int32 type = 1; bytes data = 2; bool compress = 3; } message Frame { enum TYPE { DATA = 0; REQ = 1; ACK = 2; PING = 3; PONG = 4; } int32 type = 1; bool resend = 2; int64 sendtime = 3; int32 id = 4; FrameData data = 5; repeated int32 dataid = 6; }