diff --git a/.vscode/setting.json b/.vscode/setting.json new file mode 100644 index 0000000..f968b10 --- /dev/null +++ b/.vscode/setting.json @@ -0,0 +1,5 @@ +{ + "protoc": { + "options": ["-I proto"] + } +} \ No newline at end of file diff --git a/ApmBaseDataFlow.proto b/ApmBaseDataFlow.proto index 18f04e4..661d33f 100644 --- a/ApmBaseDataFlow.proto +++ b/ApmBaseDataFlow.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "Base.proto" ; + option java_multiple_files = false; option java_package = "com.yuandian.dataflow.proto.msgtype"; option go_package = "../grpc-gen;grpcgen"; @@ -14,8 +16,8 @@ message ApmBaseDataFlow { uint32 probe_if = 2; uint32 tuple_source = 3; uint32 tuple_dest = 4; - uint32 tuple_saddr = 5; - uint32 tuple_daddr = 6; + IPAddress tuple_saddr = 5; + IPAddress tuple_daddr = 6; string src_mac = 7; string dst_mac = 8; uint32 vlan_id = 9; diff --git a/AppFlow.proto b/AppFlow.proto index 1c8fb99..e4bbfb1 100644 --- a/AppFlow.proto +++ b/AppFlow.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "Base.proto" ; + option java_multiple_files = false; option java_package = "com.yuandian.dataflow.proto.msgtype"; option go_package = "../grpc-gen;grpcgen"; @@ -9,10 +11,10 @@ package dataflow; message AppFlow { int32 table_id = 1; //编号17 - uint32 src_ip = 2 + IPAddress src_ip = 2; uint32 src_port = 3; - uint32 dst_ip = 4; - uint32 dst_port = 5 + IPAddress dst_ip = 4; + uint32 dst_port = 5; uint32 s_tv_sec = 6; uint32 s_tv_usec = 7; uint32 l_tv_sec = 8; @@ -26,10 +28,10 @@ message AppFlow { string protocol = 16; uint32 app_id = 17; uint32 app_group_id = 18; - uint32 probe_id = 19; + uint32 probe_if = 19; uint32 app_style = 20; uint32 time_flag = 21; int32 vlan_id = 22; int32 mpls_label = 23; int32 tos = 24; -} \ No newline at end of file +} diff --git a/BacktrackingFlow.proto b/BacktrackingFlow.proto index 25be7f1..872341d 100644 --- a/BacktrackingFlow.proto +++ b/BacktrackingFlow.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "Base.proto" ; + option java_multiple_files = false; option java_package = "com.yuandian.dataflow.proto.msgtype"; option go_package = "../grpc-gen;grpcgen"; @@ -10,22 +12,22 @@ package dataflow; message BacktrackingFlow { int32 table_id = 1; //编号20 -int64 mac_src = 2; -int64 mac_dst = 3; -int64 ip_src = 4; -int64 ip_dst = 5; -int32 port_src = 6; -int32 port_dst = 7; -int32 l3_proto = 8; -int32 l4_proto = 9; -int32 tos = 10; -int32 vlan_id = 11; -uint64 bytes = 12; -uint64 packets = 13; -uint64 tcp_sp = 14; -uint64 tcp_scpn = 15; -uint64 tcp_srp = 16; -uint32 app_id = 17; -uint32 app_group_id = 18; -int32 mpls_label = 19; -} \ No newline at end of file + int64 mac_src = 2; + int64 mac_dst = 3; + IPAddress ip_src = 4; + IPAddress ip_dst = 5; + int32 port_src = 6; + int32 port_dst = 7; + int32 l3_proto = 8; + int32 l4_proto = 9; + int32 tos = 10; + int32 vlan_id = 11; + uint64 bytes = 12; + uint64 packets = 13; + uint64 tcp_sp = 14; + uint64 tcp_scpn = 15; + uint64 tcp_srp = 16; + uint32 app_id = 17; + uint32 app_group_id = 18; + int32 mpls_label = 19; +} diff --git a/Base.proto b/Base.proto index 4b00fb3..0b6adbc 100644 --- a/Base.proto +++ b/Base.proto @@ -5,7 +5,6 @@ import "google/protobuf/any.proto"; option java_multiple_files = false; //不要拆分成多个文件 option java_package = "com.yuandian.dataflow.proto"; - option go_package = "../grpc-gen;grpcgen"; package dataflow; @@ -22,6 +21,13 @@ message Request { repeated google.protobuf.Any param = 3; // 请求的可变参数. 暂不使用 } +message IPAddress { + oneof IP { + bytes v4 = 1; + bytes v6 = 2; + } +} + service CollectPacketsServer { rpc GetPackets (Request) returns (stream Response); } diff --git a/BussFlowDb.proto b/BussFlowDb.proto index 3c15c9c..9509be6 100644 --- a/BussFlowDb.proto +++ b/BussFlowDb.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "Base.proto" ; + option java_multiple_files = false; option java_package = "com.yuandian.dataflow.proto.msgtype"; option go_package = "../grpc-gen;grpcgen"; @@ -10,7 +12,7 @@ package dataflow; message BussFlowDb { - int32 table_id = 1; //编号24 +int32 table_id = 1; //编号24 uint32 msg_type = 2; string msg_version = 3; uint32 msg_seq = 4; @@ -32,9 +34,9 @@ uint32 recog_status = 19; uint32 probe_if = 20; string channel = 21; string dbname = 22; -uint32 request_ip = 23; +IPAddress request_ip = 23; uint32 request_port = 24; -uint32 response_ip = 25; +IPAddress response_ip = 25; uint32 response_port = 26; int64 status = 27; int64 server_translate_time = 28; @@ -61,4 +63,4 @@ string req_data = 48; string res_data = 49; string reserved = 50; -} \ No newline at end of file +} diff --git a/BussFlowExternal.proto b/BussFlowExternal.proto index 838f648..557b732 100644 --- a/BussFlowExternal.proto +++ b/BussFlowExternal.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "Base.proto" ; + option java_multiple_files = false; option java_package = "com.yuandian.dataflow.proto.msgtype"; option go_package = "../grpc-gen;grpcgen"; @@ -15,9 +17,9 @@ message BussFlowExternal { uint32 msg_len = 5; uint64 src_mac = 6; uint64 dst_mac = 7; - uint32 request_ip = 8; + IPAddress request_ip = 8; uint32 request_port = 9; - uint32 response_ip = 10; + IPAddress response_ip = 10; uint32 response_port = 11; uint32 probeif = 12; uint32 protocol = 13; diff --git a/BussFlowMidd.proto b/BussFlowMidd.proto index d029a07..a6d7e8a 100644 --- a/BussFlowMidd.proto +++ b/BussFlowMidd.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "Base.proto" ; + option java_multiple_files = false; option java_package = "com.yuandian.dataflow.proto.msgtype"; option go_package = "../grpc-gen;grpcgen"; @@ -29,9 +31,9 @@ message BussFlowMidd { uint32 recog_status = 19; uint32 probe_if = 20; //探针编号 string channel = 21; //通道 - uint32 request_ip = 22; //请求地址 + IPAddress request_ip = 22; //请求地址 uint32 request_port = 23; //请求端口 - uint32 response_ip = 24; //响应地址 + IPAddress response_ip = 24; //响应地址 uint32 response_port = 25; //响应端口 uint32 start_time_tv_sec = 26; //开始时间(秒) uint32 start_time_tv_usec = 27; //开始时间(毫秒) diff --git a/BussFlowWeb.proto b/BussFlowWeb.proto index 7e4ae05..8a51d89 100644 --- a/BussFlowWeb.proto +++ b/BussFlowWeb.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "Base.proto"; + option java_multiple_files = false; option java_package = "com.yuandian.dataflow.proto.msgtype"; option go_package = "../grpc-gen;grpcgen"; @@ -33,9 +35,9 @@ message BussFlowWeb { uint32 probe_if = 23; //探针编号 string channel = 24; //业务类型 string sessionid = 25; //会话id - uint32 request_ip = 26; //请求ip地址 + IPAddress request_ip = 26; //请求ip地址 uint32 request_port = 27; //请求端口 - uint32 response_ip = 28; //响应ip地址 + IPAddress response_ip = 28; //响应ip地址 uint32 response_port = 29; //响应端口 uint32 start_time_tv_sec = 30; //开始时间(秒) uint32 start_time_tv_usec = 31; //开始时间(毫秒) diff --git a/QoeFlow.proto b/QoeFlow.proto index 3274363..99c8782 100644 --- a/QoeFlow.proto +++ b/QoeFlow.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "Base.proto"; + option java_multiple_files = false; option java_package = "com.yuandian.dataflow.proto.msgtype"; option go_package = "../grpc-gen;grpcgen"; @@ -9,8 +11,8 @@ package dataflow; message QoeFlow { int32 table_id = 1; //编号18 - uint32 src_ip = 2; - uint32 dst_ip = 3; + IPAddress src_ip = 2; + IPAddress dst_ip = 3; uint32 s_tv_sec = 4; uint32 s_tv_usec = 5; uint32 l_tv_sec = 6; diff --git a/UsrFlow.proto b/UsrFlow.proto index 49995d2..6d739ce 100644 --- a/UsrFlow.proto +++ b/UsrFlow.proto @@ -1,5 +1,7 @@ syntax = "proto3"; +import "Base.proto"; + option java_multiple_files = false; option java_package = "com.yuandian.dataflow.proto.msgtype"; option go_package = "../grpc-gen;grpcgen"; @@ -11,8 +13,8 @@ message UsrFlow { int32 table_id = 1; //编号19 uint32 probe_if = 2; - uint32 server_ip = 3; - uint32 client_ip = 4; + IPAddress server_ip = 3; + IPAddress client_ip = 4; uint32 client_port = 5; uint32 client_rtt = 6; uint32 server_rtt = 7;