From 4e1e7b42e605dfca8c265232aba413e0d5085f86 Mon Sep 17 00:00:00 2001 From: eson Date: Mon, 13 Jun 2022 15:38:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E6=AD=A5=E5=AE=8C=E6=88=90=E6=89=80?= =?UTF-8?q?=E6=9C=89=E5=8D=8F=E8=AE=AE=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/proto/BussFlowWeb.proto | 81 ++++++++++++++++++++++++++++++++ src/main/proto/DataFlow.proto | 61 ++++++++++++++++++++++++ src/main/proto/QoeFlow.proto | 50 ++++++++++++++++++++ src/main/proto/SstFlow.proto | 50 ++++++++++++++++++++ 4 files changed, 242 insertions(+) create mode 100644 src/main/proto/DataFlow.proto create mode 100644 src/main/proto/QoeFlow.proto create mode 100644 src/main/proto/SstFlow.proto diff --git a/src/main/proto/BussFlowWeb.proto b/src/main/proto/BussFlowWeb.proto index e69de29..95d1442 100644 --- a/src/main/proto/BussFlowWeb.proto +++ b/src/main/proto/BussFlowWeb.proto @@ -0,0 +1,81 @@ +syntax = "proto3"; + +option java_package = "com.yuandian.dataflow.proto"; +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/src/main/proto/DataFlow.proto b/src/main/proto/DataFlow.proto new file mode 100644 index 0000000..78931e2 --- /dev/null +++ b/src/main/proto/DataFlow.proto @@ -0,0 +1,61 @@ +syntax = "proto3"; + +option java_package = "com.yuandian.dataflow.proto"; +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/src/main/proto/QoeFlow.proto b/src/main/proto/QoeFlow.proto new file mode 100644 index 0000000..d3e7596 --- /dev/null +++ b/src/main/proto/QoeFlow.proto @@ -0,0 +1,50 @@ +syntax = "proto3"; + +option java_package = "com.yuandian.dataflow.proto"; +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/src/main/proto/SstFlow.proto b/src/main/proto/SstFlow.proto new file mode 100644 index 0000000..ee312c1 --- /dev/null +++ b/src/main/proto/SstFlow.proto @@ -0,0 +1,50 @@ +syntax = "proto3"; + +option java_package = "com.yuandian.dataflow.proto"; +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