6 - custom mininet topology experiment by dwina fitriyandini siswanto & siti amatullah karimah
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