nDPId/schema/flow_event_schema.json
Toni Uhlig 80e1eedbef
nDPId: Added some error messages when workflow init fails.
* Fixed invalid array subscript typ0 (caused some trouble..)
 * bump libnDPI to 2cd0479204301c50c6149706fcd4df3058b2a8cc

Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2022-01-26 15:12:28 +01:00

244 lines
5.4 KiB
JSON

{
"type": "object",
"required": [
"alias",
"source",
"thread_id",
"packet_id",
"flow_event_id",
"flow_event_name",
"flow_id",
"flow_packets_processed",
"flow_first_seen",
"flow_last_seen",
"flow_idle_time",
"flow_min_l4_payload_len",
"flow_max_l4_payload_len",
"flow_tot_l4_payload_len",
"flow_avg_l4_payload_len",
"l3_proto",
"l4_proto",
"midstream",
"ts_msec",
"src_ip",
"dst_ip"
],
"if": {
"properties": { "flow_event_name": { "const": "update" } }
},
"then": {
"required": [ "flow_datalink", "flow_max_packets" ]
},
"if": {
"properties": { "flow_event_name": { "const": "not-detected" } }
},
"then": {
"required": [ "ndpi" ]
},
"if": {
"properties": { "flow_event_name": { "const": "guessed" } }
},
"then": {
"required": [ "ndpi" ]
},
"if": {
"properties": { "flow_event_name": { "const": "detected" } }
},
"then": {
"required": [ "ndpi" ]
},
"if": {
"properties": { "flow_event_name": { "const": "detection-update" } }
},
"then": {
"required": [ "ndpi" ]
},
"properties": {
"alias": {
"type": "string"
},
"source": {
"type": "string"
},
"thread_id": {
"type": "number",
"minimum": 0,
"maximum": 31
},
"packet_id": {
"type": "number",
"minimum": 0
},
"flow_event_id": {
"type": "number",
"minimum": 0,
"maximum": 8
},
"flow_event_name": {
"type": "string",
"enum": [
"invalid",
"new",
"end",
"idle",
"update",
"guessed",
"detected",
"detection-update",
"not-detected"
]
},
"flow_id": {
"type": "number",
"minimum": 1
},
"flow_datalink": {
"type": "number",
"minimum": 0,
"maximum": 265
},
"flow_packets_processed": {
"type": "number"
},
"flow_max_packets": {
"type": "number",
"minimum": 0
},
"flow_first_seen": {
"type": "number",
"minimum": 24710
},
"flow_last_seen": {
"type": "number",
"minimum": 24710
},
"flow_idle_time": {
"type": "number",
"minimum": 1
},
"flow_min_l4_payload_len": {
"type": "number"
},
"flow_max_l4_payload_len": {
"type": "number"
},
"flow_tot_l4_payload_len": {
"type": "number"
},
"flow_avg_l4_payload_len": {
"type": "number"
},
"l3_proto": {
"type": "string",
"enum": [
"ip4",
"ip6",
"unknown"
]
},
"l4_proto": {
"oneOf": [
{
"type": "number"
},
{
"type": "string",
"enum": [
"tcp",
"udp",
"icmp",
"icmp6"
]
}
]
},
"midstream": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"ts_msec": {
"type": "number",
"minimum": 0
},
"src_ip": {
"type": "string",
"anyOf" : [
{ "format": "ipv4" },
{ "format": "ipv6" }
]
},
"dst_ip": {
"type": "string",
"anyOf" : [
{ "format": "ipv4" },
{ "format": "ipv6" }
]
},
"src_port": {
"type": "number",
"minimum": 1,
"maximum": 65535
},
"dst_port": {
"type": "number",
"minimum": 1,
"maximum": 65535
},
"ndpi": {
"type": "object"
},
"entropy": {
"type": "number"
},
"dhcp": {
"type": "object"
},
"bittorrent": {
"type": "object"
},
"mdns": {
"type": "object"
},
"ntp": {
"type": "object"
},
"ubntac2": {
"type": "object"
},
"kerberos": {
"type": "object"
},
"telnet": {
"type": "object"
},
"tls": {
"type": "object"
},
"quic": {
"type": "object"
},
"imap": {
"type": "object"
},
"http": {
"type": "object"
},
"pop": {
"type": "object"
},
"smtp": {
"type": "object"
},
"dns": {
"type": "object"
},
"ftp": {
"type": "object"
},
"ssh": {
"type": "object"
}
},
"additionalProperties": false
}