Sunteți pe pagina 1din 10

SDN

Introduo s Prticas

Ferramenta - Mininet (1)


Grande ferramenta de testes e desenvolvimento,
ideal para fase de prototipao. Google usa algo
como mininet antes da implantao.
Rede Virtual na Comodidade da sua Maquina
(Espao do usurio => leve)
Topologias e Quantidades de Ns Arbitrrias
mininet.org:
Mininet is distributed as a virtual machine (VM)
image with all dependencies pre-installed,
runnable on common virtual machine monitors
such as VMware, Xen and VirtualBox. This
provides a convenient container for distribution;
once a prototype has been developed, the VM
image may be distributed to others to run,

Ferramenta - Mininet (2)


Introduo ao Mininet:
https://github.com/mininet/mininet/wiki/Introd
uction-to-Mininet
http://mininet.org/walkthrough/
Vantagem: Emular comportamentos de uma rede
SDN sem dispor do equipamento de fato. Anlise
rpida de resultados.
Limitao: Recursos compartilhados com a
mquina, dificil reproduzir desempenho real.
3

Ferramenta - Mininet (3)


H uma verso de mquina virtual Mininet na
pgina do curso:
http://www.comp.ita.br/~cecilia/ces-35/mininet2.2.0-150106-ubuntu-14.04-server-amd64.zip
Colocar em C:\Users\ITA\VirtualBox VM e extrair o
.zip.
No VirtualBox criar a mquina Virtual Mininet2-2.
Na criao colocar opo de mquina Linux,
Ubuntu, com disco rgido virtual existente. A
imagem a extrada do .zip: mininet-vmx86_64.vmdk.
Nesta mquina, configure dois Adaptadores de

Ferramenta - Mininet (4)


Ative a Mininet2-2.
A VM no tem interface grfica. Atribua IP a
interface HostOnly se ela no tiver ainda (sudo
dhclient eth1 ou
ifconfig eth1 192.168.56.102 ). Pingue o Windows.
Ative o Mininet criando uma rede virtual de 3 ns:
$ sudo mn --topo single,3 --mac --controller remote
--switch ovsk, protocols=OpenFlow13
Este comando cria uma topologia simples com um
switch e 3 ns ligados a ele, com mac.... E um
controlador na porta default 6633. Utiliza um switch
virtual
5

Ferramenta - Mininet (4)


Alguns comandos para investigar a topologia criada:

>
>
>
>
>

nodes
ports
links
dump
h1 ping h2

No vai funcionar ainda pois no h controlador


ativado e portanto o switch no aprendeu ainda o
que fazer quando chega um pacote

Ferramenta - Mininet (5)


Para trabalhar com vrias janelas simultaneamente,
vamos ativar a interface grfica do X11.
Rodar o XMing como admin no Windows. Este
programa vai aceitar a sada grfica no Windows.
Faa um ssh da hospedeira para o Mininet (endereo
fornecido pelo dhclient). No programa putty, coloque
o IP do HostOnly e marque na opo X11 ->
forwarding como Enable , isto quer dizer que a
sada x11 ser enviada para o Xming. Faa
novamente o login como usurio mininet, senha
mininet.
Na janela aberta pelo ssh, chame o emulador de 7

Controlador Ryu (1)

Subir o controlador Ryu.


Se j estiver instalado python e Ryu:
No diretrio /home/mininet/ryu digite
$ sudo ./bin/ryu-manager verbose
ryu/app/simple_switch_13.py

Ao repetir o slide 5 ativao do Mininet o ping


deve funcionar. O script simple_switch_13.py
manipula o evento de chegada de pacote
desconhecido e cria a regra de encaminhamento
adequada.
Inspecione o simple_switch_13.py
8

Controlador Ryu (2)


Se no estiver instalado, comece pelo Python:
sudo apt-get install python-eventlet pythonroutes python-webob python-paramiko
Em seguida o Ryu:
git clone git://github.com/osrg/ryu.git
cd ryu; python ./setup.py install
Algumas maquinas nao rodaram diretamente, foi
preciso instalar o pip para instalar um modulo
complementar:
sudo apt-get update
sudo apt-get install python-pip
pip install `oslo.config<2.0.0`
Site de referncia do Ryu:
https://osrg.github.io/ryu/
Um tutorial simples:
9

Script de Ativao

possvel escrever scripts para ativar o


mininet:

A API de Mininet permite criar redes customizadas


com algumas poucas linhas de Python:
from mininet.net import Mininet
from mininet.topolib import TreeTopo
tree4 = TreeTopo(depth=2,fanout=2)
net = Mininet(topo=tree4)
net.start()
h1, h4 = net.hosts[0], net.hosts[3]
print h1.cmd('ping -c1 \%s' \% h4.IP())
net.stop()
Cria uma pequena rede (4 hosts, 3 switches), e
realiza pings de um host para o outro (por cerca 10

S-ar putea să vă placă și