Haikunet : an intent programming language for the software defined networking paradigm

Autores
Laurito, Andrés
Año de publicación
2017
Idioma
inglés
Tipo de recurso
tesis de grado
Estado
versión publicada
Colaborador/a o director/a de tesis
Melgratti, Hernán Claudio
Castro, Rodrigo Daniel
Descripción
Los lenguajes de programación orientados a intents están tomando un rol cada vez más importante en el paradigma de Software Defined Networking (SDN). A pesar de ello, la gran mayoría de estos lenguajes de programación son soluciones acopladas rígidamente a controladores SDN específicos, dificultando su reuso y portabilidad. Además, los lenguajes existentes no suelen implementar herramientas de verificación para detectar errores en los intents antes de que estos sean aplicados a la red que se pretende manipular en forma programática. En esta tesis presentamos Haikunet, un lenguaje de programación orientado a intents que implementa capacidades básicas de verificación y es agnóstico frente a controladores SDN. Esta última propiedad es lograda gracias al uso de TopoGen, una nueva herramienta genérica para traducir y generar topologías de redes desarrollada en el marco de esta tesis. TopoGen es usado para generar modelos de grafos y de simulación para la topología analizada. Sobre el modelo de grafos realizamos verificaciones de propiedades estáticas, mientras que con los modelos de simulación abrimos el camino para la verificación de propiedades dinámicas. La semántica operacional de Haikunet es presentada siguiendo el estilo de Structural Operational Semantics (SOS), esto es, un conjunto de reglas de inferencia que define de manera inductiva la relación de reducción. Estas reglas de inferencia son dadas en dos niveles: 1. En un conjunto de reglas gramaticales de grafos, que describen cómo cada operación del lenguaje afecta a la topología de la red y 2. Mediante reglas de inferencia, que describen el cómputo de un programa en Haikunet. En este trabajo presentamos distintos escenarios, en donde mostramos como Haikunet puede detectar errores en intents antes de que estos sean aplicados en la red. Todos los escenarios considerados fueron probados contra los controladores actualmente soportados por Haikunet: ONOS y OpenDayLight.
Intent-oriented programming languages are taking an important role in the Software Defined Networking (SDN) paradigm. Yet, most of these programming languages are rigidly coupled to specific SDN controllers, hindering the re-usability and portability properties of intents. Besides, existent intent-oriented programming languages usually don’t implement a verification system that can detect errors in intents before these are applied to the network that is being manipulated programmatically. In this thesis we present Haikunet, an intent-oriented programming language that implements basic verification capabilities and is agnostic to SDN controllers. This last property is achieved thanks to TopoGen, a new tool developed in this thesis to translate and generate network topologies programmatically. TopoGen is used for generating graphs and simulation models of the network being analyzed. The graph model is used for static verification of properties, while the simulation models open the path for the dynamic verification of properties. Haikunet operational semantics is formally defined in the Structural Operational Semantics (SOS) style, i.e., a set of inference rules inductively defines the reduction relation. Inference rules are given in two levels: 1. A set of graph grammars rules describe how each operation of the language changes the topology of a network, and 2. By inference rules that describe how a Haikunet program computes. In this work, we present different scenarios in which we show how Haikunet can detect errors in intents before these are applied to the network. Every scenario presented was tested against the supported controllers by Haikunet: ONOS and OpenDayLight.
Fil: Laurito, Andrés. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
Materia
TOPOLOGYGENERATOR
SDN
PROGRAMMING LANGUAGES
INTENT ORIENTED PROGRAMMING LANGUAGES
VERIFICATION SYSTEM
GRAPH GRAMMARS
INFERENCE RULES
TYPE SYSTEMS
SIMULATION
DEVS
Nivel de accesibilidad
acceso abierto
Condiciones de uso
https://creativecommons.org/licenses/by-nc-sa/2.5/ar
Repositorio
Biblioteca Digital (UBA-FCEN)
Institución
Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
OAI Identificador
seminario:seminario_nCOM000657_Laurito

