Ontologı́as en la gestión de redes basada en polı́ticas Leandro Tabares Martı́n1 Universidad de las Ciencias Informáticas, La Habana, Cuba ltmartin@uci.cu Abstract. The main goal of the current work was to create a mech- anism for detecting and classifying events coming from the statistical information gathered when operating a computer’s network. To achieve this goal we have developed a Web ontology and used HermiT reasoner on the instance of the ontology. The created mechanism allowed to make explicit the classification of events raised on the network for applying policies. Keywords: Reasoning, Ontologies, Policy-based Network Management Resumen El presente trabajo tuvo como objetivo desarrollar un meca- nismo que permitiese la detección y clasificación de eventos a partir de la información estadı́stica que se obtiene al operar una red informática. Para cumplimentar el objetivo se desarrolló una ontologı́a que describe los eventos a detectar en el Lenguaje de Ontologı́as Web y se aplicó el razonador HermiT sobre la instanciación de la ontologı́a desarrollada. El mecanismo creado permitió explicitar la ocurrencia de los eventos mo- nitoreados en la red y clasificarlos con el fin de aplicar polı́ticas ante su ocurrencia. Keywords: Gestión de redes basada en polı́ticas, Razonamiento, Onto- logı́as 1 Introducción En su formulación, un enfoque basado en polı́ticas presenta tres elementos bási- cos: eventos de polı́ticas, acciones de polı́ticas y reglas de polı́ticas. Los eventos de polı́ticas representan los estados del sistema que son relevantes en el contexto de los objetivos de negocio y su realización operacional. Las acciones de polı́ticas son las respuestas deseadas por la organización en caso de que ocurra uno o más eventos de polı́ticas. Las reglas de polı́ticas son los mecanismos que enlazan los eventos de polı́ticas con las acciones de polı́ticas [2]. Un enfoque basado en polı́ticas para la gestión también puede permitir la separación de las reglas que gobiernan el funcionamiento de un sistema de la 136 funcionalidad provista por el sistema. Por lo tanto, una gestión basada en polı́ti- cas permite adaptar el comportamiento de un sistema sin refactorizar sus fun- cionalidades [1]. Una arquitectura de sistemas basados en polı́ticas sencilla pero poderosa fue formulada por [10] y se ilustra en la figura 1. El Punto de Decisión de Polı́ticas (PDP) es el módulo donde reside la experticia sobre polı́ticas. El PDP utiliza un repositorio que contiene los parámetros y estructuras de datos necesarios para que el PDP evalúe las polı́ticas y pueda realizar decisiones basadas en ellas. El repositorio de polı́ticas comúnmente se implementa como un directorio que se comunica usando un protocolo de acceso a directorios ligero (LDAP) [2]. Figura 1. Arquitectura de referencia de polı́ticas. Cada objeto gestionado soporta un agente de polı́ticas conocido como punto de aplicación de polı́ticas (PAP). Se diseña e implementa un PAP por cada objeto gestionado en el sistema basado en polı́ticas. El PAP se comunica con el PDP por medio de un protocolo denominado servicio de polı́ticas común abierto (SPCA) [4]. Sin embargo, según plantea [2], la lógica dentro de las reglas que soportan las polı́ticas deben ir más allá del simple si-entonces de la lógica que permiten las polı́ticas basadas en tablas. Una forma de expresar reglas basadas en lógica descriptiva es la utilización de ontologı́as. Una ontologı́a es una especificación explı́cita y formal de una conceptualiza- ción compartida [7]. 137 – Es explı́cita porque define los conceptos, propiedades, relaciones, funciones, axiomas y restricciones que la componen. – Es formal porque es legible e interpretable por computadoras. – Es una conceptualización porque es un modelo abstracto y una vista simpli- ficada de los elementos reales que representa. – Es compartida porque se ha arribado previamente a un consenso sobre la información y es aceptada por un grupo de expertos. Uno de los escenarios más exitosos de uso de las ontologı́as es la Web Semánti- ca [9]. Las ontologı́as en la Web Semántica se expresan en un lenguaje denomi- nado Lenguaje de Ontologı́as Web (OWL) basado en lógica descriptiva. Debido a que OWL es un lenguaje de ontologı́as lo suficientemente completo puede ser usado directamente para especificar información sobre la gestión de redes por- que presenta la mayorı́a de los elementos incluidos en los lenguajes de gestión de información y, los que no están incluidos, pueden serlo al extender OWL [8]. Durante varios años la gestión de redes basada en polı́ticas ha atraı́do tanto a la academia como a la industria [9]. El término polı́tica en el contexto de la gestión de redes significa una regla que gobierna la elección en el comportamiento de los elementos gestionados [9]. Existen varios lenguajes para la gestión de polı́ticas, entre ellos se encuentra PONDER [3], que fue especialmente concebido para la gestión de redes basada en polı́ticas. Sin embargo, la utilización de varios lenguajes de polı́ticas puede causar dificultades en la implementación de sistemas de gestión. Al utilizar ontologı́as OWL las polı́ticas de gestión de red pueden combinarse en el mismo modelo con la información de gestión de red, lo que apunta en una dirección promisoria para la automatización de la gestión de redes [9]. 2 Materiales y métodos Para la definición de reglas se creó una ontologı́a que permite aplicar polı́ticas en función de eventos que se puedan producir en la red y que se describe a con- tinuación. DoSAttacksN etwork ≡ DisallowedN etworku ≥ 2000connectionsP erSecond HotAttacksN umberN etwork ≡ DisallowedN etwork u ∃phoneN umber.Literal DisallowedN etwork ≡ N etwork M ultipleF ailedLoginU ser ≡ DisallowedU seru ≥ 4f ailedLoginAttempts BlockedU ser ≡ DisallowedU ser u ∃identif ier.Literal DisallowedU ser ≡ U ser DisallowP olicy ≡ DisallowedN etwork t DisallowedU ser Una vista en Protégé de las clases correspondientes a ontologı́a creada se ilustra en la figura 2. Para realizar las tareas de razonamiento e inferencia se utilizó el razonador sobre OWL 2 HermiT. HermiT soporta todas las caracterı́sticas del lenguaje OWL 2 según el estándar del consorcio de la World Wide Web (W3C), se basa 138 Figura 2. Clases de la ontologı́a creada. en cálculo hypertableau y soporta un amplio rango de optimizaciones estándares y otras novedosas para mejorar el rendimiento al razonar sobre ontologı́as en un ambiente no experimental [5]. Se decidió emplear un razonador con el objetivo de detectar y clasificar even- tos de interés que ocurren en la red a partir de parámetros definidos en la onto- logı́a. Resulta válido anotar que los parámetros definidos en este trabajo tienen un propósito experimental, estos pueden ser variados en función de las necesida- des de detección y clasificación de eventos en una instancia de red especı́fica. Para el desarrollo de la ontologı́a propuesta se hizo un análisis de las diferentes metodologı́as existentes basado en los criterios propuestos por [6]. Los resultados de este análisis se ilustran en la tabla 1. Posterior al análisis de diferentes meto- dologı́as para el desarrollo de ontologı́as se decidió utilizar METHONTOLOGY ya que recomienda un ciclo de vida, es reutilizable y provee suficientes detalles sobre las técnicas y actividades empleadas en ella. 3 Resultados y discusión Luego del diseño de la parte terminológica (T-BOX) de la ontologı́a propuesta se procedió a instanciarla con el fin de verificar su consistencia y correcto funcio- namiento para el propósito que fue creada. Con este fin se crearon en Protégé los individuos que se ilustran en las figuras 3, 4 y 5. Debe notarse que en esta insta- ciación solo se hacen explı́citos parámetros estadı́sticos que pueden ser obtenidos a partir de las estadı́sticas de una red. A partir de la aplicación de un razonador sobre la información estadı́stica explı́cita descrita en la instanciación de la ontologı́a (A-BOX), se hace explı́cita la información implı́cita que se ilustra en las figuras 6, 7 y 8. Al contrastar estas figuras con sus correspondientes en las figuras 3, 4 y 5 se evidencia que el razo- nador fue capaz de analizar la información explı́cita de los individuos, aplicar las 139 Figura 3. Individuo que representa a una subred. Figura 4. Individuo que representa a un usuario con múltiples intentos de autentica- ción fallidos. Figura 5. Individuo que representa a un número caliente sobre el que se deben realizar acciones. 140 Cuadro 1. Comparación de las metodologı́as analizadas. Metodologı́as Tipo de Desa- Construcción ¿Reutilizable? Dependiente Ciclo de vida Estrategias Nivel de deta- ¿Interoperable? rrollo colaborativa de la aplica- para iden- lle ción tificar los conceptos TOVE Basada en No Sı́ Semi indepen- No Media Algunos deta- No etapas diente lles Enterprise model ap- Basada en No Sı́ Independiente No Media Algunos deta- No proach etapas lles METHONTOLOGY Prototipo No Sı́ Independiente Sı́ Media Suficientes de- No evolutivo talles KBSI IDEF5 Prototipo No Sı́ Independiente No No es clara Algunos deta- No evolutivo lles Ontolingua Desarrollo Sı́ Sı́ Independiente No No es clara Algunos deta- Sı́ modular lles KACTUS Desarrollo No Sı́ Dependiente No Estrategia Insuficientes No modular arriba-abajo detalles PLINIUS Basada en No No Independiente No Estrategia Algunos deta- No guı́as abajo-arriba lles ONIONS Desarrollo No No Dependiente No No es clara Insuficientes Sı́ modular detalles basado en guı́as Mikrokosmos Basada en No No Dependiente No Estrategia ba- Algunos deta- No guı́as sada en reglas lles MENELAS Basada en No No Dependiente No Grafos de Insuficientes No guı́as conceptos detalles SENSUS No menciona Sı́ Sı́ Semi indepen- No Abajo-arriba Algunos deta- Sı́ preferencias diente lles Cyc Prototipo No Sı́ Independiente No No es clara Algunos deta- No evolutivo lles UPON Prototipo No Sı́ Independiente Sı́ Media Algunos deta- No evolutivo lles Método 101 Prototipo No Sı́ Independiente No Consenso del Algunos deta- No evolutivo desarrollador lles On-To-Knowledge Prototipo No No Dependiente Sı́ Media Algunos deta- No evolutivo lles reglas definidas en la ontologı́a y clasificar cada tipo de individuo en dependen- cia del evento que está siendo objeto de monitorización en la red. Al detectar las instancias de los eventos que se observan en la red, el punto de aplicación de polı́ticas (PAP) definido en la arquitectura es capaz de desencadenar las acciones respectivas a cada tipo de evento. Figura 6. Individuo que representa a una subred luego de aplicar un razonador. 141 Figura 7. Individuo que representa a un usuario con múltiples intentos de autentica- ción fallidos luego de aplicar un razonador. Figura 8. Individuo que representa a un número caliente sobre el que se deben realizar acciones luego de aplicar un razonador. 142 4 Conclusiones A partir del análisis realizado se puede concluir que la metodologı́a para el desarrollo de ontologı́as METHONTOLOGY satisface las necesidades para la creación de una ontologı́a para la detección y clasificación de eventos en la red. La aplicación de un razonador compatible con el lenguaje OWL 2 permite hacer explı́cita información implı́cita en simples datos estadı́sticos recopilados en la red. A partir de la instanciación de la ontologı́a propuesta fue posible detectar eventos producidos en la red y clasificarlos. En el futuro resulta promisoria la investigación en el área de la actualización incremental de grafos RDF como instanciación de la ontologı́a propuesta. Esto permitirá aumentar la eficiencia y eficacia en la detección y clasificación de los eventos que se producen en la red. Referencias 1. Bandara, A.K., Lupu, E.C., Russo, A.: Using event calculus to formalise policy specification and analysis. In: Proceedings POLICY 2003. IEEE 4th International Workshop on Policies for Distributed Systems and Networks. pp. 26–39 (June 2003) 2. Choudhary, A.R.: Policy-based network management. Bell Labs Technical Journal 9(1), 19–29 (2004) 3. Damianou, N., Dulay, N., Lupu, E., Sloman, M.: The Ponder Policy Specification Language. In: Sloman, M., Lupu, E.C., Lobo, J. (eds.) Policies for Distributed Systems and Networks. pp. 18–38. Springer Berlin Heidelberg, Berlin, Heidelberg (2001) 4. Durham, D., Boyle, J., Cohen, R., Herzog, S., Rajan, R., Sastry, A.: The cops (common open policy service) protocol. Tech. rep. (1999) 5. Glimm, B., Horrocks, I., Motik, B., Stoilos, G., Wang, Z.: HermiT: An OWL 2 Reasoner. Journal of Automated Reasoning 53(3), 245–269 (oct 2014), https: //doi.org/10.1007/s10817-014-9305-1 6. Iqbal, R., Murad, M.A.A., Mustapha, A., Sharef, N.M.: An analysis of ontology en- gineering methodologies: A literature review. Research journal of applied sciences, engineering and technology 6(16), 2993–3000 (2013) 7. Studer, R., Richards Benjamins, V., Fensel, D.: Knowledge engineering: Principles and methods. Data & Knowledge Engineering 25(1-2), 161–197 (1998) 8. de Vergara, J.E.L., Villagra, V.A., Berrocal, J.: Applying the web ontology lan- guage to management information definitions. IEEE Communications Magazine 42(7), 68–74 (July 2004) 9. Xiao, D., Xu, H.: An integration of ontology-based and policy-based network ma- nagement for automation. In: 2006 International Conference on Computational Inteligence for Modelling Control and Automation and International Conference on Intelligent Agents Web Technologies and International Commerce (CIMCA’06). pp. 27–27 (Nov 2006) 10. Yavatkar, R., Pendarakis, D., Guerin, R.: A framework for policy-based admission control. Tech. rep. (1999)