A melhor maneira de imitar quase qualquer rede no seu laptop!
Mininet 2.3.1b4
O Mininet emula uma rede completa de hosts, links e ligações em uma única máquina. Para criar uma amostra de dois host, rede única, basta executar:
sudo mn
O Mininet é útil para desenvolvimento interativo, teste e demos, especialmente aqueles que usam o OpenFlow e o SDN. Os controladores de rede baseados em Openflow prototipados no Mininet geralmente podem ser transferidos para hardware com alterações mínimas para a execução completa da taxa de linha.
O Mininet cria redes virtuais usando virtualização baseada em processos e namespaces de rede - recursos disponíveis nos kernels do Linux recentes. No Mininet, os hosts são emulados como processos bash
em execução em um espaço para nome de rede; portanto, qualquer código que normalmente executaria em um servidor Linux (como um servidor da Web ou programa cliente) deve funcionar bem dentro de um mininet "host". O Mininet "host" terá sua própria interface de rede privada e só poderá ver seus próprios processos. Os switches no mininet são interruptores baseados em software como o Open VSwitch ou o interruptor de referência do OpenFlow. Os links são pares de Ethernet virtuais, que vivem no kernel Linux e conectam nossos comutadores emulados a hosts emulados (processos).
Mininet inclui:
Um lançador de linha de comando ( mn
) para instanciar redes.
Uma API prática do Python para criar redes de tamanhos e topologias variadas.
Exemplos (nos examples/
diretório) para ajudá -lo a começar.
Documentação completa da API via python help()
docstrings, bem como a capacidade de gerar documentação PDF/HTML com make doc
.
Topologias parametrizadas (subclasses Topo
) usando o objeto mininet. Por exemplo, uma rede de árvores pode ser criada com o comando:
mn --topo tree,depth=2,fanout=3
Uma interface da linha de comando (classe CLI
) que fornece comandos de diagnóstico úteis (como iperf
e ping
), bem como a capacidade de executar um comando em um nó. Por exemplo,
mininet> h11 ifconfig -a
diz ao Host H11 para executar o comando ifconfig -a
Um comando "limpeza" para se livrar de lixo (interfaces, processos, arquivos em /tmp etc.) que podem ser deixados por Mininet ou Linux. Tente isso se as coisas pararem de funcionar!
mn -c
Mininet 2.3.1b4 suporta Python 3 e Python 2
Você pode instalar as versões Python 3 e Python 2 do Mininet lado a lado, mas a instalação mais recente determinará qual versão Python é usada por padrão pelo mn
.
Você pode executar mn
diretamente com o Python 2 ou Python 3, desde que a versão apropriada do mininet seja instalada, por exemplo
$ sudo python2 `which mn`
Mais informações sobre o suporte ao Python 3 e Python 2 podem ser encontradas nas notas de liberação em http://docs.mininet.org.
Suporte ao Ubuntu 22.04 LTS (e 20,04)
Testes mais confiáveis e IC via ações do GitHub
Suporte preliminar para Cgroups V2 (e V1)
Correções menores de bug (2.3.1)
Informações adicionais sobre este lançamento e versões anteriores podem ser encontradas nas notas de lançamento em http://docs.mininet.org.
Consulte INSTALL
para obter instruções e detalhes de instalação.
Além da documentação da API ( make doc
), muitas informações úteis, incluindo um passo a passo Mininet e uma introdução à API Python, estão disponíveis no site Mininet. Há também um wiki que você é incentivado a ler e contribuir, particularmente as perguntas frequentes (FAQ) em http://faq.mininet.org.
Mininet é apoiado pela comunidade. Nós o incentivamos a participar da lista de discussão mininet, mininet-discuss
em:
https://mailman.stanford.edu/mailman/listinfo/mininet-discuss
Mais uma vez obrigado a todos os colaboradores e usuários do Mininet!
O Mininet é um projeto de código aberto e atualmente está hospedado em https://github.com/mininet. Você é incentivado a baixar, examinar e modificar o código e enviar relatórios de bugs, correções de bugs, solicitações de recursos, novos recursos e outros problemas e obter solicitações. Obrigado a todos que contribuíram com o código para o projeto Mininet (consulte os colaboradores para obter mais informações!) É por causa do trabalho duro de todos que o Mininet continua a crescer e melhorar.
Divirta-se! Estamos ansiosos para ver o que você fará com o Mininet para mudar o mundo da rede.
Bob Lantz, em nome dos colaboradores do Mininet