id BDUBAFCEN_bdcb79ae6c0af60228a39a6c179156c0
oai_identifier_str seminario:seminario_nCOM000657_Laurito
network_acronym_str BDUBAFCEN
repository_id_str 1896
network_name_str Biblioteca Digital (UBA-FCEN)
spelling Haikunet : an intent programming language for the software defined networking paradigmLaurito, AndrésTOPOLOGYGENERATORSDNPROGRAMMING LANGUAGESINTENT ORIENTED PROGRAMMING LANGUAGESVERIFICATION SYSTEMGRAPH GRAMMARSINFERENCE RULESTYPE SYSTEMSSIMULATIONDEVSLos lenguajes de programación orientados a intents están tomando un rol cada vez más importante en el paradigma de Software Defined Networking (SDN). A pesar de ello, la gran mayoría de estos lenguajes de programación son soluciones acopladas rígidamente a controladores SDN específicos, dificultando su reuso y portabilidad. Además, los lenguajes existentes no suelen implementar herramientas de verificación para detectar errores en los intents antes de que estos sean aplicados a la red que se pretende manipular en forma programática. En esta tesis presentamos Haikunet, un lenguaje de programación orientado a intents que implementa capacidades básicas de verificación y es agnóstico frente a controladores SDN. Esta última propiedad es lograda gracias al uso de TopoGen, una nueva herramienta genérica para traducir y generar topologías de redes desarrollada en el marco de esta tesis. TopoGen es usado para generar modelos de grafos y de simulación para la topología analizada. Sobre el modelo de grafos realizamos verificaciones de propiedades estáticas, mientras que con los modelos de simulación abrimos el camino para la verificación de propiedades dinámicas. La semántica operacional de Haikunet es presentada siguiendo el estilo de Structural Operational Semantics (SOS), esto es, un conjunto de reglas de inferencia que define de manera inductiva la relación de reducción. Estas reglas de inferencia son dadas en dos niveles: 1. En un conjunto de reglas gramaticales de grafos, que describen cómo cada operación del lenguaje afecta a la topología de la red y 2. Mediante reglas de inferencia, que describen el cómputo de un programa en Haikunet. En este trabajo presentamos distintos escenarios, en donde mostramos como Haikunet puede detectar errores en intents antes de que estos sean aplicados en la red. Todos los escenarios considerados fueron probados contra los controladores actualmente soportados por Haikunet: ONOS y OpenDayLight.Intent-oriented programming languages are taking an important role in the Software Defined Networking (SDN) paradigm. Yet, most of these programming languages are rigidly coupled to specific SDN controllers, hindering the re-usability and portability properties of intents. Besides, existent intent-oriented programming languages usually don’t implement a verification system that can detect errors in intents before these are applied to the network that is being manipulated programmatically. In this thesis we present Haikunet, an intent-oriented programming language that implements basic verification capabilities and is agnostic to SDN controllers. This last property is achieved thanks to TopoGen, a new tool developed in this thesis to translate and generate network topologies programmatically. TopoGen is used for generating graphs and simulation models of the network being analyzed. The graph model is used for static verification of properties, while the simulation models open the path for the dynamic verification of properties. Haikunet operational semantics is formally defined in the Structural Operational Semantics (SOS) style, i.e., a set of inference rules inductively defines the reduction relation. Inference rules are given in two levels: 1. A set of graph grammars rules describe how each operation of the language changes the topology of a network, and 2. By inference rules that describe how a Haikunet program computes. In this work, we present different scenarios in which we show how Haikunet can detect errors in intents before these are applied to the network. Every scenario presented was tested against the supported controllers by Haikunet: ONOS and OpenDayLight.Fil: Laurito, Andrés. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.Universidad de Buenos Aires. Facultad de Ciencias Exactas y NaturalesMelgratti, Hernán ClaudioCastro, Rodrigo Daniel2017info:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_7a1finfo:ar-repo/semantics/tesisDeGradoapplication/pdfhttps://hdl.handle.net/20.500.12110/seminario_nCOM000657_Lauritoenginfo:eu-repo/semantics/openAccesshttps://creativecommons.org/licenses/by-nc-sa/2.5/arreponame:Biblioteca Digital (UBA-FCEN)instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesinstacron:UBA-FCEN2025-09-29T13:43:36Zseminario:seminario_nCOM000657_LauritoInstitucionalhttps://digital.bl.fcen.uba.ar/Universidad públicaNo correspondehttps://digital.bl.fcen.uba.ar/cgi-bin/oaiserver.cgiana@bl.fcen.uba.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:18962025-09-29 13:43:37.637Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesfalse
dc.title.none.fl_str_mv Haikunet : an intent programming language for the software defined networking paradigm
title Haikunet : an intent programming language for the software defined networking paradigm
spellingShingle Haikunet : an intent programming language for the software defined networking paradigm
Laurito, Andrés
TOPOLOGYGENERATOR
SDN
PROGRAMMING LANGUAGES
INTENT ORIENTED PROGRAMMING LANGUAGES
VERIFICATION SYSTEM
GRAPH GRAMMARS
INFERENCE RULES
TYPE SYSTEMS
SIMULATION
DEVS
title_short Haikunet : an intent programming language for the software defined networking paradigm
title_full Haikunet : an intent programming language for the software defined networking paradigm
title_fullStr Haikunet : an intent programming language for the software defined networking paradigm
title_full_unstemmed Haikunet : an intent programming language for the software defined networking paradigm
title_sort Haikunet : an intent programming language for the software defined networking paradigm
dc.creator.none.fl_str_mv Laurito, Andrés
author Laurito, Andrés
author_facet Laurito, Andrés
author_role author
dc.contributor.none.fl_str_mv Melgratti, Hernán Claudio
Castro, Rodrigo Daniel
dc.subject.none.fl_str_mv TOPOLOGYGENERATOR
SDN
PROGRAMMING LANGUAGES
INTENT ORIENTED PROGRAMMING LANGUAGES
VERIFICATION SYSTEM
GRAPH GRAMMARS
INFERENCE RULES
TYPE SYSTEMS
SIMULATION
DEVS
topic TOPOLOGYGENERATOR
SDN
PROGRAMMING LANGUAGES
INTENT ORIENTED PROGRAMMING LANGUAGES
VERIFICATION SYSTEM
GRAPH GRAMMARS
INFERENCE RULES
TYPE SYSTEMS
SIMULATION
DEVS
dc.description.none.fl_txt_mv Los lenguajes de programación orientados a intents están tomando un rol cada vez más importante en el paradigma de Software Defined Networking (SDN). A pesar de ello, la gran mayoría de estos lenguajes de programación son soluciones acopladas rígidamente a controladores SDN específicos, dificultando su reuso y portabilidad. Además, los lenguajes existentes no suelen implementar herramientas de verificación para detectar errores en los intents antes de que estos sean aplicados a la red que se pretende manipular en forma programática. En esta tesis presentamos Haikunet, un lenguaje de programación orientado a intents que implementa capacidades básicas de verificación y es agnóstico frente a controladores SDN. Esta última propiedad es lograda gracias al uso de TopoGen, una nueva herramienta genérica para traducir y generar topologías de redes desarrollada en el marco de esta tesis. TopoGen es usado para generar modelos de grafos y de simulación para la topología analizada. Sobre el modelo de grafos realizamos verificaciones de propiedades estáticas, mientras que con los modelos de simulación abrimos el camino para la verificación de propiedades dinámicas. La semántica operacional de Haikunet es presentada siguiendo el estilo de Structural Operational Semantics (SOS), esto es, un conjunto de reglas de inferencia que define de manera inductiva la relación de reducción. Estas reglas de inferencia son dadas en dos niveles: 1. En un conjunto de reglas gramaticales de grafos, que describen cómo cada operación del lenguaje afecta a la topología de la red y 2. Mediante reglas de inferencia, que describen el cómputo de un programa en Haikunet. En este trabajo presentamos distintos escenarios, en donde mostramos como Haikunet puede detectar errores en intents antes de que estos sean aplicados en la red. Todos los escenarios considerados fueron probados contra los controladores actualmente soportados por Haikunet: ONOS y OpenDayLight.
Intent-oriented programming languages are taking an important role in the Software Defined Networking (SDN) paradigm. Yet, most of these programming languages are rigidly coupled to specific SDN controllers, hindering the re-usability and portability properties of intents. Besides, existent intent-oriented programming languages usually don’t implement a verification system that can detect errors in intents before these are applied to the network that is being manipulated programmatically. In this thesis we present Haikunet, an intent-oriented programming language that implements basic verification capabilities and is agnostic to SDN controllers. This last property is achieved thanks to TopoGen, a new tool developed in this thesis to translate and generate network topologies programmatically. TopoGen is used for generating graphs and simulation models of the network being analyzed. The graph model is used for static verification of properties, while the simulation models open the path for the dynamic verification of properties. Haikunet operational semantics is formally defined in the Structural Operational Semantics (SOS) style, i.e., a set of inference rules inductively defines the reduction relation. Inference rules are given in two levels: 1. A set of graph grammars rules describe how each operation of the language changes the topology of a network, and 2. By inference rules that describe how a Haikunet program computes. In this work, we present different scenarios in which we show how Haikunet can detect errors in intents before these are applied to the network. Every scenario presented was tested against the supported controllers by Haikunet: ONOS and OpenDayLight.
Fil: Laurito, Andrés. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
description Los lenguajes de programación orientados a intents están tomando un rol cada vez más importante en el paradigma de Software Defined Networking (SDN). A pesar de ello, la gran mayoría de estos lenguajes de programación son soluciones acopladas rígidamente a controladores SDN específicos, dificultando su reuso y portabilidad. Además, los lenguajes existentes no suelen implementar herramientas de verificación para detectar errores en los intents antes de que estos sean aplicados a la red que se pretende manipular en forma programática. En esta tesis presentamos Haikunet, un lenguaje de programación orientado a intents que implementa capacidades básicas de verificación y es agnóstico frente a controladores SDN. Esta última propiedad es lograda gracias al uso de TopoGen, una nueva herramienta genérica para traducir y generar topologías de redes desarrollada en el marco de esta tesis. TopoGen es usado para generar modelos de grafos y de simulación para la topología analizada. Sobre el modelo de grafos realizamos verificaciones de propiedades estáticas, mientras que con los modelos de simulación abrimos el camino para la verificación de propiedades dinámicas. La semántica operacional de Haikunet es presentada siguiendo el estilo de Structural Operational Semantics (SOS), esto es, un conjunto de reglas de inferencia que define de manera inductiva la relación de reducción. Estas reglas de inferencia son dadas en dos niveles: 1. En un conjunto de reglas gramaticales de grafos, que describen cómo cada operación del lenguaje afecta a la topología de la red y 2. Mediante reglas de inferencia, que describen el cómputo de un programa en Haikunet. En este trabajo presentamos distintos escenarios, en donde mostramos como Haikunet puede detectar errores en intents antes de que estos sean aplicados en la red. Todos los escenarios considerados fueron probados contra los controladores actualmente soportados por Haikunet: ONOS y OpenDayLight.
publishDate 2017
dc.date.none.fl_str_mv 2017
dc.type.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
info:eu-repo/semantics/publishedVersion
http://purl.org/coar/resource_type/c_7a1f
info:ar-repo/semantics/tesisDeGrado
format bachelorThesis
status_str publishedVersion
dc.identifier.none.fl_str_mv https://hdl.handle.net/20.500.12110/seminario_nCOM000657_Laurito
url https://hdl.handle.net/20.500.12110/seminario_nCOM000657_Laurito
dc.language.none.fl_str_mv eng
language eng
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
https://creativecommons.org/licenses/by-nc-sa/2.5/ar
eu_rights_str_mv openAccess
rights_invalid_str_mv https://creativecommons.org/licenses/by-nc-sa/2.5/ar
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
publisher.none.fl_str_mv Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
dc.source.none.fl_str_mv reponame:Biblioteca Digital (UBA-FCEN)
instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
instacron:UBA-FCEN
reponame_str Biblioteca Digital (UBA-FCEN)
collection Biblioteca Digital (UBA-FCEN)
instname_str Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
instacron_str UBA-FCEN
institution UBA-FCEN
repository.name.fl_str_mv Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
repository.mail.fl_str_mv ana@bl.fcen.uba.ar
_version_ 1844618755182690304
score 13.070432