Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 4
0
        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();
        }