Done with atteck detect function
This commit is contained in:
parent
50dc610c43
commit
3e87203535
|
@ -1 +1,47 @@
|
|||
/* pavan changes */
|
||||
#include<time.h>
|
||||
#include<stdio.h>
|
||||
#include<stdlib.h>
|
||||
#include "parser.h"
|
||||
|
||||
void attack_detect(struct data_frame *df,time_t* START,float* COUNT,float* SUM_OF_FREQUENCY)
|
||||
{
|
||||
*COUNT = *COUNT+1;
|
||||
printf("count: %f\n",*COUNT);
|
||||
float CURR_FREQ=to_intconvertor(df->dpmu[0]->freq);
|
||||
*SUM_OF_FREQUENCY+=CURR_FREQ;
|
||||
float FREQ_AVG=*SUM_OF_FREQUENCY/(*COUNT*1.0f);
|
||||
float DETECT_PERCENT=(abs(FREQ_AVG-CURR_FREQ)/(FREQ_AVG*1.0f))*100;
|
||||
|
||||
printf("Detect_percent: %f\n",DETECT_PERCENT);
|
||||
printf("frequency average: %f\n",FREQ_AVG);
|
||||
|
||||
float THRESHOLD=25;
|
||||
if(DETECT_PERCENT>THRESHOLD)
|
||||
printf("ATTACK DETECTED\n");
|
||||
else
|
||||
printf("NO PROBLEM\n");
|
||||
|
||||
if(*COUNT==1)
|
||||
{
|
||||
time(START);
|
||||
printf("entered\n");
|
||||
}
|
||||
|
||||
|
||||
time_t END;
|
||||
time(&END);
|
||||
|
||||
double time_used = difftime(END,*START);
|
||||
printf("time used %lf\n",time_used);
|
||||
|
||||
|
||||
if(time_used > 60)
|
||||
{
|
||||
time(START);
|
||||
*SUM_OF_FREQUENCY=CURR_FREQ;
|
||||
*COUNT=1;
|
||||
}
|
||||
}
|
||||
|
||||
/* pavan changes */
|
|
@ -0,0 +1,3 @@
|
|||
/* pavan changes */
|
||||
void attack_detect(struct data_frame *df,time_t* START,float* COUNT,float* SUM_OF_FREQUENCY);
|
||||
/* pavan changes */
|
|
@ -60,9 +60,10 @@ SOURCES = \
|
|||
ipdcGui.c ipdcGui.h \
|
||||
attack_detection.c attack_detection.h \
|
||||
data_vis.c data_vis.h \
|
||||
utility_tools.c utility_tools.h
|
||||
utility_tools.c utility_tools.h \
|
||||
Attack_detect.c Attack_detect.h
|
||||
|
||||
OBJECTS = ipdc.c recreate.o connections.o new_pmu_or_pdc.o parser.o dallocate.o align_sort.o ipdcGui.o attack_detection.o data_vis.o utility_tools.o
|
||||
OBJECTS = ipdc.c recreate.o connections.o new_pmu_or_pdc.o parser.o dallocate.o align_sort.o ipdcGui.o attack_detection.o data_vis.o utility_tools.o Attack_detect.o
|
||||
|
||||
CLEAN_OBJECTS = recreate.o connections.o new_pmu_or_pdc.o parser.o dallocate.o align_sort.o ipdcGui.o ~iPDC.xml
|
||||
|
||||
|
|
|
@ -74,47 +74,10 @@
|
|||
|
||||
|
||||
/* pavan changes */
|
||||
/* variables declared */
|
||||
/* variables declared of attack_detect function */
|
||||
float SUM_OF_FREQUENCY=0;
|
||||
float COUNT=0;
|
||||
float THRESHOLD=25;
|
||||
double time_used;
|
||||
time_t START;
|
||||
|
||||
void attack_detect(struct data_frame *df)
|
||||
{
|
||||
COUNT++;
|
||||
float CURR_FREQ=to_intconvertor(df->dpmu[0]->freq);
|
||||
SUM_OF_FREQUENCY+=CURR_FREQ;
|
||||
float FREQ_AVG=SUM_OF_FREQUENCY/(COUNT*1.0f);
|
||||
float DETECT_PERCENT=(abs(FREQ_AVG-CURR_FREQ)/(FREQ_AVG*1.0f))*100;
|
||||
|
||||
printf("Detect_percent: %f\n",DETECT_PERCENT);
|
||||
printf("frequency average: %f\n",FREQ_AVG);
|
||||
|
||||
|
||||
if(DETECT_PERCENT>THRESHOLD)
|
||||
printf("ATTACK DETECTED\n");
|
||||
else
|
||||
printf("NO PROBLEM\n");
|
||||
|
||||
if(COUNT==1)
|
||||
time(&START);
|
||||
|
||||
time_t END;
|
||||
time(&END);
|
||||
|
||||
time_used = difftime(END,START);
|
||||
printf("time used %lf\n",time_used);
|
||||
|
||||
|
||||
if(time_used > 60)
|
||||
{
|
||||
time(&START);
|
||||
SUM_OF_FREQUENCY=CURR_FREQ;
|
||||
COUNT=1;
|
||||
}
|
||||
}
|
||||
/* pavan changes */
|
||||
|
||||
|
||||
|
@ -1319,7 +1282,7 @@ int dataparser(unsigned char data[]) {
|
|||
}
|
||||
|
||||
/*pavan changes*/
|
||||
attack_detect(df);
|
||||
attack_detect(df,&START,&COUNT,&SUM_OF_FREQUENCY);
|
||||
/*pavan changes*/
|
||||
|
||||
// temp code
|
||||
|
|
Loading…
Reference in New Issue