51 research outputs found

    Performance benchmarking of SDN experimental platforms

    Get PDF
    There is a huge number of SDN experimental platforms available such as simulators, emulators and actual testbeds, each of them having different performance metrics. This paper presents a series of performance tests, that can be performed in each of the available platforms, in order to evaluate and rank them in various performance categories. These tests cover performance categories such as experiment setup/teardown time, resources needed in the form of CPU and RAM, as well as the fair use and fair share of those resources by the experimental platform. In addition, ping delay, response failure rate and scalability are also measured. All the performance tests presented in this paper have been implemented in Mininet emulator in order to evaluate its performance. After the data analysis, the most noticeable results are (i) response failure increases as the number of links increases, in some cases by 95%, (ii) CPU load balancing is more efficient as the number of nodes increases and (iii) initial ping delay is huge compared to average ping delay, in some cases up to 1725 times larger. Finally, performance results indicate that Mininet has several scalability issues

    Performance Analysis of Different Open Flow Based Controller Over Software Defined Networking

    Get PDF
    Software Defined Networking (SDN) is a new networking paradigm where control plane is separated from data plane. Over the past several years, SDN has emerged as a compelling paradigm for developing and deploying new network capabilities and services. OpenFlow is the most commonly deployed Software Defined Networking architecture. Multiple networking switches can be controlled by a single centralized controlled OpenFlow controller. Different Python and Java based OpenFlow controller are available for Software Defined Networking. This paper implements Ryu, POX and Pyretic OpenFlow based Python controller in tree networking topology over Software Defined Networking. The result of this paper shows that these Python based OpenFlow controller performs well over SDN. All the implementation of different controller has been done using Mininet Emulator. The result of this paper also shows Pyretic controller has an excellent performance over Software Defined Networking compare to POX and Ryu Controller

    Analyzing the Performance of Software Defined Networks vs Real Networks

    Full text link
    [EN] Emulators and simulators provide an easy way to reduce hardware needs in experiments. Because of that, network researchers use applications that allow them to emulate or simulate networks, like Mininet in Software Defined Networks. It is desired to obtain very close results between the ones given in a virtual network and the ones obtained when the real network hardware is implemented in order to avoid using too much hardware in complex experiments without gathering unreal results. In this paper, we compare the experimental results obtained when a virtual network is generated by using Mininet versus a real implemented network. We have compared them varying the Maximum Transmission Unit (MTU) on Internet Protocol version 4 (IPv4) packets. Ethernet, Fiber Distributed Data Interface (FDDI), and Wireless Local Area Network 802.11 (WLAN 802.11) MTUs have been used in our experimental tests. We have worked with different link capabilities and generated traffic with different bandwidth.This work has been supported by the “Ministerio de Economía y Competitividad”, through the “Convocatoria 2014. Proyectos I+D - Programa Estatal de Investigación Científica y Técnica de Excelencia” in the “Subprograma Estatal de Generación de Conocimiento”, Project TIN2014- 57991-C3-1-P and the “Programa para la Formación de Personal Investigador – (FPI-2015-S2-884)” by the “Universitat Politècnica de València”.Jimenez, JM.; Romero Martínez, JO.; Rego Máñez, A.; Lloret, J. (2016). Analyzing the Performance of Software Defined Networks vs Real Networks. International Journal On Advances in Networks and Services. 9(3-4):107-116. http://hdl.handle.net/10251/8365210711693-

    Control logic distribution trade-offs in software-defined wireless networks

    Get PDF
    The SDN (Software-Defined Networks) architecture separates the data and the control planes of the networks. It logically centralizes the control of a network in a central point that is an SDN controller, which acts as a brain of the network and is in charge of telling each network node how to forward incoming packets by installing the appropriate forwarding rules. One of the main advantages it brings is programmability through this single entity (the logical controller) with which network management applications must interact to apply their policies. Through agreed-upon APIs, the network managers can exploit the full potential of SDN. SDN generally assumes ideal control channels between the SDN controller and the network nodes, which may not be the case in challenging environments that are becoming more common due to dense deployment of small cells (SCs) with reduced coverage in 5G and beyond 5G deployments. In 5G and beyond 5G use cases, cost-effective wireless transport networks are required to connect the SCs. In this context, mmWave technology is a good player to connect the SCs as mmWave provides larger radio spectrum chunks that in turn provide larger bandwidth and higher data rate. To manage the dense deployment of SCs in the mobile networks, on the network management/control front, network programmability and virtualization are also an integral part of 5G and beyond 5G networks. In this regard, to provide end-to-end connectivity, management and orchestration of all the segments of the networks ranging from RAN (Radio Access Network), transport network to the core is vital. On the transport networks side (the main focus of the dissertation), SDN plays an important role as SDN enables programmability and virtualization in the network. Though SDN Provides huge flexibility in network management by splitting the control plane from the data plane, it has some limitations in wireless networks context as separation of the control plane from the data plane introduce the extra points of failure in the SDN paradigm (e.g., control communication channel failure, SDN controller failure). In the wide-area networks (WAN) scenarios where in-band channels (e.g., microwave or mmWave links) are responsible to carry control traffic between the forwarding nodes and the SDN controller, the assumption of the availability of a reliable network may not be possible as the performance of the wireless link changes with the environmental conditions, which leads to a high risk of experiencing channel impairments, which might cause centralized SDN operation failure by affecting communication between the transport component of SCs and the SDN controller. To overcome SDN from failure, the dissertation presents a hybrid SDN scheme that explores the benefits of centralized and distributed operations depending on control communication channel conditions. Our hybrid SDN approach combines both centralized and distributed modes in the same node to form a hybrid control plane architecture. We introduce a local agent in the node that is composed of a monitoring framework to detect reliability of the control communication channel and a decision module that conceive a novel control logic switching algorithm to make a decision whether to operate in a centralized or distributed mode. We evaluate the proposed solution under a variety of unreliable network conditions (e.g., link impairments, control packet loss) to investigate the operational performance of the hybrid SDN during high loss conditions. The experimental results show that the proposed hybrid SDN solution substantially improves the aggregated throughput, particularly when control channel packet loss ratios increase, which in turn keeps the network operational in hard conditions where the centralized SDN would result in a non-operational network.La arquitectura SDN (Software-Defined Networks) separa los planos de datos y control de las redes. Centraliza lógicamente el control de una red en un controlador SDN. Una de las principales ventajas que aporta es la programabilidad a través de esta única entidad (el controlador lógico) con la que las aplicaciones de gestión de red deben interactuar para aplicar sus políticas. SDN generalmente asume canales de control ideales entre el controlador SDN y los nodos de la red, lo que puede no ser el caso en entornos inalámbricos (o menos estables) que se están volviendo más comunes debido al despliegue denso de celdas pequeñas (SC) con cobertura reducida en 5G (y más allá). En los casos de uso de futuras redes, se requieren redes de transporte inalámbricas rentables para conectar los SC. En este contexto, la tecnología mmWave es apropiada para conectar las SC, ya que mmWave proporciona fragmentos de espectro más grandes que, a su vez, proporcionan un mayor ancho de banda y una mayor velocidad de datos. Para administrar el despliegue denso de SC en redes móviles, se requiere administración/control de la red, de la virtualización y de la programabilidad de la red, ay que son parte integral de las redes 5G/6G. En este sentido, para proporcionar conectividad de extremo a extremo, es vital la gestión y la orquestación de todos los segmentos de red que van desde la RAN (Red de acceso radio), la red de transporte hasta el núcleo de la red. Por lo que respecte a las redes de transporte (el enfoque principal de la tesis), SDN juega un papel importante ya que SDN permite la programabilidad y la virtualización en la red. Aunque SDN proporciona una gran flexibilidad en la gestión de redes al dividir el plano de control del plano de datos, tiene algunas limitaciones en el contexto de las redes inalámbricas, ya que la separación del plano de control del plano de datos introduce puntos adicionales de fallo en el paradigma SDN (p. ej., fallo del canal de comunicación, fallo del controlador SDN). En los escenarios de redes de área extendida (WAN) donde los canales en-banda (p. ej., enlaces de microondas o mmWave) son responsables de transportar el tráfico de control entre los nodos de red y el controlador SDN, la suposición de la disponibilidad de una red confiable puede no ser posible, ya que el rendimiento del enlace inalámbrico cambia con las condiciones ambientales, lo que conduce a un alto riesgo de experimentar deterioros en el canal, lo que podría causar errores en la operación SDN centralizada al afectar la comunicación entre el componente de transporte de los SC y el controlador SDN. Para superar estos problemas de SDN, la tesis presenta un esquema de SDN híbrido que explora los beneficios de las operaciones centralizadas y distribuidas según sean las condiciones del canal de comunicación de control. Nuestro enfoque SDN híbrido combina los modos centralizados y distribuidos en el mismo nodo para formar una arquitectura de plano de control híbrido. Introducimos un agente local en el nodo que se compone de un marco de monitorización para detectar la confiabilidad del canal de comunicación de control y un módulo de decisión que concibe un algoritmo de conmutación de lógica de control novedoso para tomar la decisión de operar en un modo centralizado o distribuido. Evaluamos la solución propuesta bajo una variedad de condiciones de red poco confiables (p. ej., deterioros de enlace, pérdida de paquetes de control) para investigar el rendimiento operativo de la SDN híbrida durante condiciones de alta pérdida. Los resultados experimentales muestran que la solución SDN híbrida propuesta mejora sustancialmente el rendimiento agregado, particularmente cuando aumentan las tasas de pérdida de paquetes del canal de control, lo que a su vez mantiene la red operativa en condiciones difíciles donde la SDN centralizada daría como resultado una red no operativa.Postprint (published version

    MaxHadoop: An Efficient Scalable Emulation Tool to Test SDN Protocols in Emulated Hadoop Environments

    Get PDF
    AbstractThis paper presents MaxHadoop, a flexible and scalable emulation tool, which allows the efficient and accurate emulation of Hadoop environments over Software Defined Networks (SDNs). Hadoop has been designed to manage endless data-streams over networks, making it a tailored candidate to support the new class of network services belonging to Big Data. The development of Hadoop is contemporary with the evolution of networks towards the new architectures "Software Defined." To create our emulation environment, tailored to SDNs, we employ MaxiNet, given its capability of emulating large-scale SDNs. We make it possible to emulate realistic Hadoop scenarios on large-scale SDNs using low-cost commodity hardware, by resolving a few key limitations of MaxiNet through appropriate configuration settings. We validate the MaxHadoop emulator by executing two benchmarks, namely WordCount and TeraSort, to evaluate a set of Key Performance Indicators. The tests' outcomes evidence that MaxHadoop outperforms other existing emulation tools running over commodity hardware. Finally, we show the potentiality of MaxHadoop by utilizing it to perform a comparison of SDN-based network protocols

    How far can we go? Towards Realistic Software-Defined Wireless Networking Experiments

    Get PDF
    International audienceSoftware-Defined Wireless Networking (SDWN) is an emerging approach based on decoupling radio control functions from the radio data plane through programmatic interfaces. Despite diverse ongoing efforts to realize the vision of SDWN, many questions remain open from multiple perspectives such as means to rapid prototype and experiment candidate software solutions applicable to real world deployments. To this end, emulation of SDWN has the potential to boost research and development efforts by re-using existing protocol and application stacks while mimicking the behavior of real wireless networks. In this article, we provide an in-depth discussion on that matter focusing on the Mininet-WiFi emulator design to fill a gap in the experimental platform space. We showcase the applicability of our emulator in an SDN wireless context by illustrating the support of a number of use cases aiming to address the question on how far we can go in realistic SDWN experiments, including comparisons to the results obtained in a wireless testbed. Finally, we discuss the ability to replay packet-level and radio signal traces captured in the real testbed towards a virtual yet realistic emulation environment in support of SDWN research

    Performance benchmarking of SDN experimental platforms

    Get PDF
    There is a huge number of SDN experimental platforms available such as simulators, emulators and actual testbeds, each of them having different performance metrics. This paper presents a series of performance tests, that can be performed in each of the available platforms, in order to evaluate and rank them in various performance categories. These tests cover performance categories such as experiment setup/teardown time, resources needed in the form of CPU and RAM, as well as the fair use and fair share of those resources by the experimental platform. In addition, ping delay, response failure rate and scalability are also measured. All the performance tests presented in this paper have been implemented in Mininet emulator in order to evaluate its performance. After the data analysis, the most noticeable results are (i) response failure increases as the number of links increases, in some cases by 95%, (ii) CPU load balancing is more efficient as the number of nodes increases and (iii) initial ping delay is huge compared to average ping delay, in some cases up to 1725 times larger. Finally, performance results indicate that Mininet has several scalability issues

    A state consistency framework for programmable network data planes

    Get PDF
    Tese de mestrado, Engenharia Informática (Arquitetura, Sistemas e Redes de Computadores) Universidade de Lisboa, Faculdade de Ciências, 2021A tecnologia de Rede Definida por Software (SDN – Software-Defined Networking) é um método de gestão de rede que permite um planeamento dinâmico e programaticamente eficiente da mesma, a fim de melhorar o seu desempenho e monitorização. SDN tenta centralizar o cérebro da rede num único dispositivo, desassociando o processo de encaminhamento de pacotes (Data Plane), do processo de roteamento (Control Plane). A constituição do control plane consiste em um ou mais controladores, nomeadamente, aplicações que atuem de forma estratégica, que são referenciadas como sendo o cérebro da rede SDN, onde toda a inteligência é agregada. Esta dissertação foca-se em redes programáveis, o que significa que o programador da rede, pode controlar a forma como um dado dispositivo controla o fluxo de pacotes, por meio de software, sendo executado de forma independentemente do hardware da rede. Dado que a cada dia que passa as SDNs tornam-se cada vez mais importantes, permitindo aos programadores optar por diferentes métodos e formas para desenhar, implementar, e operacionalizar as redes com que diariamente se deparam. Assim, uma ferramenta que permita garantir uma comunicação fidedigna entre os dispositivos de rede, assume um papel cada vez mais relevante. Existe também o objetivo desejável de manter um estado global partilhado entre os dispositivos que constituem a rede. A crescente necessidade de garantir a segurança das redes, que cada vez mais são o veículo de transmissão da informação neste mundo globalizado e por conseguinte a proteção dos dados que nelas circulam, provocam de uma forma global um crescente interesse na atividade dos atacantes. Cada vez mais utilizam ferramentas e conceitos mais sofisticados tentando quebrar ou contornar as regras de segurança na tentativa de obter gratificação pessoal, ou porque, ao existirem melhorias numa nova área, é provável que com a sua introdução, estas insiram novas vulnerabilidades que possam ser exploradas por esses atacantes. Além disso, existe o fato que, no campo das SDNs, muitos propuseram mecanismos de comunicação entre os dispositivos do plano de dados, ou seja, switches, e mesmo entre estes. No entanto, dada a inexistência de uma maneira globalizada para realizar esta comunicação, este trabalho visa propor uma estrutura de consistência de estado que aproveite a abstração de uma máquina de estados, usando atualizações de rede consistentes, entre switches adjacentes, por meio da clonagem de pacotes, oferecida pela linguagem de programação P4 e por piggybacking de pacotes que já se encontravam a circulação na rede. Também é usada uma média movel exponencial ponderada, onde determinada condição é alcançada, e de seguida acionamos o recurso P4, anteriormente mencionado, i.e., acionamos a clonagem de pacotes, garantindo assim que todos os pacotes chegam ao seu destino. Além disso, usamos ferramentas para realizar as verificações bit a bit, considerando que a linguagem P4, ainda carece de uma forma para aceder a partes específicas do pacote que circulam na rede. Também utilizamos uma estrutura capaz de armazenar qualquer tipo de informação, i.e., os registos, nos quais decidimos armazenar todos os dados por nós considerados relevantes e a serem utilizados durante a execução. Concretamente, guardamos toda a informação relativa, tanto aos endereços de origem e ao endereço de destino do pacote, bem como os portos de entrada e os portos de saída do switch. Foi também ponderado o uso de outra linguagem de programação em vez do P4, porém esta outra linguagem, o Domino, não nos oferece a característica principal que é possibilitar a criação novos cabeçalhos, pois este era o objetivo inicial quando a linguagem foi procurada, acabando por ser posto de parte o Domino e a escolha recaiu sobre o P4, como a linguagem de programação para a implementação da ferramenta. Tendo em conta as ferramentas de simulação e de emulação dos casos de teste, á frente apresentados, foram estudadas outras ferramentas, como o NS-3 e o Estinet. Pelo conhecimento prévio e experiência na utilização do Mininet, para simular redes de casos-tipo e atendendo que uma das características chave do Mininet é similar á do NS-3 e ambas têm um mecanismo de virtualização leve, optamos pelo Mininet, pois o Mininet possibilita-nos o uso direto do OpenFlow, sem a necessidade de adicionar extras, ao contrário das outras duas ferramentas atrás referidas, que necessitam de adicionar esses extras, para suportar o uso do OpenFlow. Para a implementação da ferramenta inicialmente, consideramos a utilização um método de pacotes de tipo probe, e depois atentamos uma metodologia baseada em um novo cabeçalho, para implementar a ferramenta ao invés da utilizada, i.e., o piggybacking. Primeiramente, atentamos utilizar pacotes do tipo probe que seriam gerados pelos switches, e conforme acontecessem alterações na rede, e.g., aumentar ou diminuir a quantidade de dispositivos de rede, envisionamos que os pacotes seriam enviados pelo switch e eles continham informação de modo aos switches restantes, poderem ter conhecimento dos eventos. A outra metodologia que atentamos consistia em criar um novo cabeçalho no qual colocaríamos toda a informação que iria ser necessária para o correto funcionamento da ferramenta proposta. Contudo, e após exaustivas tentativas de testes para concretizar a sua implementação, esta apresentou demasiados problemas. Deparamo-nos com o problema fulcral que era saber onde colocar nova informação dentro dos componentes que formam a pilha de cabeçalhos da internet, uma vez que esta, é de uso globalizado e quebrar ou tentar alterar a sua estrutura, significaria que o pacote seria puramente descartado sem a possibilidade de atentar qualquer intervenção nele. Para avaliar a solução proposta, coletamos uma ampla quantidade de informações através de um programa corrido nos emissores e bem como nos recetores dos pacotes e para isso usamos dois cenários de teste distintos. No primeiro cenário, usando uma rede com um pequeno número de dispositivos, mais concretamente, 4 switches e 3 hosts, coletamos o número de pacotes recebidos no destino e o número de pacotes retransmitidos na origem. No segundo cenário, usamos uma rede com um número maior de dispositivos em comparação com o primeiro cenário, ou seja, desta vez a rede seria composta por 8 switches e 4 hosts, e nela coletamos o mesmo tipo de dados, isto é, a quantidade de pacotes recebidos no destino, após o host ter sido reajustado de modo a fazer uso desta nova rede. Também coletamos o número de pacotes retransmitidos na origem. Após uma análise extensa dos resultados obtidos, foi possível verificar que apesar de falhas nos links superiores a 70%, ainda assim conseguimos garantir que mais de 95% dos pacotes chegam com sucesso ao seu destino. Apresentando os resultados com mais detalhe, no primeiro cenário, relativamente ao número de pacotes recebidos no destino, em 75% das execuções realizadas, a nossa solução, assegurou que perto de 100 pacotes chegassem ao seu destino em cada execução. Em referência ao segundo cenário, em 79% das execuções, a nossa solução conseguiu entregar perto de 99 pacotes por execução e que estes alcançaram o seu destino. No que diz respeito ao número de pacotes retransmitidos, nestes encontramos três tipos de retransmissões. As retransmissões normais, que como o nome sugere, são aquelas em que nada de extraordinário acontece, ou seja, os pacotes são simplesmente clonados e são novamente enviados por uma rota alternativa para seu destino. Identificamos também, retransmissões com pacotes espúrios, estas retransmissões são verdadeiramente aleatórias e repetem-se em 1 ou 2 pacotes em todos os enviados. Por último, existem as retransmissões que ocorreram e que foram afetadas pelo problema de congestionamento de pacotes ou ciclos de CPU do PC quando este se encontrava mais congestionado ou ocupado. Nestas circunstâncias os pacotes foram simplesmente marcados, para existir a possibilidade de distingui-los dos restantes. Em referência ao número de pacotes retransmitidos, no primeiro cenário a nossa solução obteve em 75% das execuções, perto de 98 pacotes retransmitidos por cada uma dessas execuções. No segundo cenário, houve uma consistência nos tipos de retransmissões, pois podemos constatar que se mantiveram os mesmos tipos, todavia foi-nos também possível verificar uma diminuição considerável dos tipos de retransmissão com pacotes espúrios e nas retransmissões afetadas pelo problema de congestionamento de pacotes ou ciclos de CPU do PC quando este se encontrava mais congestionado ou ocupado. Pelo que neste segundo senário foi notável um aumento do número de pacotes retransmitidos. Para concluir, este trabalho procurou resolver o problema de inconsistência de informação presente nos dispositivos de rede ou mesmo entre eles, i.e, switches, para isso propomos uma ferramenta que garanta consistência de estado para data planes programáveis e que aproveite a clonagem de pacotes através da aplicação de uma condição ligada á média movel exponencial ponderada e piggybacking usando P4. É notável que mesmo com falhas nos links superiores a 70%, a nossa solução mesmo assim, consegue garantir que 95% dos pacotes que foram enviados, chegam aos seus destinos. Focando-nos no trabalho futuro, poderia ser utilizado o conceito de tuplos para tornar o código mais simples e tornar o acesso a certas partes do pacote ainda mais simples. Para finalizar esta dissertação, contribui uma nova ferramenta que garante consistência de estado para data planes programáveis que nos garante que os pacotes que circulam dentro de uma rede não são perdidos utilizando a clonagem de pacotes através da utilização de uma média movel, também possibilita a utilização de piggybacking através da criação de espaço no pacote que circulam na rede. Por fim, baseado nesta dissertação foi submetido um artigo para uma conferência internacional.The Software-Defined Networking (SDN) technology is a method of network management that allows dynamic, programmatically efficient network planning to improve its performance and monitoring. This dissertation focuses on programmable networks, which means that the network programmer can control how the network devices control packet flows via software that runs independently from network hardware. Given that SDN at each passing day becomes more and more prominent, a framework that can ensure reliable communication and a global state among devices become more and more important. There is also the desirable goal of being able to maintain a global shared state among all network devices. Also, there is the fact that in the field of SDNs, many have proposed communication mechanisms among data plane devices, i.e., switches, and between the latter and the controller. However, given the inexistence of a widespread manner to do so, this work aims at proposing a state consistency framework that leverages on a state machine abstraction using consistent network updates among adjacent switches through packet cloning offered by the P4 programming language and packet piggybacking. We also use a moving average that when a condition is met, such P4 feature is triggered, hence ensuring that all packets arrive at their destination. Also, we use tools to perform bitwise checks, considering that the P4 language lacks ways to access specific parts of a packet. We also use a structure that is capable of storing any type of information, i.e., registers, in which we decide to store the data to be used. To evaluate the proposed solution, we collected a broad amount of information using two scenarios. In the first scenario using a network with a small number of devices, we collect the number of packets received at the destination and the number of packets retransmitted at the sender. In the second scenario this time, using a network with a higher number of devices compared to the first scenario, we collect the same type of data, that is, the number of packets received at the destination after it has been readjusted to mirror this new network structure. We also collect the number of packets retransmitted at the sender. After an extensive analysis of the results obtained, it was possible to verify that despite link failures higher than 70%, we still managed to have more than 95% of packets arriving successfully
    corecore