Skip to content
Snippets Groups Projects
Commit b81596f5 authored by karamchandan's avatar karamchandan
Browse files

Cleanup of the DAD service implementation

parent b3c0e922
No related branches found
No related tags found
2 merge requests!142Release TeraFlowSDN 2.1,!141Pre-release fixes and code cleanup in L3 cybersecurity components
......@@ -177,6 +177,7 @@ class l3_distributedattackdetector:
stub = ContextServiceStub(channel)
context_id = ContextId()
context_id.context_uuid.uuid = context_id_str
return stub.ListServiceIds(context_id)
def get_services(self, context_id_str):
......@@ -184,26 +185,31 @@ class l3_distributedattackdetector:
stub = ContextServiceStub(channel)
context_id = ContextId()
context_id.context_uuid.uuid = context_id_str
return stub.ListServices(context_id)
def get_service_id(self, context_id):
service_list = self.get_services(context_id)
service_id = None
for s in service_list.services:
if s.service_type == ServiceTypeEnum.SERVICETYPE_L3NM:
service_id = s.service_id
break
else:
pass
return service_id
def get_endpoint_id(self, context_id):
service_list = self.get_services(context_id)
endpoint_id = None
for s in service_list.services:
if s.service_type == ServiceTypeEnum.SERVICETYPE_L3NM:
endpoint_id = s.service_endpoint_ids[0]
break
return endpoint_id
def get_features_ids(self):
......@@ -275,7 +281,7 @@ class l3_distributedattackdetector:
LOGGER.error(f"Error sending batch: {e}")
async def send_data(self, metrics_list_pb, send_data_times):
# Send to CAD
# Send data to CAD
if SEND_DATA_IN_BATCHES:
if len(metrics_list_pb) == BATCH_SIZE:
send_data_time_start = time.time()
......@@ -319,24 +325,24 @@ class l3_distributedattackdetector:
LOGGER.info("Waiting for new data...")
time.sleep(1 / 100)
line = next(loglines, None)
if index == 0 and IGNORE_FIRST_LINE_TSTAT:
index = index + 1
continue
if STOP:
break
num_lines += 1
start = time.time()
line_id = line.split(" ")
self.conn_id = (line_id[0], line_id[1], line_id[14], line_id[15])
self.new_connections[self.conn_id] = self.process_line(line)
self.check_if_connection_is_attack()
self.insert_connection()
self.create_cad_features()
self.check_types()
connection_metadata = ConnectionMetadata(**self.cad_features["connection_metadata"])
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment