public void EPIselfTest() { this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.app_identification_testM2_cap)); var appIdentDataSource = this.AppIdentService.CreateAppIdentDataSource(this.L7Conversations); var epiEvaluator = new EPIEvaluator(new FeatureSelector()); epiEvaluator.CreateApplicationProtocolModels(appIdentDataSource.TrainingSet); var precMeasure = epiEvaluator.ComputeStatistics(appIdentDataSource.TrainingSet); var consoleDefaultColor = Console.ForegroundColor; Console.ForegroundColor = consoleDefaultColor; Console.WriteLine("################# Procotol model details: ####################"); epiEvaluator.PrintProtocolModels(); Console.WriteLine("################# Procotol similarities: ####################"); epiEvaluator.AgregateProtocolModels(); Console.WriteLine("################# Summary: ####################"); precMeasure.PrintResults(); //applicationProtocolModelEvaluator.PrintCsvProtocolModels(); this.AppIdentService.SaveStatisticsToxml("testMeasure.xml", precMeasure); }
public ApplicationProtocolClassificationStatisticsMeter EpiTestBase( string pcapFilePath, double trainingToClassifyingRatio, out EPIEvaluator epiEvaluator, int minFlows = 1) { this.ProcessPcapFile(pcapFilePath); var appIdentDataSource = this.AppIdentService.CreateAppIdentDataSource(this.L7Conversations, minFlows, trainingToClassifyingRatio); return(this.AppIdentService.EpiClasify(appIdentDataSource, new FeatureSelector(), out epiEvaluator)); }
public ApplicationProtocolClassificationStatisticsMeter EpiClasify( AppIdentDataSource appIdentDataSource, FeatureSelector featureSelector, out EPIEvaluator epiEvaluator, AppIdentTestContext appIdentTestContext = null) { //this.CreateDatasetAndTestset(appIdentDataSource, trainingToVerificationRatio, out var trainingSet, out var verificationSet); epiEvaluator = new EPIEvaluator(featureSelector); epiEvaluator.CreateApplicationProtocolModels(appIdentDataSource.TrainingSet); var precMeasure = epiEvaluator.ComputeStatistics(appIdentDataSource.VerificationSet); appIdentTestContext?.Save(precMeasure); return(precMeasure); }
private static void ShowResultsInApp(EPIEvaluator appProtoModelEval, ApplicationProtocolClassificationStatisticsMeter epiprecMeasure, ApplicationProtocolClassificationStatisticsMeter mlprecMeasure) { WrapperWindow mainView = null; var t = new Thread(() => { mainView = new WrapperWindow { DataContext = new AppIdentMainVm(appProtoModelEval, epiprecMeasure, mlprecMeasure) }; // Initiates the dispatcher thread shutdown when the mainView closes mainView.Closed += (s, e) => mainView.Dispatcher.InvokeShutdown(); mainView.Show(); // Makes the thread support message pumping System.Windows.Threading.Dispatcher.Run(); }); // Configure the thread t.SetApartmentState(ApartmentState.STA); t.Start(); t.Join(); }