8.1 Estudo Caso 1: Classificação com Abordagem Fuzzy
8.1.1 Descrição do Estudo de Caso
Os especialistas da CREI/UFPEL participaram modelando as funções de pertinên- cia, bem como selecionando os atributos a serem empregados nas mesmas. Neste estudo de caso, particularmente a seleção de atributos foi feita com auxílio de al- goritmos de aprendizagem de máquina disponibilizados pela ferramenta WEKA, cuja relação está no Apêndice B.
Na construção dosDatasetsempregados no estudo de caso foram capturados 300 fluxos destreaming de vídeo decorrentes da reprodução dos mesmos na plataforma Youtube, todos no formato VoD (Video on Demand). O tempo de captura de cada vídeo variou entre 2 a 4 minutos, permitindo o registro de eventuais alterações nos parâmetros operacionais da rede, os quais podem impactar, mas nem sempre o fazem, na qualidade da exibição à intermitência e variações nas condições da rede.
Para reproduzir os vídeos foi usado o navegador Firefox versão 105, configuração padrão, sendo executado em um sistema operacional Linux Ubuntu 20.04. Os vídeos foram capturados ao longo de três meses com sessões de captura em diferentes mo- mentos do dia, durante a semana e finais de semana. A captura dos vídeos deu-se em ambiente de acesso à Internet com link de 240 Mbit/s com tecnologia GPON (Gigabit Passive Optical Network).
As capturas dos fluxos de rede foram realizadas com o emprego da ferramenta Tcpdump3, a qual com o emprego de filtros facultou a supressão de fluxos que sa- bidamente não se tratavam de streaming de vídeo. Esta ferramenta foi selecionada tendo como critérios centrais sua maturidade, constante atualização e adoção perante as comunidades nacionais e internacionais que atuam na área.
Os fluxos de streaming de vídeo foram salvos em arquivos no formato pcap, os quais foram submetidos à ferramenta CicFlowMeter para a extração dos atributos.
Para garantir os intervalos previstos de 2 a 4 minutos para a captura a CicFlowMeter foi configurada com os parâmetros para definição de fluxos de rede em 1200s de timeout e tempo de inatividade em 5s.
Nas capturas realizadas na plataforma Youtube o protocolo QUIC predominou no controle do transporte dos vídeos analisados entre cliente e servidor, havendo pou- cos casos onde o protocolo HTTPS foi utilizado. Ambos protocolos QUIC e HTTPS utilizam criptografia por padrão. Foram construídos dois Datasets, com tamanhos e características diferentes, um deles com 246 e outro com 54 fluxos destreaming de
3https://www.tcpdump.org/
Tabela 12 – Composição dos Fluxos porDataset Protocolo Dataset 17102021
DNS 1025
FTP 1937
HTTP 25
SSH 5
Vídeo 246
Total de Fluxos 3346
Protocolo Dataset 24102021
DNS 663
HTTP 2941
HTTPS 2941
NTP 63
Outros 6040
QUIC 304
Vídeo 54
Total de Fluxos 11304 vídeo (vide Tabela 12).
Com o intuito de conferir aos dados de entrada um perfil mais próximo das redes reais, arquivos adicionais foram combinados com osDatasets. Estes arquivos foram gerados a partir de duas fontes: (a) capturas feitas durante o desenvolvimento desta Tese em uma rede acadêmica de uma universidade no sul do Brasil; e, (b) de capturas disponibilizadas publicamente, feitas em instituições de distintas origens (MOUSTAFA;
SLAY, 2015; CHO; MITSUYA; KATO, 2000).
Destes arquivos adicionais, foram extraídos fluxos de rede para os seguintes pro- tocolos: DNS, NTP, FTP, SSH, HTTP, HTTPS e QUIC. Para validar os fluxos HTTPS e QUIC, comumente usados parastreamingde vídeo, houve a utilização da ferramenta Wireshark4e o auxílio de um especialista em rede. A seleção destes protocolos ante as capturas a serem adicionadas aos Datasets, teve por objetivo evitar que fossem introduzidos como tráfegos adicionais, fluxos pertinentesstreamingde vídeo, compro- metendo o acompanhamento do processo como um todo (vide Tabela 12)
Os fluxos de rede adicionais, foram explorados como a seguir:
• noDataset 17102021 foram agregados 3100 fluxos;
• noDataset 24102021 foram agregados 11250 fluxos;
Para realizar a seleção dos atributos foi empregado o algoritmo CfsSubsetEval dis- ponível na ferramenta WEKA. Sua aplicação sobre osDatasets retornou os atributos com maior relevância. Após análise dos especialistas da CREI/UFPEL, foram sele- cionados os atributos Packet Length Mean, Fwd Packet Length Std e Backward IAT Total. Os valores dos atributos escolhidos foram normalizados em uma escala de 0 a 10, sendo o 10 o valor máximo possível.
Neste estudo de caso, foi considerada a classificação explorando abordagem fuzzy, na qual são executadas todas as etapas do sistema de inferência fuzzy de valor inter- valar. A saída fornece o nível do fluxo analisado, que tem como objetivo realizar a
4https://www.wireshark.org/
classificação do fluxo de rede referente ao tipo destreaming de vídeo: Low,Average eHigh.
Neste cenário, a FuzzyNetClass utilizou uma base de regras composta de 27 re- gras e 3 termos linguísticos. O processo de classificação foi realizado com o uso da biblioteca Juzzy (WAGNER, 2013).
A plataforma Juzzy foi selecionada porque apresenta alternativas para modelagem e implementação de sistemas fuzzy convencionais e fuzzy valorados intervalarmente, além disso, por ser um projeto de código-fonte aberto atualmente disponível para co- munidade acadêmica, e que recentemente abordou o tratamento para conjuntos fuzzy valorados intervalarmente de intervalo restrito (D’ALTERIO et al., 2020) (vide Apêndice C).
O método de fuzzificação considerou funções de pertinência do tipo trapezoidal.
O processo de inferência utilizado foi com base no método de Mamdani (MAMDANI, 1976), considerando uma base de regras com conectivos lógicos do tipo “AND” apli- cando normas triangulares. E por fim, a etapa de defuzzificação utilizando o centro da área.
Esta situação é oportuna para uma melhor interpretabilidade pelo usuário, pois as funções de pertinência mais simples são formadas usando linhas retas. Devido à sua simplicidade de formulação e eficiência computacional, tanto as funções de perti- nência trapezoidais quanto as funções triangulares têm sido usadas extensivamente, especialmente em aplicações que tratam dados capturados em tempo real.
Base de Dados e Funções de Pertinência
Os valores dos atributos selecionados são aplicados à escala padrão considerando o intervalo [0,10], estabelecendo o valor 10 como limite para os valores acima dele.
Assim, paraPacket Length Mean, foi usado a Eq. (23),Fwd Packet Length Std a Eq.
(24) eBackward Iat Total Eq. (25), na obtenção dos graus de pertinência:
P LM = (nfi(P LM)/M axP LM ∗10) (23)
P LS = (nfi(P LS)/M axP LS ∗10) (24)
BIAT = (nfi(BIAT)/M axBIAT)∗10 (25)
considerando os seguintes parâmetros para cada fluxo de rede:
• nfi representa um fluxo de rede capturado;
• P LM é um atributo médio de tamanho de pacote;
• P LS é um atributo de desvio padrão de comprimento de pacote no sentido de envio;
• BIAT considera o tempo total de chegadas de pacotes no sentido de recebi- mento;
• maxP LM é o valor total do atributo médio de tamanho de pacote mais alto iden- tificado;
• maxP LSé o valor total do maior desvio padrão do tamanho do pacote no sentido de envio identificado;
• maxBIAT é o valor total do atributo de tempo total entre chegadas de recebi- mentos de pacotes mais alto identificado.
Os termos linguísticos que definem os conjuntos para variávelPacket Length Mean (PLM) são os seguintes: “Low” (PLML), “Average” (PLMR) e “High” (PLMH - melhor caso). Denota-se P LM = a e a ∈ [0,10]. Na Figura 20(a) são representadas as correspondentes funções de pertinência.
O atributoFwd Packet Length Std (PLS) é usado como entrada e obtido pela leitura do fluxo de rede analisado. Os termos para os conjuntos definidos para esta variá- vel são: “Low” (PLSL), “Average” (PLSR - melhor caso) e “High” (PLSH). Denota-se P LS=beb ∈[0,10]. Estas funções de pertinência são apresentadas na Figura 20(b).
Na modelagem dos conjuntos fuzzy para BIAT (Backward Iat Total), foram criados os seguintes termos: “Low” (BIATL - melhor caso), “ Average” (BIATR) e “High” (BI- ATH). Denota-se BIAT = ce c ∈ [0,10]. Estas funções de pertinência são vistas na Figura 20(c).
(a) PLM (b) PLS
(c) BIAT (d) Video
Figura 20 – Funções de Pertinência dos Atributos de Entrada (PLM, PLS, BIAT) e Atributo de Saída (Classificação de Vídeo)
Fuzzificação
Nessa etapa, ocorre o mapeamento dos valores de entrada, já normalizados para o intervalo de[0,10], para o domínio fuzzy, como apresenta a Figura 21.
Figura 21 – Processo de Fuzzificação dos Atributos de Entrada: PLM, PLS e BIAT
Base de Regras
A Base de Regras da FuzzyNetClass foi desenvolvida com intuito de ser compreen- sível e editável descrevendo de maneira consistente a estratégia de controle conside- rando três fatores: (i) as variáveis linguísticas nomeiam os conjuntos fuzzy, tornando a modelagem do sistema mais próxima do mundo real; (ii) são utilizadas conexões lógicas do tipo “AND” para criar a relação entre as variáveis de entrada; (iii) as impli- cações são do tipoM odus P onens(modo afirmativo): “Se ((x é A) e (y é B)) então (z é C).”
Na Tabela 13 está apresentada a base de regras aplicada para classificação de fluxos destreaming de vídeo.
Inferência
No processo de Inferência, tem-se operações entre conjuntos, combinação dos antecedentes das regras e implicações modeladas através do operadorModus Ponens Generalizado, ocorrendo em três etapas:
(i) Aplicação da Operação Fuzzy: nesta etapa, ocorre a aplicação dos operadores fuzzy sendo que a entrada consta de três valores resultantes da fuzzificação.
Como as regras são formadas pelo operador fuzzy “AND”, a aplicação utiliza o método MIN (mínimo) sobre os dois valores retornados da fuzzificação;
Tabela 13 – Base de Regras da FuzzyNetClass
PLM PLS BIAT VÍDEO
PLML PLSL BIATL Average Video
PLML PLSL BIATR Low Video
PLML PLSL BIATH Low Video
PLML PLSR BIATL Average Video
PLML PLSR BIATR Low Video
PLML PLSR BIATH Low Video
PLML PLSH BIATL Low Video
PLML PLSH BIATR Low Video
PLML PLSH BIATH Low Video
PLMR PLSL BIATL Average Video
PLMR PLSL BIATR Low Video
PLMR PLSL BIATH Low Video
IF PLMR AND PLSR AND BIATL THEN Average Video
PLMR PLSR BIATR Low Video
PLMR PLSR BIATH Low Video
PLMR PLSH BIATL Low Video
PLMR PLSH BIATR Low Video
PLMR PLSH BIATH Low Video
PLMH PLSL BIATL Average Video
PLMH PLSL BIATR Average Video
PLMH PLSL BIATH Low Video
PLMH PLSR BIATR Average Video
PLMH PLSR BIATH Low Video
PLMH PLSR BIATL High Video
PLMH PLSH BIATR Low Video
PLMH PLSH BIATH Low Video
PLMH PLSH BIATL Average Video
(ii) Aplicação do Método de Implicação Fuzzy: realizada pela combinação entre o valor obtido na aplicação do operador fuzzy e os valores do conjunto fuzzy de saída da regra, utilizando o método MIN (mínimo) sobre estas combinações;
(iii) Aplicação do Método de Agregação Fuzzy: considera a composição dos resul- tados fuzzy da saída de cada regra, utilizando o método MAX (máximo), assim criando uma única região fuzzy para ser analisada pelo próximo processo do módulo.
Defuzzificação
Nessa etapa, ocorre a transformação da região resultado da Inferência em um valor discreto que representa o fluxo de rede analisado. Essa transformação foi realizada através do emprego do método centro da área. Esse método calcula o centroide da área composta pela saída fuzzy do sistema de Inferência, o qual considera a união de todas as especificações da base de regras. A expressão analítica do centroide é dada pela equação:
u= PN
i=1uiµOU T(ui) PN
i=1µOU T(ui) (26)