6 - custom mininet topology experiment by dwina fitriyandini siswanto & siti amatullah karimah

Post on 12-Jul-2015

1.908 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

EKSPERIMEN

CUSTOM TOPOLOGY

DI MININETDwina Fitriyandini Siswanto

Siti Amatullah Karimah

Mininet Topology

Single Topology

Tree Topology Linear Topology

Topology Mininet

$ sudo mn --topo single,3 --mac --switch ovsk --

controller=remote

$ sudo mn --topo linear,4 --mac --switch ovsk --

controller=remote

$ sudo mn --topo tree,3 --mac --switch ovsk --

controller=remote

Cara Membuat Custom Topology di

Mininet

1. Menulis kode dalam format .py

2. Menggambar topology dengan Virtual Network

Description (VND)

Kemudian diexport ke dalam format file yang dapat di-

running oleh mininet.

Mengaktifkan Controller POX

Pada mininet ada beberapa pilihan controller yang dapat

digunakan diantaranya :

• pox

• nox

• ryu

• Opendaylight

• Floodlight

• Beacon , dll

• Namun eksperimen kali ini dilakukan dengan

mengaktifkan controler POX.

Mengaktifkan Controller POX

• Controller POX diaktifkan dengan menjalankan command

sebagai berikut

cd /home/ubuntu/pox && ./pox.py log.level --DEBUG

forwarding.tutorial_l2_hub

Membuat custom topology secara

manual pada mininet

1. Buat file .py dari topologi yang diinginkan

kemudian save didalam folder mininet/custom/

2. Run dengan command

$

sudo mn --custom <custom_topology> --topo mytopo

--mac --switch ovsk –controller=remote

Membuat custom topology dengan

VND 1. Akses VND secara online pada situs

http://www.ramonfontes.com/vnd/

2. Gambar topologi yang diinginkan

3. Klik File>Export>Export to mininet, kemudian ubahformat file menjadi .py

4. Pada mininet, copy file ke dalam folder mininet/examples

5. Buat agar file vnd dapat dieksekusi oleh mininetdengan bantuan chmod +x

$ chmod +x <script topology vnd>

6. Jalankan script menggunakan command

$ sudo ./<script topology vnd>

Eksperimen Topologi

Create Topology via VND

Define Flow Table

Basic Config & QoS Config

Queue Config

Eksperimen Topologi 1

Eksperimen Topologi 1from mininet.topo import Topo

class MyTopo( Topo ):

"Simple topology example.“

def __init__( self ):

"Create custom topo."

# Initialize topology

Topo.__init__( self )

# Add hosts and switches

h1 = [ self.addHost( 'h1')]

h2 = [ self.addHost( 'h2')]

h3 = [ self.addHost( 'h3')]

h4 = [ self.addHost( 'h4')]

h5 = [ self.addHost( 'h5')]

h6 = [ self.addHost( 'h6')]

h7 = [ self.addHost( 'h7')]

s1 = [ self.addSwitch( 's1')]

s2 = [ self.addSwitch( 's2')]

s3 = [ self.addSwitch( 's3')]

s4 = [ self.addSwitch( 's4')]

#host to switch links

self.addLink('s1','s2')

self.addLink('s1','s3')

self.addLink('s1','h1')

self.addLink('s2','h2')

self.addLink('s3','s4')

self.addLink('s3','h3')

self.addLink('s3','h4')

self.addLink('s4','h5')

self.addLink('s4','h6')

self.addLink('s4','h7')

topos = { 'mytopo': ( lambda: MyTopo()}

Eksperimen Topologi 1

Eksperimen Topologi 1

Eksperimen Topologi 1

Eksperimen Topologi 2

Eksperimen Topologi 2from mininet.topo import Topo

class MyTopo( Topo ):

"Simple topology example."

def __init__( self ):

"Create custom topo."

# Initialize topology

Topo.__init__( self )

# Add hosts and switches

h1 = [ self.addHost( 'h1')]

h2 = [ self.addHost( 'h2')]

h3 = [ self.addHost( 'h3')]

h4 = [ self.addHost( 'h4')]

h5 = [ self.addHost( 'h5')]

h6 = [ self.addHost( 'h6')]

}

h7 = [ self.addHost( 'h7')]

h8 = [ self.addHost( 'h8')]

h9 = [ self.addHost( 'h9')]

h10 = [ self.addHost( 'h10')]

h11 = [ self.addHost( 'h11')]

h12 = [ self.addHost( 'h12')]

s1 = [ self.addSwitch( 's1')]

s2 = [ self.addSwitch( 's2')]

s3 = [ self.addSwitch( 's3')]

s4 = [ self.addSwitch( 's4')]

s5 = [ self.addSwitch( 's5')]

#host to switch links

self.addLink('s1','s2')

self.addLink('s1','s3')

self.addLink('s1','h1')

Eksperimen Topologi 2

self.addLink('s1','h2')

self.addLink('s2','h3')

self.addLink('s2','h4')

self.addLink('s2','h5')

self.addLink('s3','s4')

self.addLink('s3','h6')

self.addLink('s3','h7')

self.addLink('s4','s5')

self.addLink('s4','h8')

self.addLink('s5','h9')

self.addLink('s5','h10')

self.addLink('s5','h11')

self.addLink('s5','h12')

topos = { 'mytopo': ( lambda: MyTopo() ) }

Eksperimen Topologi 2

Eksperimen Topologi 2

Eksperimen Topologi 2

Eksperimen Topologi 3

Eksperimen Topologi 3

Eksperimen Topologi 3

Eksperimen Topologi 3

Eksperimen Topologi 4

Eksperimen Topologi 4

Eksperimen Topologi 4

Eksperimen Topologi 4

Eksperimen Topologi 5

Fully-Connected

Eksperimen Topologi 5

Eksperimen Topologi 5

Eksperimen Topologi 5

top related