SDN Digest - Seis emuladores de código aberto

Na última vez, fizemos uma seleção de controladores SDN de código aberto . Hoje, os emuladores abertos de redes SDN são os próximos. Todo mundo que está interessado é convidado a se divertir.

/ Flickr / dennis van zuijlekom / cc



Mininet


A ferramenta permite que você crie uma rede controlada por software em uma máquina (virtual ou física). Basta digitar o comando: $ sudo mn. Segundo os desenvolvedores, o Mininet é adequado para implantar ambientes de teste.

Por exemplo, os professores de Stanford (onde desenvolveram o Mininet) usam o utilitário durante as aulas práticas na universidade. Ajuda os alunos a desenvolver habilidades de rede. Algumas das tarefas e demos podem ser encontradas no repositório no GitHub.

O Mininet também é adequado para testar topologias SDN personalizadas. Uma rede virtual é implantada com todos os comutadores, controladores e hosts e, em seguida, seu desempenho é verificado usando scripts Python. Em seguida, as configurações são transferidas do Mininet para a rede real.

Das deficiências da solução, os especialistas destacam a falta de suporte para o Windows. Além disso, o Mininet não é adequado para trabalhar com redes de grande escala, pois o emulador é executado na mesma máquina - talvez não haja recursos de hardware suficientes.

O Mininet está licenciado sob o BSD Open Source e está desenvolvendo ativamente. Todos podem fazer uma contribuição - sobre como fazer isso, há informações no site oficial do projeto e no repositório .



ns-3


Simulador para modelagem de rede de eventos discretos . Inicialmente, a ferramenta foi concebida como um utilitário educacional, mas hoje é usada para testar ambientes SDN. Guias sobre como trabalhar com o ns-3 estão no site com a documentação do projeto .

Entre as vantagens do utilitário estão o suporte para soquetes e a biblioteca Pcap para trabalhar com outras ferramentas (como o Wireshark), além de uma comunidade responsiva.

As desvantagens incluem uma visualização relativamente ruim. O NetAnim é responsável por exibir a topologia. Além disso, o ns-3 não suporta todos os controladores SDN.



Leia o tópico em nosso blog corporativo:




Opennet


Este emulador SDN é construído com base em duas ferramentas anteriores - Mininet e ns-3. Combina os pontos fortes de cada um deles. Para que as soluções funcionem juntas, o OpenNet usa uma biblioteca de ligação Python.

Assim, o Mininet no OpenNet é responsável por emular os switches OpenFlow, fornecendo CLIs e virtualização. Quanto ao ns-3, ele emula os modelos que não estão no Mininet. O guia de operação pode ser encontrado no GitHub.Há links adicionais para materiais relacionados.




/ PxHere / PD



Containerernet


Este é um garfo do Mininet para trabalhar com contêineres de aplicativos. Os contêineres do Docker atuam como hosts em redes emuladas. A solução foi criada para permitir que os desenvolvedores experimentem nuvem, periféricos, computação em nevoeiro e NFV. O sistema já foi usado pelos autores do SONATA NFV para criar um sistema de orquestração em redes 5G virtualizadas. O Containernet é o núcleo da plataforma de emulação de NFV.

Você pode instalar o Containernet usando um guia no GitHub .



Tinynet


Uma biblioteca leve que ajuda a prototipar rapidamente redes SDN. Uma ferramenta de API escrita em Go permite emular qualquer topologia de rede. A própria biblioteca "pesa" um pouco, devido à qual está instalada e é executada mais rapidamente que os análogos. O Tinynet também pode ser integrado aos contêineres do Docker.

A ferramenta não é adequada para emular redes de larga escala devido à funcionalidade limitada. Mas seja útil ao trabalhar em pequenos projetos pessoais ou em protótipos rápidos.

Implementações de amostra e comandos para instalar o Tinynet estão disponíveis no repositório GitHub .



Maxinet


Essa ferramenta possibilita o uso do Mininet em várias máquinas físicas e o trabalho com redes SDN em larga escala. Cada uma das máquinas - Trabalhadores - lança o Mininet e emula sua parte da rede geral. Switches e hosts se comunicam usando túneis GRE . Para gerenciar os componentes dessa rede, o MaxiNet fornece uma API.

O MaxiNet ajuda você a dimensionar redes rapidamente e otimizar a alocação de recursos. O MaxiNet também possui recursos de monitoramento, uma CLI integrada e a capacidade de se integrar ao Docker. No entanto, a ferramenta não sabe como emular a operação de um comutador para várias máquinas.

O código fonte do projeto está no GitHub . O guia de instalação e o guia de início rápido podem ser encontrados na página oficial do projeto .



Leia o tópico em nosso blog corporativo:

Source: https://habr.com/ru/post/pt446634/


All Articles