From 7e3d931c209ae248f7a3ceac592cb2ebafec9aab Mon Sep 17 00:00:00 2001 From: eson Date: Mon, 20 Jun 2022 16:30:45 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84=E5=AE=9E=E6=97=B6=E6=B5=81v1?= =?UTF-8?q?.0.0=E7=89=88=E6=9C=AC=E5=8D=8F=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ApmBaseDataFlow.proto | 174 +++++++++++++++++++++++++++++++++++++++++ AppFlow.proto | 35 +++++++++ BacktrackingFlow.proto | 32 ++++++++ Base.proto | 27 +++++++ BasicTrafficFlow.proto | 27 +++++++ BusinessBodyData.proto | 34 ++++++++ BussFlowDb.proto | 77 ++++++++++++++++++ BussFlowExternal.proto | 43 ++++++++++ BussFlowMidd.proto | 73 +++++++++++++++++ BussFlowOrl.proto | 42 ++++++++++ BussFlowWeb.proto | 82 +++++++++++++++++++ DataFlow.proto | 62 +++++++++++++++ QoeFlow.proto | 51 ++++++++++++ SstFlow.proto | 51 ++++++++++++ 14 files changed, 810 insertions(+) create mode 100644 ApmBaseDataFlow.proto create mode 100644 AppFlow.proto create mode 100644 BacktrackingFlow.proto create mode 100644 Base.proto create mode 100644 BasicTrafficFlow.proto create mode 100644 BusinessBodyData.proto create mode 100644 BussFlowDb.proto create mode 100644 BussFlowExternal.proto create mode 100644 BussFlowMidd.proto create mode 100644 BussFlowOrl.proto create mode 100644 BussFlowWeb.proto create mode 100644 DataFlow.proto create mode 100644 QoeFlow.proto create mode 100644 SstFlow.proto diff --git a/ApmBaseDataFlow.proto b/ApmBaseDataFlow.proto new file mode 100644 index 0000000..ec8322f --- /dev/null +++ b/ApmBaseDataFlow.proto @@ -0,0 +1,174 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + + +message ApmBaseDataFlow { + + int32 table_id = 1; + + int32 probe_if = 2; + //四元组 + /** + * 请求端口 + */ + int32 request_port = 3; + /** + * 响应端口 + */ + int32 response_port = 4; + /** + * 请求IP + */ + int32 request_ip = 5; + /** + * 响应ip + */ + int32 response_ip = 6; + + /** + * 源mac + */ + int64 src_mac = 7; + + /** + * 目的mac + */ + int64 dst_mac = 8; + + /** + * 链路编号 + */ + int32 vlan_id = 9; + + int32 tv_sec = 10; + + int32 tv_usec = 11; + + /** + * 开始时间 + */ + int32 start_tm = 12; + + /** + * 总字节数 + */ + int32 total_bytes = 13; + + /** + * 总包数 + */ + int32 total_packets = 14; + /** + * 总丢包数 + */ + int32 total_drop_packets = 15; + /** + * 重传延时 + */ + int32 retran_time_delay = 16; + /** + * 客户端rtt + */ + int32 client_rtt = 17; + + /** + * 服务端Rtt + */ + int32 server_rtt = 18; + + + /** + * 用户响应时间 + */ + int32 user_response_time = 19; + /** + * 服务响应时间 + */ + int32 server_response_time = 20; + + + /** + * tcp回话连接失败数 + */ + int32 con_fail = 21; + + /** + * 会话重置数 + */ + // long reset = 22; + + /** + * 服务端总字节数 + */ + int32 bytes_in = 23; + /** + * 客户端总字节数 + */ + int32 bytes_out = 24; + /** + * 探针推送时间 + */ + int32 time_flag = 25; + + /** + * 结束时间 + */ + int32 end_tm = 26; + + /** + * 结束时间微秒 + */ + int32 end_tm_usec = 27; + + /** + * 总响应数 + */ + int32 respon_num = 28; + /** + * 客户端零窗口数 + */ + int32 cs_window = 29; + /** + * 服务端零窗口数 + */ + int32 sc_window = 30; + /** + * 客户端重置数 + */ + int32 cs_reset = 31; + /** + * 服务端重置数 + */ + int32 sc_reset = 32; + /** + * 客户端重传数 + */ + int32 cs_retran = 33; + /** + * 服务端重传数 + */ + int32 sc_retran = 34; + /** + * 会话建立时间 + */ + int32 conn_setup_tm = 35; + /** + * 新建会话数 + */ + int32 new_session = 36; + + int32 cs_alert = 37; + + int32 sc_alert = 38; + + string protocal = 39; +} + + + diff --git a/AppFlow.proto b/AppFlow.proto new file mode 100644 index 0000000..fda72d6 --- /dev/null +++ b/AppFlow.proto @@ -0,0 +1,35 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message AppFlow { + int32 table_id = 1; + int32 src_ip = 2; + int32 src_port = 3; + int32 dst_ip = 4; + int32 dst_port = 5; + int32 start_tv_sec = 6; + int32 start_tv_usec = 7; + int32 last_tv_sec = 8; + int32 last_tv_usec = 9; + int32 end_tv_sec = 10; + int32 end_tv_usec = 11; + int32 input_packets = 12; + int32 output_packets = 13; + int32 input_bytes = 14; + int32 output_bytes = 15; + string protocaol = 16; + int32 app_id = 17; + int32 app_group_id = 18; + int32 probe_if = 19; + int32 app_style = 20; + int32 time_flag = 21; + int32 vlan_id = 22; + int32 mpls_lable = 23; + int32 tos = 24; +} \ No newline at end of file diff --git a/BacktrackingFlow.proto b/BacktrackingFlow.proto new file mode 100644 index 0000000..34d0b0c --- /dev/null +++ b/BacktrackingFlow.proto @@ -0,0 +1,32 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message BacktrackingFlow { + + int32 table_id = 1; + int64 mac_src = 2; //源MAC 8 + int64 mac_dst = 3; //目的MAC 8 + int64 ip_src = 4; //源IP 8 + int64 ip_dst = 5; //目的IP 8 + int32 port_src = 6; //源端口,如果没有,为-1 + int32 port_dst = 7; //目标端口,如果没有,为-1 + int32 l3_proto = 8; //第三层协议ID,如果没有,为-1 + int32 l4_proto = 9; //第四层协议ID,如果没有,为-1 + int32 tos = 10; //Tos,如果没有,为-1 + int32 vlan_id = 11; //vlan ID,如果没有,为-1 + + int64 bytes = 12; // 8 字节总数 + int64 packets = 13; // 8 数据包总数 + int64 tcp_sp = 14; // 8 tcp同步包数 + int64 tcp_scpn = 15;// 8 tcp同步确认包数 + int64 tcp_srp = 16; // 8 tcp同步重置包数 + int32 app_id = 17; // 4 appID + int32 app_group_id = 18;// 4 app组ID + int32 mpls_label = 19;// 4 +} \ No newline at end of file diff --git a/Base.proto b/Base.proto new file mode 100644 index 0000000..dbda986 --- /dev/null +++ b/Base.proto @@ -0,0 +1,27 @@ +syntax = "proto3"; + +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; + +message Response { + int32 code = 1; + string message = 2; + repeated google.protobuf.Any packets = 4; +} + +message Request { + int32 type = 1; // 请求类型. 默认 为 1. 暂无意义 + string version = 2; // 请求版本. 区分版本. 非必要时不使用 + repeated google.protobuf.Any param = 3; +} + +service CollectPacketsServer { + rpc GetPackets (Request) returns (stream Response); +} diff --git a/BasicTrafficFlow.proto b/BasicTrafficFlow.proto new file mode 100644 index 0000000..76ec193 --- /dev/null +++ b/BasicTrafficFlow.proto @@ -0,0 +1,27 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message BasicTrafficFlow { + int32 table_id = 1; + int32 cap_port = 2; + int32 request_port = 3; + int32 response_port = 4; + int32 request_ip = 5; + int32 response_ip = 6; + int32 start_time = 7; + int32 total_bytes = 8; + int32 total_packets = 9; + int32 spackets64 = 10; + int32 spackets128 = 11; + int32 spackets256 = 12; + int32 spackets512 = 13; + int32 spackets1024 = 14; + int32 spackets = 15; + int32 send_time = 16; +} \ No newline at end of file diff --git a/BusinessBodyData.proto b/BusinessBodyData.proto new file mode 100644 index 0000000..075bff4 --- /dev/null +++ b/BusinessBodyData.proto @@ -0,0 +1,34 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message BusinessBodyData { + int32 table_id = 1; + + string relvance_data_id = 2; + int64 request_ip = 3; + int32 request_port = 4; + int64 response_ip = 5; + int32 response_port = 6; + + int64 start_tv_sec = 7;//开始时间秒 + int64 start_tv_usec = 8;//开始时间毫秒 + int64 end_tv_sec = 9;//结束时间秒 + int64 end_tv_usec = 10;//结束时间微妙 + + string resource_code = 11; + string no_parameter_recognition = 12; + string original_recognition = 13; + string request_cookie = 14; + + string request_body_context = 15; + string response_body_context = 16; + + int32 filter_id = 17; + string business_detail_mesg = 18; +} \ No newline at end of file diff --git a/BussFlowDb.proto b/BussFlowDb.proto new file mode 100644 index 0000000..b090f36 --- /dev/null +++ b/BussFlowDb.proto @@ -0,0 +1,77 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + + +message BussFlowDb { + + int32 table_id = 1; + + // redis资源归并,处理服务资源发现是需要设置识别串(正则表达式) + string redisRegex = 2; + + string id = 3; //id + int64 msg_len = 4; //消息长度 + int32 msg_type = 5; //消息类型 + int64 src_mac = 6; + int64 dst_mac = 7; + int32 protocol = 8; //协议名 + string session_serial_number = 9;//会话序列号 + string buss_type = 10;//业务服务资源编码(C_01) + int64 request_ip = 11;//Web客户端IP + int32 request_port = 12;//Web客户端端口 + int64 response_ip = 13;//Web服务器IP + int32 response_port = 14;//Web服务器端口 + int64 start_tv_sec = 15;//Web开始时间秒 + int64 start_tv_usec = 16;//开始时间毫秒 + int64 end_tv_sec = 17;//结束时间秒 + int64 end_tv_usec = 18;//结束时间微妙 + string disc_resource_ident = 19; //web:url mid:apiBody db:sql + string name = 20; //web:操作系统 midd:interfaceName db:db_name + //web midd + string session_id = 21;//sessionid + int32 request_msg_length = 22; //请求报文长度 + string request_msg_detail = 23; //请求报文详情 + int32 response_msg_length = 24; //响应报文长度 + string response_msg_detail = 25; //响应报文详情 + //web段 + string reter_url = 26; + string x_requested_with = 27; + int64 req_method = 28; //请求方式 + string content_type = 29; //请求类型 + string accept = 30; //jieshou + int32 req_cookie_leng = 31;//请求cookie报文长度 + string req_cookie_detail = 32;//请求cookie报文详情 + int64 t_intodb_time = 33; + int32 load_or_step = 34; //0: 页面 1:加载项 2:非web段数据 + string business_detail_mesg = 35; + string bussiness_key_mesg = 36; //关键字 格式:key=val|key=val.... + int32 isUncomplete = 37; //组包是否完全 0:组包完整 1:不完整 + int32 deal_state = 38; // 默认值为1 + int32 server_res_code = 39; + int64 server_response_time = 40; + int64 client_translate_time = 41; + string browser = 42; + int64 server_start_tv_sec = 43; + int64 server_start_tv_usec = 44; + int64 server_end_tv_sec = 45; + int64 server_end_tv_usec = 46; + string probe_ip = 47; + int64 probe_if = 48; + int64 server_translate_time = 49; + int64 time_flag = 50; + string base_code = 51; + string ori_sql = 52; + string reserved = 53; + int64 bytes_in = 54; + int64 bytes_out = 55; + int32 package_in = 56; + int32 package_out = 57; + string data_id = 58; + int32 filter_id = 59; +} \ No newline at end of file diff --git a/BussFlowExternal.proto b/BussFlowExternal.proto new file mode 100644 index 0000000..d4135c3 --- /dev/null +++ b/BussFlowExternal.proto @@ -0,0 +1,43 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message BussFlowExternal { + int32 table_id = 1; + string id = 2; + int64 probe_if = 3;//接口号 + string channel = 4;//营业厅渠道:前台或者分析服务器给出,渠道标识 + string system_name = 5; //外部系统名称 + string interface_id = 6;// 业务接口编码 + string session_id = 7;//sessionid + string phone_id = 8;//受理手机号码 + string net_type = 9; + string net_segment = 10;//网段标识(客户-web) + int64 request_ip = 11;//Web客户端IP + int64 request_port = 12;//Web客户端端口 + int64 response_ip = 13;//Web服务器IP + int64 response_port = 14;//Web服务器端口 + + int64 start_tv_sec = 15;//Web开始时间秒 + int64 start_tv_usec = 16;//开始时间微秒 + int64 end_tv_sec = 17;//结束时间秒 + int64 end_tv_usec = 18;//结束时间微妙 + + int32 deal_state = 19;//Web操作成功/失败标识1成功0失败 + int64 server_translate_time = 20;//Web服务器传输耗时 + int64 server_response_time = 21;//Web服务器响应时间 + string begin_url = 22;//url + string operating_sytem = 23;//操作系统 + int32 server_res_code = 24; //Web系统返回码 + string browser = 25;//浏览器 + string business_detail_mesg = 26;//要获取的指标 + int64 insert_time = 27;//插入时间? 没有被使用 + string business_involve_msg = 28; //要关联的指标 + int32 is_uncomplete = 29; + int64 time_flag = 30; +} \ No newline at end of file diff --git a/BussFlowMidd.proto b/BussFlowMidd.proto new file mode 100644 index 0000000..a7b3bd6 --- /dev/null +++ b/BussFlowMidd.proto @@ -0,0 +1,73 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message BussFlowMidd { + int32 table_id = 1; + string id = 2; //id + int64 src_mac = 3; + int64 dst_mac = 4; + int32 msg_len = 5; //消息长度 + int32 msg_type = 6; //消息类型 + int32 protocol = 7; //协议名 + string session_serial_number = 8;//会话序列号 + string buss_type = 9;//业务服务资源编码(C_01) + string net_segment = 10;//网段标识(客户-web) + int64 request_ip = 11;//Web客户端IP + int32 request_port = 12;//Web客户端端口 + int64 response_ip = 13;//Web服务器IP + int32 response_port = 14;//Web服务器端口 + int64 start_tv_sec = 15;//Web开始时间秒 + int64 start_tv_usec = 16;//开始时间毫秒 + int64 end_tv_sec = 17;//结束时间秒 + int64 end_tv_usec = 18;//结束时间微妙 + string disc_resource_ident = 19; //web:url mid:apiBody db:sql + string name = 20; //web:操作系统 midd:interfaceName db:db_name + //web midd + string session_id = 21;//sessionid + int32 request_msg_length = 22; //请求报文长度 + string request_msg_detail = 23; //请求报文详情 + int32 response_msg_length = 24; //响应报文长度 + string response_msg_detail = 25; //响应报文详情 + //web段 + string reter_url = 26; + string x_requested_with = 27; + int64 req_method = 28; //请求方式 + string content_type = 29; //请求类型 + string accept = 30; //jieshou + int32 req_cookie_leng = 31;//请求cookie报文长度 + string req_cookie_detail = 32;//请求cookie报文详情 + int64 t_intodb_time = 33; + int32 load_or_step = 34; //0: 页面 1:加载项 2:非web段数据 + string business_detail_mesg = 35; + string bussiness_key_mesg = 36; //关键字 格式:key=val|key=val.... + int32 is_uncomplete = 37; //组包是否完全 0:组包完整 1:不完整 + int32 deal_state = 38; // 默认值1 + int32 server_res_code = 39; + int64 server_response_time = 40; + int64 client_translate_time = 41; + string browser = 42; + int32 server_start_tv_sec = 43; + int64 server_start_tv_usec = 44; + int32 server_end_tv_sec = 45; + int64 server_end_tv_usec = 46; + string probe_ip = 47; + int32 probe_if = 48; + int64 server_translate_time = 49; + int64 time_flag = 50; + string channel = 51; + string base_code = 52; + string ori_api = 53; + string remain_data = 54; + int64 bytes_in = 55; + int64 bytes_out = 56; + int32 package_in = 57; + int32 package_out = 58; + string data_id = 59; + int32 filter_id = 60; +} \ No newline at end of file diff --git a/BussFlowOrl.proto b/BussFlowOrl.proto new file mode 100644 index 0000000..8135a91 --- /dev/null +++ b/BussFlowOrl.proto @@ -0,0 +1,42 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message BussFlowOrl { + int32 table_id = 1; + int32 msg_type = 2; + int32 msg_version = 3; + int32 msg_seq = 4; + int32 msg_len = 5; + int64 request_mac = 6; + int64 response_mac = 7; + int64 request_ip = 8; + int32 request_port = 9; + int64 response_ip = 10; + int32 response_port = 11; + int32 probe_if = 12; + int32 protocol = 13; + int64 start_tv_sec = 14;//Web开始时间秒 + int64 start_tv_usec = 15;//开始时间毫秒 + int64 end_tv_sec = 16;//结束时间秒 + int64 end_tv_usec = 17;//结束时间微妙 + int32 req_len = 18; + int32 res_len = 19; + int32 busi_msg_len = 20; + int32 key_msg_len = 21; + int32 detail_msg_len = 22; + int32 remain_len = 23; + string business_code = 24; + string session_id = 25; + string req_data = 26; + string res_data = 27; + string busi_msg = 28; + string busi_key_msg = 29; + string busi_detail_msg = 30; + string remain_data = 31; +} \ No newline at end of file diff --git a/BussFlowWeb.proto b/BussFlowWeb.proto new file mode 100644 index 0000000..dae1bc1 --- /dev/null +++ b/BussFlowWeb.proto @@ -0,0 +1,82 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message BussFlowWeb { + int32 table_id = 1; + string id = 2; //id + int32 msg_len = 3; //消息长度 + int32 msg_type = 4; //消息类型 + int64 src_mac = 5; + int64 dst_mac = 6; + int32 protocol = 7; //协议名 + string session_serial_number = 8;//会话序列号 + string buss_type = 9;//业务服务资源编码(C_01) +// string net_segment = 10;//网段标识(客户-web) + int64 request_ip = 11;//Web客户端IP + int32 request_port = 12;//Web客户端端口 + int64 response_ip = 13;//Web服务器IP + int32 response_port = 14;//Web服务器端口 + int64 start_tv_sec = 15;//Web开始时间秒 + int64 start_tv_usec = 16;//开始时间毫秒 + int64 end_tv_sec = 17;//结束时间秒 + int64 end_tv_usec = 18;//结束时间微妙 + string disc_resource_ident = 19; //web:url mid:apiBody db:sql + string operating_system = 20; //web:操作系统 midd:interfaceName db:db_name + //web midd + string session_id = 21;//sessionid + int32 request_msg_length = 22; //请求报文长度 + string request_msg_detail = 23; //请求报文详情 + int32 response_msg_length = 24; //响应报文长度 + string response_msg_detail = 25; //响应报文详情 + //web段 + string reter_url = 26; + string x_requested_with = 27; + int64 req_method = 28; //请求方式 + string content_type = 29; //请求类型 + string accept = 30; //jieshou + int32 req_cookie_leng = 31;//请求cookie报文长度 + string req_cookie_detail = 32;//请求cookie报文详情 + int64 t_intodb_time = 33; + int32 load_or_step = 34; //0: 页面 1:加载项 2:非web段数据 + string business_detail_mesg = 35; + string bussiness_key_mesg = 36; //关键字 格式:key=val|key=val.... + int32 is_uncomplete = 37; //组包是否完全 0:组包完整 1:不完整 + int32 deal_state = 38; // 默认为1 + int32 server_res_code = 39; + int64 server_response_time = 40; + int64 client_translate_time = 41; + string browser = 42; + int32 server_start_tv_sec = 43; + int64 server_start_tv_usec = 44; + int32 server_end_tv_sec = 45; + int64 server_end_tv_usec = 46; + string probe_ip = 47; + int32 probe_if = 48; + int64 server_translate_time = 49; + int64 time_flag = 50; + string channel = 51; + string base_code = 52; + string ori_url = 53; + string remain_data = 54; + int64 bytes_in = 55; + int64 bytes_out = 56; + int32 package_in = 57; + int32 package_out = 58; + + string data_id = 59; + + int32 filter_id = 60; + + string white_character = 61; + + // tokenId + string token_id = 62; + // 判断是否是首端资源( 2 ) + int32 segment_id = 63; +} \ No newline at end of file diff --git a/DataFlow.proto b/DataFlow.proto new file mode 100644 index 0000000..ce8677b --- /dev/null +++ b/DataFlow.proto @@ -0,0 +1,62 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + + +message DataFlow { + int32 table_id = 1; + + string id = 2; + + int32 msg_type = 3; //消息类型 + int32 msg_version = 4; //消息版本 + int32 msg_seq = 5; //序列号 + int32 msg_len = 6; //消息长度 + int32 probe_if = 7; //接口号 + int64 timestamp = 8; //时间戳 + int64 mac_src = 9; //源物理地址 + int64 mac_dst = 10; //目的物理地址 + int32 vlan_id = 11; //vlan_id + int64 l3_proto = 12; //l3层协议 + int64 l4_proto = 13; //l4层协议 + int32 tos = 14; //tos + int32 retran_count = 15; //重传次数 + int32 reset_count = 16; //重置次数 + int32 zerowin_count = 17; //零窗口次数 + int32 protocol = 18; //协议名 + int64 seq = 19; + int64 ack = 20; + int32 recog_status = 21; //识别类型标识 + int64 bytes = 22; //总字节 + int64 packets = 23; //总包数 + int32 start_tv_sec = 24;//Web开始时间秒 + int64 start_tv_usec = 25;//开始时间毫秒 + int32 end_tv_sec = 26;//结束时间秒 + int64 end_tv_usec = 27;//结束时间微妙 + int32 server_start_tv_sec = 28;//服务器响应开始时间秒 + int64 server_start_tv_usec = 29;//服务器响应开始时间毫秒 + int32 server_end_tv_sec = 30;//服务器响应结束时间秒 + int64 server_end_tv_usec = 31;//服务器响应结束时间微妙 + + int64 server_response_time = 32;//Web服务器响应时间 + int64 client_translate_time = 33;//Web客户端传输耗时 + int64 server_translate_time = 34;//Web服务器传输耗时 + + int64 bytes_in = 35; + int64 bytes_out = 36; + int64 packets_in = 37; + int64 packets_out = 38; + int64 ip_src = 39; //源IP + int64 ip_dst = 40; //目的IP + int64 port_src = 41; //源端口 + int64 port_dst = 42; //目的端口 + int64 probeIP = 43; //探针IP + + int64 intodb_time = 44; + int64 count = 45; // 默认为1 +} \ No newline at end of file diff --git a/QoeFlow.proto b/QoeFlow.proto new file mode 100644 index 0000000..eb82a59 --- /dev/null +++ b/QoeFlow.proto @@ -0,0 +1,51 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message QoeFlow { + int32 table_id = 1; + // 字段类型 字段 原始类型 字节数 说明 + int32 src_ip = 2; //uint32_t 4 源ip地址 + int32 dst_ip = 3; //uint32_t 4 目的ip地址 + int32 stv_sec = 4; //uint32_t 4 开始时间秒 + int32 stv_usec = 5; //uint32_t 4 开始时间微秒 + int32 ltv_sec = 6; //uint32_t 4 最后更新时间秒 + int32 ltv_usec = 7; //uint32_t 4 最后更新时间微秒 + int32 dst2_respon_num = 8; //uint32_t 4 响应总量 + int32 dst2_fast = 9; //uint32_t 4 + int32 dst2_fast_expected = 10; //uint32_t 4 + int32 dst2_expected_degrated = 11; //uint32_t 4 + int32 dst2_degrated_service = 12; //uint32_t 4 + int32 dst2_service_availability = 13; //uint32_t 4 + int32 dst2_respon_timeout = 14; //uint32_t 4 响应超时数 + int32 dst2_respon_success = 15; //uint32_t 4 响应成功数 + int32 dst2_respon_fail = 16; //uint32_t 4 响应失败数 + int32 dst2_respon_peek = 17; //uint32_t 4 峰值响应时间 + int32 dst2_respon_average = 18; //uint32_t 4 响应时间均值 + int32 cs_window = 19; //uint32_t 4 + int32 sc_window = 20; //uint32_t 4 + int32 cs_reset = 21; //uint32_t 4 + int32 sc_reset = 22; //uint32_t 4 + int32 cs_retran = 23; //uint32_t 4 + int32 sc_retran = 24; //uint32_t 4 + int32 app_id = 25; //uint32_t 4 Aphid + int32 app_group_id = 26; //uint32_t 4 app组id + int32 probe_if = 27; //uint32_t 4 探针接口id + int32 app_style = 28; //uint32_t 4 + int32 time_flag = 29; //uint32_t 4 发送时间戳 + int32 conn_setup_tm = 30; //uint32_t 4 链接建立时间 + int32 data_transfer_tm = 31; //uint32_t 4 数据传输时间 + int32 retrans_delay_tm = 32; //uint32_t 4 数据重传时延 + int32 network_inbound = 33; //uint32_t 4 网络响应时间(c->s) + int32 network_outbound = 34; //uint32_t 4 网络响应时间(s->c) + int32 new_session = 35; //uint32_t 4 新会话数 + int32 user_events = 36; //uint32_t 4 用户事件 + int32 server_events = 37; //uint32_t 4 服务事件 + int32 conn_setup_peek = 38; //uint32_t 4 连接建立时间峰值 + int32 vlan_id = 39; //uint32_t 4 +} \ No newline at end of file diff --git a/SstFlow.proto b/SstFlow.proto new file mode 100644 index 0000000..0b9410f --- /dev/null +++ b/SstFlow.proto @@ -0,0 +1,51 @@ +syntax = "proto3"; + +option java_multiple_files = false; +option java_package = "com.yuandian.dataflow.proto.msgtype"; +option go_package = "../grpc-gen;grpcgen"; + + +package dataflow; + +message SstFlow { + int32 table_id = 1; + + int64 mac_src = 2; //源MAC + int64 mac_dst = 3; //目标MAC + int64 ip_src = 4; //源IP + int64 ip_dst = 5; //目标IP + int32 port_src = 6; //源端口,如果没有,为-1 + int32 port_dst = 7; //目标端口,如果没有,为-1 + int32 l3_proto = 8; //第三层协议ID,如果没有,为-1 + int32 l4_proto = 9; //第四层协议ID,如果没有,为-1 + int32 tos = 10; //Tos,一个字节,如果没有,为-1 + int32 vlan_id = 11; //vlan ID,如果没有,为-1 + + int64 bytes = 12; //字节总数 + int64 packets = 13; //数据包总数 + + int64 packets_syn = 14; //TCP同步包数 + int64 packets_syn_ack = 15; //TCP同步确认包数 + int64 packets_syn_rst = 16; //TCP同步重置包数 + + int64 timestamp = 17; //时间戳,秒 + + int64 appid = 18;//应用ID + int64 app_group_id = 19; + int32 mpls_label = 20; + + int64 pkts_syn_rx = 21; //tcp同步包,接收 + int64 pkts_syn_ack_rx = 22;//tcp同步确认包,接收 + int64 pkts_syn_rst_rx = 23; //tcp同步重置包,接收 + int64 pkts_fin = 24;//tcp终止包,接收 + int64 pkts_rst = 25;//tcp重置包,接收 + + int64 bytes_rx = 26;//字节收 + int64 packets_rx = 27;//数据包收 + + int64 probe_time_sec = 28; + int64 probe_time = 29; + int64 create_time = 30; + + int32 probe_if = 31; +} \ No newline at end of file