Mininet Python API Reference Manual

Share Embed Donate


Short Description

Description : Python API manual for mininet...

Description

Mininet Python API Reference Manual Generated by Doxygen 1.8.3.1 Tue Jul 30 2013 16:44:13

Contents

1

Namesp Nam espace ace Ind Index ex 1.1

2

3

Class Cla ss Hie Hierar rarch chy y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3 5

Clas Cl ass s Li List st . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Namespace Names pace Docum Documentat entation ion 4.1

5

1

Clas Cl ass s In Inde dex x 3.1 3. 1

4

Namesp Nam espace ace Lis Listt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Hierar Hie rarch chica icall Ind Index ex 2.1

3

1

7

topo Names Namespace pace Ref Reference erence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

4.1.1 4.1. 1

7

Detailed Deta iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Class Cla ss Doc Docume umenta ntatio tion n 5.1

5

9

mininet.c minin et.cli.CL li.CLII Class Ref Reference erence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1.1 5.1. 1

Detailed Deta iled Descrip Description tion

5.1.2 5.1. 2

Memberr Funct Membe Function ion Docum Documentat entation ion

9

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5.1. 5. 1.2. 2.1 1

defa de faul ultt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5.1. 5. 1.2. 2.2 2

do_d do _dpc pctl tl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5.1. 5. 1.2. 2.3 3

do_d do _dum ump p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5.1. 5. 1.2. 2.4 4

do_g do _gte term rm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5.1. 5. 1.2. 2.5 5

do_h do _hel elp p

5.1. 5. 1.2. 2.6 6

do_i do _int ntfs fs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5.1. 5. 1.2. 2.7 7

do_i do _ipe perf rf

5.1.2. 5.1 .2.8 8

do_ipe do_ iperfu rfudp dp

5.1. 5. 1.2. 2.9 9

do_l do _lin ink k . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5.1.2.10 5.1. 2.10 do_ne do_nett . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.1.2.11 5.1. 2.11 do_no do_nodes des

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5.1.2.12 5.1. 2.12 do_no do_noecho echo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.1.2.13 5.1. 2.13 do_pi do_pingall ngall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

ii

CONTENTS

5.1.2.14 5.1. 2.14 do_pi do_pingall ngallfull full . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.1.2.15 5.1. 2.15 do_pi do_pingpai ngpairr

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5.1.2.16 5.1. 2.16 do_pi do_pingpai ngpairfull rfull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.1.2. 5.1 .2.17 17 do_ do_px px

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5.1.2. 5.1 .2.18 18 do_ do_py py

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5.1.2.19 5.1. 2.19 do_so do_source urce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.1.2.20 5.1. 2.20 do_t do_time ime

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.1.2. 5.1 .2.21 21 do_ do_x x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.1.2.22 5.1. 2.22 do_xt do_xterm erm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.1.2.23 5.1. 2.23 empty emptyline line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.1.2.24 5.1. 2.24 wait waitFor ForNode Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.1.3 5.1. 3

Memberr Data Docume Membe Documentat ntation ion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.1. 5. 1.3. 3.1 1

5.2

5.3

5.4

mininet.n minin et.node. ode.Contr Controller oller Class Ref Reference erence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.2.1 5.2. 1

Detailed Deta iled Descrip Description tion

5.2.2 5.2. 2

Memberr Funct Membe Function ion Docum Documentat entation ion star st artt

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

5.2. 5. 2.2. 2.2 2

stop st op

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Detailed Deta iled Descrip Description tion

5.3.2 5.3. 2

Memberr Funct Membe Function ion Docum Documentat entation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

5.3. 5. 3.2. 2.1 1

confi co nfig g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

5.3. 5. 3.2. 2.2 2

pope po pen n

5.3.2. 5.3 .2.3 3

setCPU set CPUFr Frac ac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

mininet.t minin et.topo opo.Gra .Graph ph Class Class Ref Referenc erence e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Detailed Deta iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

mininet.n minin et.node. ode.Host Host Class Ref Referenc erence e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Detailed Deta iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

mininet.l minin et.link.I ink.Intf ntf Class Ref Referenc erence e

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

5.6.1 5.6. 1

Detailed Deta iled Descrip Description tion

5.6.2 5.6. 2

Constructor Const ructor & Destru Destructor ctor Docum Documentat entation ion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 5.6. 5. 6.2. 2.1 1

5.6.3 5.6. 3

5.7

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

5.2. 5. 2.2. 2.1 1

5.3.1 5.3. 1

5.5.1 5.5. 1 5.6

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

mininet.n minin et.node. ode.CPULi CPULimited mitedHost Host Class Class Refe Reference rence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

5.4.1 5.4. 1 5.5

help he lpSt Strr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

__in __ init it__  __ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Memberr Funct Membe Function ion Docum Documentat entation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

5.6. 5. 6.3. 3.1 1

confi co nfig g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

5.6. 5. 6.3. 3.2 2

setM se tMAC AC

5.6. 5. 6.3. 3.3 3

setP se tPar aram am . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

mininet.topo.LinearT mininet.topo .LinearTopo opo Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

CONTENTS

iii

5.7.1 5.7. 1

Detailed Deta iled Descrip Description tion

5.7.2 5.7. 2

Constructor Const ructor & Destru Destructor ctor Docum Documentat entation ion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 5.7. 5. 7.2. 2.1 1

5.8

__in __ init it__  __ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

mininet.l minin et.link.L ink.Link ink Class Ref Reference erence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 5.8.1 5.8. 1

Detailed Deta iled Descrip Description tion

5.8.2 5.8. 2

Constructor Const ructor & Destru Destructor ctor Docum Documentat entation ion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5.8. 5. 8.2. 2.1 1

5.8.3 5.8. 3

5.9

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

__in __ init it__  __ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Memberr Funct Membe Function ion Docum Documentat entation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

5.8. 5. 8.3. 3.1 1

intf in tfNa Name me . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

5.8.3. 5.8 .3.2 2

makeIn mak eIntfP tfPair air . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

mininet.n minin et.net.M et.Minine ininett Class Class Ref Referenc erence e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 5.9.1 5.9. 1

Detailed Deta iled Descrip Description tion

5.9.2 5.9. 2

Constructor Const ructor & Destru Destructor ctor Docum Documentat entation ion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 5.9. 5. 9.2. 2.1 1

5.9.3 5.9. 3

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

__in __ init it__  __ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Memberr Funct Membe Function ion Docum Documentat entation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5.9.3. 5.9 .3.1 1

__geti __g etitem tem__  __  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5.9.3. 5.9 .3.2 2

addCon add Contro trolle llerr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5.9. 5. 9.3. 3.3 3

addH ad dHos ostt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5.9. 5. 9.3. 3.4 4

addL ad dLin ink k . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5.9. 5. 9.3. 3.5 5

addS ad dSwi witc tch h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5.9. 5. 9.3. 3.6 6

buil bu ild d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

5.9.3.7 5.9. 3.7

buildF buil dFromT romTopo opo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

5.9.3. 5.9 .3.8 8

configH con figHost osts s

5.9.3. 5.9 .3.9 9

configL con figLink inkSta Status tus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

5.9.3.10 5.9. 3.10 inte interact ract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 5.9.3. 5.9 .3.11 11 ipe iperf rf

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

5.9.3.12 5.9. 3.12 monit monitor or . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.9.3. 5.9 .3.13 13 pin ping g

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

5.9.3.14 5.9. 3.14 pingA pingAllll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.9.3.15 5.9. 3.15 pingA pingAllFu llFullll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.9.3.16 5.9. 3.16 pingF pingFull ull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.9.3.17 5.9. 3.17 pingP pingPair air

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

5.9.3.18 5.9. 3.18 pingP pingPairFu airFullll

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

5.9.3. 5.9 .3.19 19 run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 5.9.3.20 runCpuLimitT runCpuLimitTest est . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 5.9.3. 5.9 .3.21 21 sta start rt

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

5.9.3.22 5.9. 3.22 startTerms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

iv

CONTENTS

5.9.3.23 5.9. 3.23 stat staticArp icArp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 5.9.3.24 5.9. 3.24 stopX stopXterms terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 5.10 mininet.log.Minin mininet.log.MininetLogger etLogger Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 5.10.1 5.10 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

5.10.2 5.10 .2 Membe Memberr Function Function Documentat Documentation ion 5.10.2.1 5.10 .2.1 outp output ut

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

5.10.2.2 5.10 .2.2 setLo setLogLev gLevel el . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 5.11 mininet.net.Mini mininet.net.MininetWithControlNet netWithControlNet Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 5.11.1 5.11 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.11.2 5.11 .2 Membe Memberr Function Function Documentat Documentation ion 5.11.2.1 5.11 .2.1 config configureCo ureControl ntrolNetw Network ork

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.11.2.2 configureRoutedControl configureRoutedControlNetwork Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 5.12 mininet.node. mininet.node.Node Node Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 5.12.1 5.12 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.12.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5.12.2.1 5.12 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5.12.3 5.12 .3 Membe Memberr Function Function Documentat Documentation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.12.3.1 5.12 .3.1 addI addIntf ntf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5.12.3.2 5.12 .3.2 clean cleanup up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.12.3 5.1 2.3.3 .3 cmd

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

5.12.3.4 5.12 .3.4 cmdPri cmdPrint nt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.12.3 5.1 2.3.5 .5 con config fig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.12.3.6 5.12 .3.6 conne connectio ctionsT nsTo o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.12.3.7 5.12 .3.7 delet deleteInt eIntfs fs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.12.3.8 5.12 .3.8 fdT fdToNode oNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.12.3 5.1 2.3.9 .9 int intff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.12.3.10 intfIsUp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.12.3.11 IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.12.3.12 MAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.12.3.13 monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.12.3.14 newPort

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.12.3.15 pexec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.12.3.16 popen

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.12.3.17 read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.12.3.18 readline

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.12.3.19 sendCmd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.12.3.20 sendInt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

CONTENTS

v

5.12.3.21 setARP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.12.3.22 setDefaultRoute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.12.3.23 setHostRoute

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.12.3.24 setIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.12.3.25 setMAC

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.12.3.26 setParam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.12.3.27 stop

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.12.3.28 terminate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.12.3.29 waitOutput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.12.3.30 waitReadable

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.12.3.31 write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.13 mininet.node. mininet.node.NOX NOX Class Reference 5.13.1 5.13 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.13.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.13.2.1 5.13 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.14 mininet.node. mininet.node.OVSController OVSController Class Reference 5.14.1 5.14 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.15 mininet.node. mininet.node.OVSLegacyKernelSwitch OVSLegacyKernelSwitch Class Reference Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 42 5.15.1 5.15 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.15.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 5.15.2.1 5.15 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 5.15.3 5.15 .3 Membe Memberr Function Function Documentat Documentation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.15.3 5.1 5.3.1 .1 set setup up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 5.15.3 5.1 5.3.2 .2 sta start rt

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.15.3 5.1 5.3.3 .3 sto stop p

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.16 mininet.node. mininet.node.OVSSwitch OVSSwitch Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 5.16.1 5.16 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.16.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.16.2.1 5.16 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.16.3 5.16 .3 Membe Memberr Function Function Documentat Documentation ion 5.16.3 5.1 6.3.1 .1 sto stop p

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.16.3.2 5.16 .3.2 TCRe TCReapply apply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.17 mininet.node. mininet.node.RemoteController RemoteController Class Reference Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.17.1 5.17 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.17.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 5.17.2.1 5.17 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 5.17.3 5.17 .3 Membe Memberr Function Function Documentat Documentation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

vi

CONTENTS

5.17.3 5.1 7.3.1 .1 sta start rt

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.17.3 5.1 7.3.2 .2 sto stop p

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.18 mininet.topo mininet.topo.SingleSwitchRe .SingleSwitchReversedT versedTopo opo Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . 46 5.18.1 5.18 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.18.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.18.2.1 5.18 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.19 mininet.topo mininet.topo.SingleSwitchT .SingleSwitchTopo opo Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.19.1 5.19 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.19.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.19.2.1 5.19 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.20 mininet.log.Singl mininet.log.Singleton eton Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.20.1 5.20 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.21 mininet.log.StreamH mininet.log.StreamHandlerNoNewline andlerNoNewline Class Reference Reference 5.21.1 5.21 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.21.2 5.21 .2 Membe Memberr Function Function Documentat Documentation ion 5.21.2 5.2 1.2.1 .1 emi emitt

. . . . . . . . . . . . . . . . . . . . . . . . . . 49

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.22 mininet.node. mininet.node.Switch Switch Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 5.22.1 5.22 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

5.22.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 5.22.2.1 5.22 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 5.22.3 5.22 .3 Membe Memberr Function Function Documentat Documentation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

5.22.3.1 5.22 .3.1 sendC sendCmd md . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 5.23 mininet.link.TCI mininet.link.TCIntf ntf Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 5.23.1 5.23 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5.23.2 5.23 .2 Membe Memberr Function Function Documentat Documentation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5.23.2 5.2 3.2.1 .1 con config fig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 5.24 mininet.link.TCL mininet.link.TCLink ink Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 5.24.1 5.24 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

5.25 mininet.topo mininet.topo.T .Topo opo Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 5.25.1 5.25 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

5.25.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 5.25.2.1 5.25 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 5.25.3 5.25 .3 Membe Memberr Function Function Documentat Documentation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

5.25.3.1 5.25 .3.1 addHo addHost st . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.25.3.2 5.25 .3.2 addLi addLink nk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.25.3.3 5.25 .3.3 addNo addNode de . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.25.3.4 5.25 .3.4 addP addPort ort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

CONTENTS

vii

5.25.3.5 5.25 .3.5 addSw addSwitch itch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 5.25.3 5.2 5.3.6 .6 hos hosts ts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 5.25.3.7 5.25 .3.7 isSwi isSwitch tch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 5.25.3 5.2 5.3.8 .8 lin links ks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 5.25.3 5.2 5.3.9 .9 port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.25.3.10 sorted

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.25.3.11 switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.26 mininet.topolib mininet.topolib.T .TreeT reeTopo opo Class Reference 5.26.1 5.26 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.26.2 5.26 .2 Membe Memberr Function Function Documentat Documentation ion 5.26.2.1 5.26 .2.1 addTree

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.27 mininet.node. mininet.node.UserSwitch UserSwitch Class Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 5.27.1 5.27 .1 Deta Detailed iled Descrip Description tion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5.27.2 Constructor & Destructor Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5.27.2.1 5.27 .2.1 __ini __init__  t__ .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5.27.3 5.27 .3 Membe Memberr Function Function Documentat Documentation ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5.27.3 5.2 7.3.1 .1 set setup up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5.27.3 5.2 7.3.2 .2 sta start rt

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5.27.3 5.2 7.3.3 .3 sto stop p

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Index

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

60

Chapter 1

Namespace Index 1.11 1.

Namesp Nam espace ace Li List st

Here is a list of all documented namespaces with brief descriptions: topo Network topology creation

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

2

Namespace Index

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

Chapter 2

Hierarchical Index 2.11 2.

Class Cl ass Hi Hiera erarc rchy hy

This inheritance list is sorted roughly, but not completely, alphabetically: object mininet.link.Intf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.link.TCIntf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.link.Link . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.link.TCLink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.log.MininetLogger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.net.Mininet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.net.MininetWithControlNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.NOX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.OVSController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.RemoteController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.Host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.CPULimitedHost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.Switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mini minin net.n et.no ode. de.OVSL OVSLeg egac acyK yKer ern nelSw elSwit itch ch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.OVSSwitch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.UserSwitch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.topo.Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.topo.Topo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.topo.LinearTopo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mini minine nett.top topo.Si .Single ngleSw Swit itch chRe Rev verse ersedT dTopo opo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.topo.SingleSwitchTopo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.topolib.TreeTopo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . StreamHandler mininet.log.Str StreamHandlerNoNewline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . type mininet.log.Singleton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cmd mininet.cli.CLI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logger mininet.log.MininetLogger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18 51 21 52 30 23 31 32 13 41 41 45 17 15 50 42 44 58 17 53 20 46 47 57 49 48 9 30

4

Hierarchical Index

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

Chapter 3

Class Index 3.11 3.

Clas Cl asss Li List st

Here are the classes, structs, unions and interfaces with brief descriptions: mininet.cli.CLI Simp Simplle comm comman andd-lline ine inter nterfface to talk alk to nodes odes . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.Controller A Controller is a Node that that is runni running ng (or (or has has exec execed ed?) ?) an an Ope OpenF nFlo low w cont contro roll ller er . . . . . . . . . . . mininet.node.CPULimitedHost CPU limited host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.topo.Graph Util Utilit ity y clas class s to trac track k node nodes s and and edge edges s - repl replac aces es netw networ orkx kx.G .Gra raph ph . . . . . . . . . . . . . . . . . . . mininet.node.Host A host is simply a Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.link.Intf Basi Basic c inte interf rfac ace e obje object ct that hat can can confi config gure ure itse itself lf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.topo.LinearTopo Lin Linear ear topo topollogy ogy of k swit witche ches, wit with n host hosts s per swit witch . . . . . . . . . . . . . . . . . . . . . . . . . mininet.link.Link A basic link is just a veth pair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.net.Mininet Netw Networ ork k emul emulat atio ion n with with host hosts s spaw spawne ned d in netw networ ork k name namesp spac aces es . . . . . . . . . . . . . . . . . . . mininet.log.MininetLogger Mini Minine nett-sp spec ecifi ific c logg logger er Enab Enable le each each mini minine nett .py .py file file to with with one one . . . . . . . . . . . . . . . . . . . . mininet.net.MininetWithControlNet Control network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.Node A virt virtua uall netw networ ork k node node is simp simply ly a shel shelll in a netw networ ork k name namesp spac ace e . . . . . . . . . . . . . . . . . . . mininet.node.NOX Controller to run a NOX application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.OVSController Open vSwitch controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.OVSLegacyKernelSwitch Open Open VSwi VSwitc tch h lega legacy cy kerne kernell-sp spac ace e swit switch ch usin using g ovsovs-op open enflo flowd wd . . . . . . . . . . . . . . . . . . . . mininet.node.OVSSwitch Open vSwitch switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.RemoteController Controller run running outsid side of Min Mininet’s control . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9 13 15 17 17 18 20 21 23 30 31 32 41 41 42 44 45

6

Class Index

mininet.topo.SingleSwitchReversedTopo Sing Single le switc witch h conn connec ecte ted d to k host hosts, s, with with reve revers rsed ed port ports s . . . . . . . . . . . . . . . . . . . . . . . . mininet.topo.SingleSwitchTopo Single switch connected to k hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.log.Singleton Singleton patter n from Wikipedia See . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.log.StreamHandlerNoNewline Stre Stream amHa Hand ndle lerr that that does doesn’ n’tt prin printt newl newlin ines es by def default ault . . . . . . . . . . . . . . . . . . . . . . . . . mininet.node.Switch A Switch is a Node that that is runn runnin ing g (or (or has has exec execed ed?) ?) an an Open OpenFl Flow ow swit switch ch . . . . . . . . . . . . . . . mininet.link.TCIntf Interf Interface ace custom customiz ized ed by tc (traffi (traffic c contro control) l) utilit utility y Allow Allows s specifi specificat cation ion of ban bandwi dwidth dth limits limits (vario (various us met methhods) ods) as well ell as dela delay y, loss loss and max max queu ueue leng ength . . . . . . . . . . . . . . . . . . . . . . . . . . . mininet.link.TCLink Link with ith symm symme etri tric TC int interf erfaces aces confi config gured ured via via opts opts . . . . . . . . . . . . . . . . . . . . . . . . . mininet.topo.Topo Data Data cent center er netw network ork repr repres esen enta tati tion on for stru struct ctur ured ed mult multii-tr tree ees s . . . . . . . . . . . . . . . . . . . . . mininet.topolib.TreeTopo Topol opolog ogy y for a tree tree netw networ ork k with with a giv given dept depth h and and fanou anoutt . . . . . . . . . . . . . . . . . . . . . . . mininet.node.UserSwitch User-space switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

46 47 48 49 50

51 52 53 57 58

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

Chapter 4

Namespace Documentation 4.1

topo top o Name Namespac spacee Ref Referen erence ce

Network topology creation.

4.1.1

Detailed Detail ed Descri Description ption

Network topology creation. Author Brandon Heller ([email protected]) This package includes code to represent network topologies. A Topo object can be a topology database for NOX, can represent a physical setup for testing, and can even be emulated with the Mininet package.

8

Namespace Documentation

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

Chapter 5

Class Documentation 5.1

mininet.cl minin et.cli.CLI i.CLI Class Referen Reference ce

Simple command-line interface to talk to nodes. Inheritance diagram for mininet.cli.CLI:

Cmd

mininet.cli.CLI

Public Member Functions • def def __init__  • def def emptyline Don’t repeat last command when you hit return.

• def def do_help Describe available CLI  available CLI commands. commands.

• def def do_nodes List all nodes.

• def def do_net List network connections.

• def def do_sh Run an external shell command.

• def def do_py Evaluate a Python expression.

• def def do_px Execute a Python statement.

• def def do_pingall Ping between all hosts.

• def def do_pingpair Ping between first two hosts, useful for testing.

10

Class Documentation

• def def do_pingallfull Ping between first two hosts, returns all ping results.

• def def do_pingpairfull Ping between first two hosts, returns all ping results.

• def def do_iperf Simple iperf TCP test between two (optionally specified) hosts.

• def def do_iperfudp Simple iperf TCP test between two (optionally specified) hosts.

• def def do_intfs List interfaces.

• def def do_dump Dump node info.

• def def do_link Bring link(s) between two nodes up or down.

• def def do_xterm Spawn xterm(s) for the given node(s).

• def def do_x Create an X11 tunnel to the given node, optionally starting a client.

• def def do_gterm Spawn gnome-terminal(s) for the given node(s).

• def def do_exit Exit.

• def def do_quit Exit.

• def def do_EOF Exit.

• def def isatty Is our standard input a tty? 

• def def do_noecho Run an interactive command with echoing turned off.

• def def do_source Read commands from an input file.

• def def do_dpctl Run dpctl (or ovs-ofctl) command on all switches.

• def def do_time Measure time taken for any command in Mininet.

• def def default Called on an input line when the command prefix is not recognized.

• def def waitForNode Wait for a node to finish, and print its output.

Public Attributes • • • • • • •

mn nodelist nodemap locals stdin inPoller inputFile Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.1 mininet.cli.CLI Class Reference

11

Static Public Attributes • string string prompt = ’mininet> ’ • tuple tuple helpStr

5.1.1

Detailed Detail ed Descri Description ption

Simple command-line interface to talk to nodes.

5.1.2

Member Funct Function ion Docum Documentat entation ion

5.1.2.1 def mininet.cli.C mininet.cli.CLI.default LI.default ( se self, lf, lin line  e  ) Called on an input line when the command prefix is not recognized. Overridden to run shell commands when a node is the first CLI argument. Past the first CLI argument, node names are automatically replaced with corresponding IP addrs.

5.1.2.2 5.1. 2.2 def mini mininet.c net.cli.CL li.CLI.do I.do dpctl ( se self, lf, lin line  e  ) Run dpctl (or ovs-ofctl) command on all switches.

5.1.2.3 5.1. 2.3 def mini mininet.c net.cli.CL li.CLI.do I.do dump ( se self lf,,

line  li ne  )

Dump node info.

5.1.2.4 5.1. 2.4 def mini mininet.c net.cli.CL li.CLI.do I.do gterm ( se self, lf, lin line  e  ) Spawn gnome-terminal(s) for the given node(s).

5.1.2.5 5.1. 2.5 def mini mininet.c net.cli.CL li.CLI.do I.do help ( se self, lf, lin line  e  ) Describe available available CLI commands.

5.1.2.6 5.1. 2.6 def mini mininet.c net.cli.CL li.CLI.do I.do intfs ( se self lf,,

line  li ne  )

List interfaces. interfaces.

5.1.2.7 5.1. 2.7 def mini mininet.c net.cli.CL li.CLI.do I.do iperf ( se self, lf, lin line  e  ) Simple iperf TCP test between two (optionally specified) hosts.

5.1.2.8 def mininet.cli.C mininet.cli.CLI.do LI.do iperfudp iperfudp ( sel self, f, lin line  e  ) Simple iperf TCP test between two (optionally specified) hosts. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

12

Class Documentation

5.1.2.9 5.1. 2.9 def mini mininet.c net.cli.CL li.CLI.do I.do link ( se self, lf, lin line  e  ) Bring link(s) between two nodes up or down.

5.1.2.10 5.1. 2.10 def mini mininet.c net.cli.CL li.CLI.do I.do net ( se self lf,,

line  li ne  )

List network connections.

5.1.2.11 def mininet.cli.C mininet.cli.CLI.do LI.do nodes nodes ( se self lf,,

line  li ne  )

List all nodes.

5.1.2.12 def mininet.cli.C mininet.cli.CLI.do LI.do noecho noecho ( se self, lf, lin line  e  ) Run an interactive command with echoing turned off.

5.1.2.13 def mininet.cli.C mininet.cli.CLI.do LI.do pingall pingall ( se self lf,,

line  li ne  )

Ping between all hosts.

5.1.2.14 def mininet.cli.C mininet.cli.CLI.do LI.do pingallfull pingallfull ( se self lf,,

line  li ne  )

Ping between first two hosts, returns all ping results.

5.1.2.15 def mininet.cli.C mininet.cli.CLI.do LI.do pingpair pingpair ( se self lf,,

line  li ne  )

Ping between first two hosts, useful for testing.

5.1.2.16 def mininet.cli.C mininet.cli.CLI.do LI.do pingpairfull pingpairfull ( se self lf,,

line  lin e  )

Ping between first two hosts, returns all ping results.

5.1.2.17 5.1. 2.17 def mini mininet.c net.cli.CL li.CLI.do I.do px ( se self, lf, lin line  e  ) Execute a Python statement. Node names may be used, e.g.: px print h1.cmd(’ls’)

5.1.2.18 5.1. 2.18 def mini mininet.c net.cli.CL li.CLI.do I.do py ( se self, lf, lin line  e  ) Evaluate a Python expression. Node names may be used, e.g.: py h1.cmd(’ls’)

5.1.2.19 def mininet.cli.C mininet.cli.CLI.do LI.do source source ( sel self, f, lin line  e  ) Read commands from an input file. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.2 mininet.node.Controller Class Reference

5.1.2.20 5.1. 2.20 def mini mininet.c net.cli.CL li.CLI.do I.do time ( se self, lf, lin line  e  ) Measure time taken for any command in Mininet.

5.1.2.21 5.1. 2.21 def mini mininet.c net.cli.CL li.CLI.do I.do x ( se self, lf, lin line  e  ) Create an X11 tunnel to the given node, optionally starting a client.

5.1.2.22 5.1. 2.22 def mini mininet.c net.cli.CL li.CLI.do I.do xterm ( se self, lf, lin line, e, ter term m = ’xterm’ ) Spawn xterm(s) for the given node(s).

5.1.2.23 def mininet.cli.C mininet.cli.CLI.emptyline LI.emptyline ( self  ) Don’t repeat last command when you hit return.

5.1.2.24 def mininet.cli.C mininet.cli.CLI.waitForNo LI.waitForNode de ( self self,, nod node  e  ) Wait for a node to finish, and print its output.

5.1.3

Member Data Docum Documentati entation on

5.1.3.1 tuple mininet.cli.C mininet.cli.CLI.helpStr LI.helpStr [static] Initial value: 1 = ( 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

’You ma ’You may y al also so se send nd a co comm mman and d to a no node de us usin ing: g: \n’ ’ comma command nd {args} {args}\n’ ’For examp example: le:\n’ ’ min minine inet> t> h1 ifco ifconfi nfig g \n’ ’\n’ ’The inter interpreter preter automatically automatically subst substitute itutes s IP addres addresses ses \n’ ’for ’f or no node de na name mes s wh when en a no node de is th the e fi firs rst t ar arg, g, so co comm mman ands ds \n’ ’like\n’ ’ mi mini nine net> t> h2 ping ping h3\n’ ’should ’shou ld work.\n’ ’\n’ ’Some chara charactercter-orien oriented ted inter interactiv active e comma commands nds requir require e \n’ ’noecho:\n’ ’ mi mini nine net> t> noech noecho o h2 vi fo foo. o.py py\n’ ’However, ’Howe ver, starting up an xterm xterm/gter /gterm m is gener generally ally better: \n’ ’ mi mini nine net> t> xter xterm m h2 \n\n’ )

The documentation for this class was generated from the following file: • mininet/cl mininet/cli.p i.py y

5.2

mininet.nod minin et.node.Contr e.Controller oller Class Referen Reference ce

A Controller is a Node that is running (or has execed?) an OpenFlow controller. Inheritance diagram for mininet.node.Controller: Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

13

14

Class Documentation

object

mininet.node.Node

mininet.node.Controller

mini minine net. t.no node de.NO .NOX X

mini minine net.n t.nod ode. e.OV OVSC SCon ontr trol olle lerr

mini minine net.n t.nod ode. e.Re Remo mote teCo Cont ntro roll ller er

Public Member Functions • def def __init__  • def def checkListening Make sure no controllers controllers are running on our port.

• def def start Start  on controller.

• def def stop Stop controller.

• def def IP Return IP address of the Controller  the  Controller .

• def def __repr__  More informative string representation.

Public Attributes • command • cargs • cdir • ip • port • execed

Additional Inherited Members 5.2.1

Detailed Detail ed Descri Description ption

A Controller is a Node that is running (or has execed?) an OpenFlow controller.

5.2.2

Member Funct Function ion Docum Documentat entation ion

5.2.2.1 def mininet.nod mininet.node.Controller e.Controller.start .start ( self  ) Start on controller. Log to /tmp/cN.log Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.3 mininet.node.CPULimitedHost Class Reference

15

5.2.2.2 def mininet.nod mininet.node.Controller e.Controller.stop .stop ( self  ) Stop controller. controller. The documentation for this class was generated from the following file: • mininet/node.py mininet/node.py

5.3

mininet.nod minin et.node.CPULi e.CPULimitedHo mitedHost st Class Referen Reference ce

CPU limited host. Inheritance diagram for mininet.node.CPULimitedHost: mininet.node.CPULimitedHost:

object

mininet.node.Node

mininet.node.Host

mininet.node.CPULimitedHost

Public Member Functions • def def __init__  • def def cgroupSet Set a cgroup parameter and return its value.

• def def cgroupGet Return value of cgroup parameter.

• def def cgroupDel Clean up our cgroup.

• def def popen Return a Popen() object in node’s namespace.

• def def cleanup Clean up Node  up Node , then clean up our cgroup.

• def def chrt Set RT scheduling priority.

• def def rtInfo Internal method: return parameters for RT bandwidth.

• def def cfsInfo Internal method: return parameters for CFS bandwidth.

• def def setCPUFrac Set overall CPU fraction for this host.

• def def setCPUs Specify (real) cores that our cgroup can run on.

• def def config • def def init Initialization for CPULimitedHost  for  CPULimitedHost class. class. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

16

Class Documentation

Public Attributes • cgroup • period_us • sched • rtprio

Static Public Attributes • inited = False

5.3.1

Detailed Detail ed Descri Description ption

CPU limited host.

5.3.2

Member Funct Function ion Docum Documentat entation ion

5.3.2.1 def mininet.nod mininet.node.CPULimited e.CPULimitedHost.confi Host.config g ( sel self, f, cpu =  None, co cores res = None, pa param rams  s  ) Parameters cpu  desired overall system CPU fraction cores  (real) core(s) this host can run on params  parameters for Node.config()

5.3.2.2 def mininet.nod mininet.node.CPULimited e.CPULimitedHost.pope Host.popen n ( sel self, f, arg args, s, kw kwarg args  s  ) Return a Popen() object in node’s namespace. Parameters args  Popen() args, single list, or string kwargs  Popen() keyword args

5.3.2.3 def mininet.nod mininet.node.CPULimited e.CPULimitedHost.setCP Host.setCPUFrac UFrac ( se self lf,, f = -1, sc sche hed d =  None ) Set overall CPU fraction for this host. Parameters f  CPU bandwidth limit (fraction) sched  ’rt’ or ’cfs’ Note ’cfs’ requires CONFIG_CFS_BANDWIDTH

The documentation for this class was generated from the following file: • mininet/node.py mininet/node.py

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.4 mininet.topo.Graph Class Reference

5.4

17

mininet.top minin et.topo.Grap o.Graph h Class Referen Reference ce

Utility class to track nodes and edges - replaces networkx.Graph. Inheritance diagram for mininet.topo.Graph: mininet.topo.Graph:

object

mininet.topo.Graph

Public Member Functions • def def __init__  • def def add_node Add node to graph.

• def def add_edge Add edge to graph.

• def def nodes Return list of graph nodes.

• def def edges Iterator: return graph edges.

• def def __getitem__  Return link dict for the given node.

Public Attributes • data

5.4.1

Detailed Detail ed Descri Description ption

Utility class to track nodes and edges - replaces networkx.Graph. The documentation for this class was generated from the following file: • mininet/topo.py mininet/topo.py

5.5

mininet.nod minin et.node.Host e.Host Class Referen Reference ce

A host is simply a Node Node.. Inheritance diagram for mininet.node.Host: Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

18

Class Documentation

object

mininet.node.Node

mininet.node.Host

mininet.node.CPULimitedHost

Additional Inherited Members 5.5.1

Detailed Detail ed Descri Description ption

A host is simply a Node Node.. The documentation for this class was generated from the following file: • mininet/node.py mininet/node.py

5.6

mininet.lin minin et.link.Int k.Intff Class Referen Reference ce

Basic interface object that can configure itself. Inheritance diagram for mininet.link.Intf:

object

mininet.link.Intf 

mininet.link.TCIntf 

Public Member Functions • def def __init__  • def def cmd Run a command command in our owning node.

• def def ifconfig Configure ourselves using ifconfig.

• def def setIP Set our IP address.

• def def setMAC Set the MAC address for an interface.

• def def updateIP Return updated IP address based on ifconfig.

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.6 mininet.link.Intf Class Reference

19

• def def updateMAC Return updated MAC address based on ifconfig.

• def def IP Return IP address.

• def def MAC Return MAC address.

• def def isUp Return whether interface is up.

• def def rename Rename interface.

• def def setParam Internal.

• def def config Configure Node according to (optional)

• def def delete Delete interface.

• def def __repr__  • def def __str__ 

Public Attributes • node • name • link • prefixLen • params • mac • ip

5.6.1

Detailed Detail ed Descri Description ption

Basic interface object that can configure itself.

5.6.2

Constructo Const ructorr & Destru Destructor ctor Docum Documentat entation ion

5.6.2. 5.6 .2.11

deff min de minine inet.li t.link nk.In .Intf. tf. ini initt ( se self, lf, na name, me, no node de =  None, po port rt = None, li link nk = None, pa param rams  s  )

Parameters name  interface name (e.g. h1-eth0) node  owning node (where this intf most likely lives) link  parent link if we’re part of a link other arguments are passed to config()

5.6.3

Member Funct Function ion Docum Documentat entation ion

5.6.3.1 def mininet.link.In mininet.link.Intf.config tf.config ( se self, lf, ma macc = None, ip = None, ifc ifcon onfig fig =  None, up = True, Configure Node according to (optional) Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

para pa rams  ms  )

20

Class Documentation

Parameters parameters  mac  MAC address ip  IP address ifconfig  arbitr arbitrary ary interf interface ace configu configurat ration ion Subcla Subclasse sses s should should overri override de this this met method hod and call call the parent parent class’ class’s s config(∗∗params)

5.6.3.2 def mininet.link.In mininet.link.Intf.setMAC tf.setMAC ( self self,, mac macstr  str  ) Set the MAC address for an interface. Parameters macstr  MAC address as string

5.6.3.3 def mininet.link.In mininet.link.Intf.setPara tf.setParam m ( se self, lf, res result ults, s, met metho hod, d, par param  am  ) Internal. Parameters method  results  method  param 

configure a single parameter single  parameter dict of results to update config method name arg=value (ignore if value=None) value may also be list or dict

The documentation for this class was generated from the following file: • mininet/link.py mininet/link.py

5.7

mininet.top minin et.topo.Lin o.LinearT earTopo opo Class Referen Reference ce

Linear topology of k switches, with n hosts per switch. Inheritance diagram for mininet.topo.LinearT mininet.topo.LinearTopo: opo:

object

mininet.topo.Topo

mininet.topo.LinearTopo

Public Member Functions • def def __init__  Init. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.8 mininet.link.Link Class Reference

21

Public Attributes • k • n

Additional Inherited Members 5.7.1

Detailed Detail ed Descri Description ption

Linear topology of k switches, with n hosts per switch.

5.7.2

Constructo Const ructorr & Destru Destructor ctor Docum Documentat entation ion

5.7.2.1 5.7. 2.1 def mini mininet.t net.topo opo.Lin .LinearT earTopo. opo. init ( se self lf,, k = 2, n =  1, op opts  ts  ) Init. Parameters k  n  hconf  lconf 

number of switches number of hosts per switch host configuration options link configuration options

The documentation for this class was generated from the following file: • mininet/topo.py mininet/topo.py

5.8

mininet.lin minin et.link.Lin k.Linkk Class Referen Reference ce

A basic link is just a veth pair. Inheritance diagram for mininet.link.Link:

object

mininet.link.Link 

mininet.link.TCLink 

Public Member Functions • def def __init__  Create veth link to another node, making two new interfaces.

• def def intfName Construct a canonical interface name node-ethN for interface n. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

22

Class Documentation

• def def makeIntfPair Create pair of interfaces.

• def def delete Delete this link.

• def def __str__ 

Public Attributes • intf2

5.8.1

Detailed Detail ed Descri Description ption

A basic link is just a veth pair. Other types of links could be tunnels, link emulators, etc..

5.8.2

Constructo Const ructorr & Destru Destructor ctor Docum Documentat entation ion

5.8.2. 5.8 .2.11

def min def minine inet.l t.link ink.Li .Link nk.. ini initt ( se self, lf, node1 node1,, no node de2, 2, po port1 rt1 =  None, po port2 rt2 = None, intfN intfName1 ame1 =  None, int intfNa fName me22 =  None, in Intf,, cl intf tf =  = Intf cls1 s1 = None, cl cls2 s2 = None, pa param rams1 s1 = None, pa param rams2 s2 =  None )

Create veth link to another node, making two new interfaces. Parameters node1 node2  port1 port2  intf  cls2  intfName1 intfName2  params1 params2 

5.8.3

first node second node node1 port number (optional) node2 port number (optional) default interface class/constructor cls1, optional interface-specific constructors node1 interface name (optional) node2 interface name (optional) parameters for interface 1 parameters for interface 2

Member Funct Function ion Docum Documentat entation ion

5.8.3.1 def mininet.link.L mininet.link.Link.intfName ink.intfName ( cls ls,, no node de,, n  ) Construct a canonical interface name node-ethN for interface n.

5.8.3.2 def mininet.link.L mininet.link.Link.makeIn ink.makeIntfPair tfPair ( cl cls, s, int intf1, f1, int intf2  f2  ) Create pair of interfaces. Parameters intf1 name of interface 1 intf2  name of interface 2 (override this class method [and possibly delete() delete()]] to change link type)

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.9 mininet.net.Mininet Class Reference

23

The documentation for this class was generated from the following file: • mininet/link.py mininet/link.py

5.9

mininet.net. minin et.net.Minin Mininet et Class Referen Reference ce

Network emulation with hosts spawned in network namespaces. Inheritance diagram for mininet.net.Mininet:

object

mininet.net.Mininet mininet.net.Mininet

mininet.net.MininetWithControlNet

Public Member Functions • def def __init__  Create Mininet  Create  Mininet object. object.

• def def addHost Add host.

• def def addSwitch Add switch.

• def def addController Add controller.

• def def getNodeByName Return node(s) with given name(s)

• def def get Convenience alias for getNodeByName.

• def def __getitem__  net [ name ] 

• def def __iter__  return iterator over nodes 

• def def addLink "Add a link from node1 to node2 

• def def configHosts Configure a set of hosts.

• def def buildFromTopo Build mininet from a topology object At the end of this function, everything should be connected and up.

• def def configureControlNetwork Control net config hook: override in subclass.

• def def build Build mininet.

• def def startTerms Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

24

Class Documentation

Start a terminal for each node.

• def def stopXterms Kill each xterm.

• def def staticArp Add all-pairs ARP entries to remove the need to handle broadcast.

• def def start Start controller and switches.

• def def stop Stop the controller(s), switches and hosts.

• def def run Perform a complete start/test/stop cycle.

• def def monitor Monitor a set of hosts (or all hosts by default), and return their output, a line at a time.

• def def ping Ping between all specified hosts.

• def def pingFull Ping between all specified hosts and return all data.

• def def pingAll Ping between all hosts.

• def def pingPair Ping between first two hosts, useful for testing.

• def def pingAllFull Ping between all hosts.

• def def pingPairFull Ping between first two hosts, useful for testing.

• def def iperf Run iperf between two hosts.

• def def runCpuLimitTest run CPU limit test with ’while true’ processes.

• def def configLinkStatus Change status of src  dst links.

• def def interact Start network and run our simple CLI.

• def def init Initialize Mininet  Initialize Mininet .

Public Attributes • topo • switch • host • controller • link • intf • ipBase • prefixLen • nextIP Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.9 mininet.net.Mininet Class Reference

25

• inNamespace • xterms • cleanup • autoSetMacs • • • • • • • • •

autoStaticArp autoPinCpus numCores nextCore listenPort hosts switches controllers nameToNode

• terms • built

Static Public Attributes • inited = False

5.9.1

Detailed Detail ed Descri Description ption

Network emulation with hosts spawned in network namespaces.

5.9.2

Constructo Const ructorr & Destru Destructor ctor Docum Documentat entation ion

5.9.2. 5.9 .2.11

def min def minine inet.n t.net. et.Min Minine inet. t. ini initt ( se self, lf, top topo o =  None, sw switc itch h =  OVSKernelSwitch, ho host st =  = Host Host,, con control troller  ler  = Controller =  Controller,, li link nk =  = Link Link,, in intf tf =  = Intf Intf,, bui uild ld =  True, xt xter erms ms =  False, cl clea eanu nup p =  False, ip ipBa Base se =  ’10.0.0.0/8’, inNa inNamesp mespace ace =  False, auto autoSetM SetMacs acs =  False, auto autoStat StaticAr icArp p =  False, auto autoPinC PinCpus pus =  False, liste None listenP nPort ort =  )

Create Mininet object. Parameters topo  switch  host  controller  link  intf  ipBase  build  xterms  cleanup  inNamespace  autoSetMacs  autoStaticArp  autoPinCpus  listenPort 

Topo (topology) object or None default Switch class default Host class/constructor default Controller class/constructor default Link class/constructor default Intf class/constructor base IP address for hosts, build now from topo? if build now, spawn xterms? if build now, cleanup before creating? spawn switches and controller in net namespaces? set MAC addrs automatically like IP addresses? set all-pairs static MAC addrs? pin hosts to (real) cores (requires CPULimitedHost)? base base listen listening ing port to ope open; n; will will be increm increment ented ed for for each each add additi itiona onall switc switch h in the net if inNamespace=False

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

26

Class Documentation

5.9.3

Member Funct Function ion Docum Documentat entation ion

5.9.3.1 5.9. 3.1 def mini mininet.n net.net.M et.Minin ininet. et. getit getitem em ( sel self, f, ar args  gs  ) net [ name ] Parameters operator  Return node(s) with given name(s)

5.9.3.2 def mininet.net.M mininet.net.Mininet.addC ininet.addController ontroller ( self self,, nam namee =  ’c0’, cont controll roller er =  None, pa param rams  s  ) Add controller. controller. Parameters controller  Controller class

5.9.3.3 def mininet.net.M mininet.net.Mininet.addH ininet.addHost ost ( se self, lf, na name, me, cl clss = None, pa param rams  s  ) Add host. Parameters name  name of host to add cls  custom host class/constructor (optional) params  parameters for host

Returns added host

5.9.3.4 def mininet.net.M mininet.net.Mininet.addL ininet.addLink ink ( se self, lf, no node1 de1,, no node de2, 2, po port1 rt1 =  None, po port2 rt2 = None, cls = None, pa param rams  s  ) "Add a link from node1 to node2 Parameters node1 node2  port1 port2 

source node dest node source port dest port

Returns link object

5.9.3.5 def mininet.net.M mininet.net.Mininet.addS ininet.addSwitch witch ( se self, lf, na name, me, cl clss =  None, pa param rams  s  ) Add switch. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.9 mininet.net.Mininet Class Reference Parameters name  name of switch to add cls  custom switch class/constructor (optional)

Returns added switch side

Parameters effect  increments listenPort ivar .

5.9.3.6 def mininet.net.M mininet.net.Mininet.build ininet.build ( self  ) Build mininet.

5.9.3.7 def mininet.net.M mininet.net.Mininet.build ininet.buildFromT FromTopo opo ( self self,, topo =  None ) Build mininet from a topology object At the end of this function, everything should be connected and up.

5.9.3.8 def mininet.net.M mininet.net.Mininet.confi ininet.configHosts gHosts ( self  ) Configure a set of hosts.

5.9.3.9 def mininet.net.M mininet.net.Mininet.confi ininet.configLinkStatu gLinkStatuss ( sel self, f, sr src, c, ds dst, t, sta status  tus  ) Change status of src



dst links.

Parameters src  node name dst  node name status  string {up, down}

5.9.3.10 def mininet.net.M mininet.net.Mininet.interac ininet.interactt ( self  ) Start network and run our simple CLI.

5.9.3.11 def mininet.net.M mininet.net.Mininet.iperf ininet.iperf ( self self,, host hostss =  None, l4T l4Type ype =  ’TCP’, ud udpBw pBw =  ’10M’ ) Run iperf between two hosts. Parameters hosts  list of hosts; if None, uses opposite hosts l4Type  string, one of [ TCP, UDP ]

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

27

28

Class Documentation

Returns results two-element array of server and client speeds

5.9.3.12 def mininet.net.M mininet.net.Mininet.monito ininet.monitorr ( self self,, hos hosts ts =  None, timeo timeoutms utms =  -1 ) Monitor a set of hosts (or all hosts by default), and return their output, a line at a time. Parameters hosts  (optional) set of hosts to monitor timeoutms  (optional) timeout value in ms

Returns iterator which returns host, line

5.9.3.13 def mininet.net.M mininet.net.Mininet.ping ininet.ping ( self self,, host hostss =  None, tim timeou eoutt = None ) Ping between all specified hosts. Parameters hosts  list of hosts timeout  time to wait for a response, as string

Returns ploss packet loss percentage

5.9.3.14 def mininet.net.M mininet.net.Mininet.pingA ininet.pingAllll ( self  ) Ping between all hosts. Returns ploss packet loss percentage

5.9.3.15 def mininet.net.M mininet.net.Mininet.pingA ininet.pingAllFull llFull ( self  ) Ping between all hosts. Returns ploss packet loss percentage

5.9.3.16 def mininet.net.M mininet.net.Mininet.pingF ininet.pingFull ull ( self self,, hos hosts ts =  None, tim timeo eout ut = None ) Ping between all specified hosts and return all data. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.9 mininet.net.Mininet Class Reference Parameters hosts  list of hosts timeout  time to wait for a response, as string

Returns all ping data; see function body.

5.9.3.17 def mininet.net.M mininet.net.Mininet.pingP ininet.pingPair air ( self  ) Ping between first two hosts, useful for testing. Returns ploss packet loss percentage

5.9.3.18 def mininet.net.M mininet.net.Mininet.pingP ininet.pingPairFull airFull ( self  ) Ping between first two hosts, useful for testing. Returns ploss packet loss percentage

5.9.3.19 def mininet.net.M mininet.net.Mininet.run ininet.run ( sel self, f, tes test, t, ar args gs,, kw kwar args  gs  ) Perform a complete start/test/stop cycle.

5.9.3.20 def mininet.net.M mininet.net.Mininet.runCp ininet.runCpuLimitT uLimitTest est ( self self,, cpu, dura duration tion =  5 ) run CPU limit test with ’while true’ processes. Parameters cpu  desired CPU fraction of each host duration  test duration in seconds returns a single list of measured CPU fractions as floats.

5.9.3.21 def mininet.net.M mininet.net.Mininet.start ininet.start ( self  ) Start controller and switches.

5.9.3.22 def mininet.net.M mininet.net.Mininet.startT ininet.startTerms erms ( self  ) Start a terminal for each node.

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

29

30

Class Documentation

5.9.3.23 def mininet.net.M mininet.net.Mininet.staticA ininet.staticArp rp ( self  ) Add all-pairs ARP entries to remove the need to handle broadcast.

5.9.3.24 def mininet.net.M mininet.net.Mininet.stopX ininet.stopXterms terms ( self  ) Kill each xterm. The documentation for this class was generated from the following file: • mininet/n mininet/net.p et.py y

5.10

mininet.lo minin et.log.Min g.MininetL inetLogger ogger Class Referen Reference ce

Mininet-specific logger Enable each mininet .py file to with one. Inheritance diagram for mininet.log.MininetLogger:

Logger

object

mininet.log.MininetLogger

Public Member Functions • def def __init__  • def def setLogLevel Setup loglevel.

• def def output Log ’msg % args’ with severity ’OUTPUT’.

5.10.1 Detail Detailed ed Descrip Description tion Mininet-specific logger Enable each mininet .py file to with one. Parameters import  from mininet.log mininet.log import [lg, info, err error] or] ...get ...get a default default logger that doesn’t doesn’t require one newline newline per logging logging call. Inher Inh erit it fro from m obj object ect to ensur ensure e tha that t we hav have e at lea least st one one new-s new-sty tyle le bas base e class, class, and can then use the __metaclas __metaclass__ s__ directive, directive, to pre prevent vent this

error  TypeError  Error when calling the metaclass bases a new-style class can’t have only classic bases

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.11 mininet.net.MininetWithControlNet Class Reference

31

If Python2.5/log Python2.5/logging ging/__in /__init__ it__.py .py defined Filterer Filterer as a new-style new-style class, via Filterer( Filterer( object ): rather rather than Filterer Filterer,, we wouldn’t need this. Use singleton pattern to ensure only one logger is ever created.

5.10.2 Member Funct Function ion Docum Documentat entation ion 5.10.2.1 def mininet.log.M mininet.log.MininetLogg ininetLogger.ou er.output tput ( se self, lf, ms msg, g, ar args gs,, kwa kwarg rgs  s  ) Log ’msg % args’ with severity ’OUTPUT’. To pass exception information, use the keyword argument exc_info with a true value, e.g. logger.warning("Houston, we have a %s", "cli output", exc_info=1)

5.10.2.2 def mininet.log.M mininet.log.MininetLogg ininetLogger.setL er.setLogLeve ogLevell ( self self,, lev levelna elname me =  None ) Setup loglevel. loglevel. Conveni Con venience ence fun functio ction n to support support lowercas lowercase e nam names. es.

Parameters levelName  level name from LEVELS

The documentation for this class was generated from the following file: • mininet/l mininet/log.p og.py y

5.11

mininet.net minin et.net.Mini .MininetWi netWithCon thControlN trolNet et Class Referen Reference ce

Control network. Inheritance diagram for mininet.net.MininetWithControlNet: mininet.net.MininetWithControlNet:

object

mininet.net.Mininet

mininet.net.MininetWithControlNet

Public Member Functions • def def configureControlNetwork Configure control network.

• def def configureRoutedControlNetwork Configure a routed control network on controller and switches.

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

32

Class Documentation

Additional Inherited Members 5.11.1 Detail Detailed ed Descrip Description tion Control network. Parameters support  Create Create an exp explici licit t control control net network work. . Currentl Currently y this is only used/usa used/usable ble with the user dat datapat apath. h.

Notes  1. If the the contr control oller ler and swi switc tches hes are in the same (e.g. (e.g. root) root) namespac namespace, e, the they y can just use the loopback loopback connectio connection. n. 2. If we can can get get unix unix doma domain in sock socket ets s to work work, , we can can use use them them instead instead of an explicit explicit con control trol network. network. 3. Inste Instead ad of routi routing ng, , we coul could d bridg bridge e or use ’in ’in-ba -band nd’ ’ contr control ol. . 4. Even Even if we dispe dispens nse e with with this this in gener general, al, it could could still still be usefu useful l for for peopl people e who wis wish h to sim simul ulate ate a separ separate ate con contr trol ol network network (since (since rea real l network networks s may need one!) 5. Basic Basicall ally y nob nobody ody ever used thi this s code, code, so it has has been been moved moved into into its own cla class ss. . 6. Ulti Ultima mate tely ly we may may wish wish to exte extend nd this this to allo allow w us to crea create te a control control network network which which every every nod node’s e’s control control interfac interface e is attached attached to.

5.11.2 Member Funct Function ion Docum Documentat entation ion 5.11.2.1 def mininet.net.M mininet.net.MininetWithCo ininetWithControlNet.co ntrolNet.configureCo nfigureControlNetw ntrolNetwork ork ( self  ) Configure control network.

5.11.2.2 def mininet.net.Min mininet.net.MininetWithCon inetWithControlNet.con trolNet.configureRou figureRoutedContro tedControlNetwork lNetwork ( se self, lf, ip = ’192.168.123.1’, prefi prefixLe xLen n =  16 ) Configure a routed control network on controller and switches. For use with the user datapath only right now. The documentation for this class was generated from the following file: • mininet/n mininet/net.p et.py y

5.12

mininet.no minin et.node.Node de.Node Class Referen Reference ce

A virtual network node is simply a shell in a network namespace. Inheritance diagram for mininet.node.Node: Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.12 mininet.node.Node Class Reference

33 object

mininet.node.Node

mininet.node.Controller

mininet.node t.node.NOX

mininet.node.OV ode.OVSContr SController er

mininet.node.Host

mininet.node t.node.Remot .RemoteContr e Controller er

mininet.n inet.node.CP ode.CPULimit m itedH e dHost

mininet.node.Switch

mininet.node t.node.OVSLega SLegacyK cyKernelS ernelSwitch ch

mininet.node t.node.OVSSwit SSwitch ch

mininet.node t.node.UserS .UserSwitch ch

Public Member Functions • def def __init__  • def def fdToNode Return node corresponding to given file descriptor.

• def def startShell Start a shell process for running commands.

• def def cleanup Help python collect its garbage.

• def def read Buffered read from node, non-blocking.

• def def readline Buffered readline from node, non-blocking.

• def def write Write data to node.

• def def terminate Send kill signal to Node  to  Node and and clean up after it.

• def def stop Stop node.

• def def waitReadable Wait until node’s output is readable.

• def def sendCmd Send a command, followed by a command to echo a sentinel, and return without waiting for the command to complete.

• def def sendInt Interrupt running command.

• def def monitor Monitor and return the output of a command.

• def def waitOutput Wait for a command to complete.

• def def cmd Send a command, wait for output, and return it.

• def def cmdPrint Call cmd and printing its output.

• def def popen Return a Popen() object in our namespace.

• def def pexec Execute a command using popen.

• def def newPort Return the next port number to allocate.

• def def addIntf Add an interface.

• def def defaultIntf Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

34

Class Documentation

Return interface for lowest port.

• def def intf Return our interface object with given string name, default intf if name is falsy (None, empty string, etc).

• def def connectionsTo Return [ intf1, intf2...

• def def deleteIntfs Delete all of our interfaces.

• def def setARP Add an ARP entry.

• def def setHostRoute Add route to host.

• def def setDefaultRoute Set the default route to go through intf.

• def def setMAC Set the MAC address for an interface.

• def def setIP Set the IP address for an interface.

• def def IP Return IP address of a node or specific interface.

• def def MAC Return MAC address of a node or specific interface.

• def def intfIsUp Check if an interface is up.

• def def setParam Internal.

• def def config Configure Node  Configure Node according according to (optional)

• def def configDefault Configure with default parameters.

• def def linkTo (Deprecated) Link to another node replace with Link( node1, node2)

• def def intfList List of our interfaces sorted by port number.

• def def intfNames The names of our interfaces sorted by port number.

• def def __repr__  More informative string representation.

• def def __str__  Abbreviated string representation.

• def def checkSetup Make sure our class and superclasses are set up.

• def def setup Make sure our class dependencies are available.

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.12 mininet.node.Node Class Reference

Public Attributes • name • inNamespace • params • • • • • • •

intfs ports nameToIntf waiting readbuf shell stdin

• stdout • pid • pollOut • execed • lastCmd • lastPid

Static Public Attributes • int int portBase = 0 • dictionary dictionary inToNode = {} • dictionary dictionary outToNode = {} • isSetup = False

5.12.1 Detail Detailed ed Descrip Description tion A virtual network node is simply a shell in a network namespace. We communicate with it using pipes.

5.12.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.12.2 5.1 2.2.1 .1 de deff min minine inet.n t.nod ode.N e.Node ode.. ini initt ( self self,, nam name, e, inNa inNamesp mespace ace =  True, pa param rams  s  ) Parameters name  name of node inNamespace  in network namespace? params  Node parameters (see config() for details)

5.12.3 Member Funct Function ion Docum Documentat entation ion 5.12.3.1 def mininet.nod mininet.node.Node.addIn e.Node.addIntf tf ( sel self, f, int intf, f, po port rt = None ) Add an interface.

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

35

36

Class Documentation

Parameters intf  interface port  port number (optional, typically OpenFlow port number)

5.12.3.2 def mininet.nod mininet.node.Node.clea e.Node.cleanup nup ( self  ) Help python collect its garbage.

5.12.3.3 def mininet.nod mininet.node.Node.cmd e.Node.cmd ( self self,, arg args, s, kwar kwargs  gs  ) Send a command, wait for output, and return it. Parameters cmd  string

5.12.3.4 def mininet.nod mininet.node.Node.cmdP e.Node.cmdPrint rint ( self self,, arg args  s  ) Call cmd and printing its output. Parameters cmd  string

5.12.3.5 def mininet.nod mininet.node.Node.confi e.Node.config g ( se self, lf, ma macc = None, ip = None, defa defaultR ultRoute oute =  None, lo = ’up’,

para pa rams  ms  )

Configure Node according to (optional) Parameters parameters  mac  MAC address for default interface ip  IP address for default interface ifconfig  arbitr arbitrary ary interf interface ace configu configurat ration ion Subcla Subclasse sses s should should overri override de this this met method hod and call call the parent parent class’ class’s s config(∗∗params)

5.12.3.6 def mininet.nod mininet.node.Node.conn e.Node.connectionsT ectionsTo o ( self self,, nod node  e  ) Return [ intf1, intf2... ] for all intfs that connect self to node.

5.12.3.7 def mininet.nod mininet.node.Node.delete e.Node.deleteIntfs Intfs ( self, check checkName Name =  True ) Delete all of our interfaces.

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.12 mininet.node.Node Class Reference

37

Parameters checkName  only delete interfaces that contain our name

5.12.3.8 def mininet.nod mininet.node.Node.fdT e.Node.fdToNode oNode ( cls ls,, fd  ) Return node corresponding to given file descriptor. Parameters fd  file descriptor

Returns node

5.12.3.9 def mininet.nod mininet.node.Node.intf e.Node.intf ( sel self, f, int intff = ’’ ) Return our interface object with given string name, default intf if name is falsy (None, empty string, etc). or the input intf arg. Having this fcn return its arg for Intf objects makes it easier to construct functions with flexible input args for interfaces (those that accept both string names and Intf objects).

5.12.3.10 def mininet.nod mininet.node.Node.intfIsUp e.Node.intfIsUp ( se self, lf, int intff = None ) Check if an interface is up.

5.12.3.11 def mininet.nod mininet.node.Node.IP e.Node.IP ( sel self, f, int intff = None ) Return IP address of a node or specific interface.

5.12.3.12 def mininet.nod mininet.node.Node.MAC e.Node.MAC ( se self, lf, int intff = None ) Return MAC address of a node or specific interface.

5.12.3.13 def mininet.nod mininet.node.Node.monitor e.Node.monitor ( self self,, time timeoutm outmss =  None ) Monitor and return the output of a command. Set sel self.wa f.waitin iting g to False False if com command mand has com complet pleted. ed.

Parameters timeoutms  timeout in ms or None to wait indefinitely.

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

38

Class Documentation

5.12.3.14 def mininet.nod mininet.node.Node.newP e.Node.newPort ort ( self  ) Return the next port number to allocate.

5.12.3.15 def mininet.nod mininet.node.Node.pex e.Node.pexec ec ( self self,, arg args, s, kwar kwargs  gs  ) Execute a command using popen. Returns out, err, exitcode

5.12.3.16 def mininet.nod mininet.node.Node.pope e.Node.popen n ( se self, lf, ar args gs,, kwa kwarg rgs  s  ) Return a Popen() object in our namespace. Parameters args  Popen() args, single list, or string kwargs  Popen() keyword args

5.12.3.17 def mininet.nod mininet.node.Node.read e.Node.read ( self self,, max maxbyt bytes es =  1024 ) Buffered read from node, non-blocking. Parameters maxbytes  maximum number of bytes to return

5.12.3.18 def mininet.nod mininet.node.Node.readline e.Node.readline ( self  ) Buffered readline from node, non-blocking. Returns line (minus newline) or None

5.12.3.19 def mininet.nod mininet.node.Node.send e.Node.sendCmd Cmd ( self self,, arg args, s, kwa kwargs  rgs  ) Send a command, followed by a command to echo a sentinel, and return without waiting for the command to complete. Parameters args  command and arguments, or string printPid  print command’s PID?

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.12 mininet.node.Node Class Reference

39

5.12.3.20 def mininet.nod mininet.node.Node.send e.Node.sendInt Int ( se self, lf, sig = signal.SIGINT ) Interrupt running command.

5.12.3.21 def mininet.nod mininet.node.Node.setARP e.Node.setARP ( se self lf,, ip ip,, ma mac  c  ) Add an ARP entry. Parameters ip  IP address as string mac  MAC address as string

5.12.3.22 def mininet.nod mininet.node.Node.setDefa e.Node.setDefaultRoute ultRoute ( se self, lf, int intff = None ) Set the default route to go through intf. Parameters intf  Intf or {dev



via ...}

5.12.3.23 def mininet.nod mininet.node.Node.setHos e.Node.setHostRoute tRoute ( se self lf,, ip ip,, in intf  tf  ) Add route to host. Parameters ip  IP address as dotted decimal intf  string, interface name

5.12.3.24 def mininet.nod mininet.node.Node.setIP e.Node.setIP ( se self, lf, ip, pre prefixL fixLen en =  8, in intf tf = None ) Set the IP address for an interface. Parameters intf  intf or intf name ip  IP address as a string prefixLen  prefix length, e.g. 8 for /8 or 16M addrs

5.12.3.25 def mininet.nod mininet.node.Node.setMAC e.Node.setMAC ( se self, lf, ma mac, c, int intff = None ) Set the MAC address for an interface. Parameters intf  intf or intf name mac  MAC address as string

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

40

Class Documentation

5.12.3.26 def mininet.nod mininet.node.Node.setP e.Node.setParam aram ( se self, lf, res result ults, s, me metho thod, d, par param  am  ) Internal. Parameters method  results  method  param 

configure a single parameter single  parameter dict of results to update config method name arg=value (ignore if value=None) value may also be list or dict

5.12.3.27 def mininet.nod mininet.node.Node.stop e.Node.stop ( self  ) Stop node.

5.12.3.28 def mininet.nod mininet.node.Node.terminate e.Node.terminate ( self  ) Send kill signal to Node and clean up after it.

5.12.3.29 def mininet.nod mininet.node.Node.waitOutp e.Node.waitOutput ut ( self self,, verb verbose ose =  False ) Wait for a command to complete. Complet Com pletion ion is signaled signaled by a sentinel sentinel cha charact racter, er, ASCII(12 ASCII(127) 7) appea appeari ring ng in the the outpu output t str stream eam. . Wait Wait for for the the senti sentine nel l and and retur return n the out output, put, inc includi luding ng trailing trailing newline. newline.

Parameters verbose  print output interactively

5.12.3.30 def mininet.nod mininet.node.Node.waitRea e.Node.waitReadable dable ( self self,, time timeoutm outmss =  None ) Wait until node’s output is readable. Parameters timeoutms  timeout in ms or None to wait indefinitely.

5.12.3.31 def mininet.nod mininet.node.Node.write e.Node.write ( se self, lf, da data  ta  ) Write data to node. Parameters data  string

The documentation for this class was generated from the following file: Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.14 mininet.node.OVSController Class Reference

41

• mininet/node.py mininet/node.py

5.13

mininet.no minin et.node.NOX de.NOX Class Referen Reference ce

Controller to run a NOX application. Inheritance diagram for mininet.node.NOX:

object

mini ininet.node.Node

mininet.node.Controller

mininet.node.NOX

Public Member Functions • def def __init__  Init.

Additional Inherited Members 5.13.1 Detail Detailed ed Descrip Description tion Controller to run a NOX application.

5.13.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.13.2 5.1 3.2.1 .1 de deff min minine inet.n t.nod ode.N e.NOX. OX. ini initt ( self self,, name name,, no noxAr xArgs, gs, kwa kwargs  rgs  ) Init. Parameters name  name to give controller noxArgs  arguments (strings) to pass to NOX The documentation for this class was generated from the following file: • mininet/node.py mininet/node.py

5.14

mininet.no minin et.node.OVSCo de.OVSControl ntroller ler Class Referen Reference ce

Open vSwitch controller. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

42

Class Documentation

Inheritance diagram for mininet.node.OVSController:

object

mininet.node.Node

mininet.node.Controller

mininet.node.OVSController

Public Member Functions • def def __init__ 

Additional Inherited Members 5.14.1 Detail Detailed ed Descrip Description tion Open vSwitch controller. The documentation for this class was generated from the following file: • mininet/node.py mininet/node.py

5.15

mininet.no minin et.node.OVSL de.OVSLegacyK egacyKernelS ernelSwitch witch Class Referen Reference ce

Open VSwitch legacy kernel-space switch using ovs-openflowd. Inheritance diagram for mininet.node.OVSLegacyKernelSwitch: mininet.node.OVSLegacyKernelSwitch:

object

mininet.node.Node

mininet.node.Switch

mininet.node.OVSLegacyKernelSwitch

Public Member Functions • def def __init__  Init.

• def def setup Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.15 mininet.node.OVSLegacyKernelSwitch Class Reference

Ensure any dependencies are loaded; if not, try to load them.

• def def start Start up kernel datapath.

• def def stop Terminate kernel datapath.

Public Attributes • dp • intf • execed

Additional Inherited Members 5.15.1 Detail Detailed ed Descrip Description tion Open VSwitch legacy kernel-space switch using ovs-openflowd. Currently only works in the root namespace.

5.15.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.15.2.1 5.15 .2.1 def mini mininet.n net.node. ode.OVSL OVSLega egacyK cyKerne ernelSwi lSwitch. tch. init ( se self, lf, na name, me, dp =  None, kw kwar args  gs  ) Init. Parameters name  name for switch dp  netlink id (0, 1, 2, ...) defaultMAC  default MAC as unsigned int; random value if None

5.15.3 Member Funct Function ion Docum Documentat entation ion 5.15.3.1 def mininet.nod mininet.node.OVSLega e.OVSLegacyKerne cyKernelSwitch.se lSwitch.setup tup ( cls  ) Ensure any dependencies are loaded; if not, try to load them.

5.15.3.2 def mininet.nod mininet.node.OVSLega e.OVSLegacyKerne cyKernelSwitch.sta lSwitch.start rt ( self, controlle controllers  rs  ) Start up kernel datapath.

5.15.3.3 def mininet.nod mininet.node.OVSLega e.OVSLegacyKerne cyKernelSwitch.sto lSwitch.stop p ( self  ) Terminate kernel datapath. The documentation for this class was generated from the following file: • mininet/node.py mininet/node.py Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

43

44

Class Documentation

5.16

mininet.no minin et.node.OVSS de.OVSSwitch witch Class Referen Reference ce

Open vSwitch switch. Inheritance diagram for mininet.node.OVSSwitch:

object

mininet.node.Node

mininet.node.Switch ininet.node.Switch

mininet.node.OVSSwitch

Public Member Functions • def def __init__  Init.

• def def setup Make sure Open vSwitch is installed and working.

• def def dpctl Run ovs-ofctl command.

• def def attach Connect Connect a data port.

• def def detach Disconnect a data port.

• def def controllerUUIDs Return ovsdb UUIDs for our controllers.

• def def connected Are we connected to at least one of our controllers? 

• def def start Start up a new OVS OpenFlow switch using ovs-vsctl.

• def def stop Terminate OVS switch.

Static Public Member Functions • def def TCReapply Unfortunately OVS and Mininet are fighting over tc queuing disciplines.

Public Attributes • failMode • datapath Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.17 mininet.node.RemoteController Class Reference

Additional Inherited Members 5.16.1 Detail Detailed ed Descrip Description tion Open vSwitch switch. Depends on ovs-vsctl.

5.16.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.16.2.1 5.16 .2.1 def mini mininet.n net.node. ode.OVSS OVSSwitc witch. h. init ( self self,, nam name, e, failM failMode ode =  ’secure’, data datapath path =  ’kernel’, pa param rams  s  ) Init. Parameters name  name for switch failMode  controller loss behavior (secure|open) datapath  userspace or kernel mode (kernel|user)

5.16.3 Member Funct Function ion Docum Documentat entation ion 5.16.3.1 def mininet.nod mininet.node.OVSSwitch e.OVSSwitch.stop .stop ( self  ) Terminate OVS switch.

5.16.3.2 def mininet.nod mininet.node.OVSSwitch e.OVSSwitch.TCReapp .TCReapply ly ( intf  ) [static] Unfortunately OVS and Mininet are fighting over tc queuing disciplines. As a quick hack/ workaround, we clear OVS’s and reapply our own. The documentation for this class was generated from the following file: • mininet/node.py mininet/node.py

5.17

mininet.no minin et.node.Remot de.RemoteContr eController oller Class Referen Reference ce

Controller running outside of Mininet’s control. Inheritance diagram for mininet.node.RemoteController: mininet.node.RemoteController:

object

mininet.node.Node

mininet.node.Controller

mininet.node.RemoteController

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

45

46

Class Documentation

Public Member Functions • def def __init__  Init.

• def def start Overridden to do nothing.

• def def stop Overridden to do nothing.

• def def checkListening Warn if remote controller is not accessible.

Additional Inherited Members 5.17.1 Detail Detailed ed Descrip Description tion Controller running outside of Mininet’s control.

5.17.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.17.2.1 5.17 .2.1 def mini mininet.n net.node. ode.Remo RemoteCo teContro ntroller ller.. init ( sel self, f, nam name, e, ip =  ’127.0.0.1’, po port rt = 6633, kw kwar args  gs  ) Init. Parameters name  name to give controller ip  the IP address where the remote controller is listening port  the port where the remote controller is listening

5.17.3 Member Funct Function ion Docum Documentat entation ion 5.17.3.1 def mininet.nod mininet.node.RemoteCo e.RemoteController ntroller.start .start ( self  ) Overridden to do nothing.

5.17.3.2 def mininet.nod mininet.node.RemoteCo e.RemoteController ntroller.stop .stop ( self  ) Overridden to do nothing. The documentation for this class was generated from the following file: • mininet/node.py mininet/node.py

5.18

mininet.top minin et.topo.Sin o.SingleSw gleSwitchRe itchReversedT versedTopo opo Class Referen Reference ce

Single switch connected to k hosts, with reversed ports. Inheritance diagram for mininet.topo.SingleSwitchRe mininet.topo.SingleSwitchReversedT versedTopo: opo: Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.19 mininet.topo.SingleSwitchTopo Class Reference

object

mininet.topo.Topo

mininet.topo.SingleSwitchReversedTopo

Public Member Functions • def def __init__  Init.

Public Attributes • k

Additional Inherited Members 5.18.1 Detail Detailed ed Descrip Description tion Single switch connected to k hosts, with reversed ports. The lowest-numbered host is connected to the highest-numbered port. Useful to verify that Mininet properly handles custom port numberings.

5.18.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.18.2.1 5.18 .2.1 def mini mininet.t net.topo opo.Sin .SingleS gleSwitc witchRe hRevers versedT edTopo. opo. init ( se self lf,, k = 2, op opts  ts  ) Init. Parameters k  number of hosts enable_all  enables all nodes and switches?

The documentation for this class was generated from the following file: • mininet/topo.py mininet/topo.py

5.19

mininet.top minin et.topo.Sin o.SingleSw gleSwitchT itchTopo opo Class Referen Reference ce

Single switch connected to k hosts. Inheritance diagram for mininet.topo.SingleSwitchT mininet.topo.SingleSwitchTopo: opo: Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

47

48

Class Documentation

object

mininet.topo.Topo

mininet.topo.SingleSwitchTopo

Public Member Functions • def def __init__  Init.

Public Attributes • k

Additional Inherited Members 5.19.1 Detail Detailed ed Descrip Description tion Single switch connected to k hosts.

5.19.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.19.2.1 5.19 .2.1 def mini mininet.t net.topo opo.Sin .SingleS gleSwitc witchT hTopo opo.. init ( se self, lf, k = 2, op opts  ts  ) Init. Parameters k  number of hosts enable_all  enables all nodes and switches?

The documentation for this class was generated from the following file:

• mininet/topo.py mininet/topo.py

5.20

mininet.lo minin et.log.Sin g.Singleto gleton n Class Referen Reference ce

Singleton pattern from Wikipedia See. Inheritance diagram for mininet.log.Singleton: Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.21 mininet.log.StreamHandlerNoNewline Class Reference

49

type

mininet.log.Singleton

Public Member Functions • def def __init__  • def def __call__ 

5.20.1 Detail Detailed ed Descrip Description tion Singleton pattern from Wikipedia See. Parameters http//en.wikipedia.org/wiki/SingletonPattern

Python  Inten Int ended ded to be used used as a __m __met etacl aclas ass_ s_ par param am, , as shown shown for the the class class below.

The documentation for this class was generated from the following file: • mininet/l mininet/log.p og.py y

5.21

mininet.lo minin et.log.Stre g.StreamHandl amHandlerNoNe erNoNewline wline Class Referen Reference ce

StreamHandler that doesn’t print newlines by default. Inheritance diagram for mininet.log.StreamHandlerNoNewline: mininet.log.StreamHandlerNoNewline:

StreamHandler

mininet.log.StreamHandlerNoNewline

Public Member Functions • def def emit Emit a record.

5.21.1 Detail Detailed ed Descrip Description tion StreamHandler that doesn’t print newlines by default. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

50

Class Documentation

Since StreamHandler automatically adds newlines, define a mod to more easily support interactive mode when we want it, or errors-only logging for running unit tests.

5.21.2 Member Funct Function ion Docum Documentat entation ion 5.21.2.1 def mininet.log.S mininet.log.StreamHand treamHandlerNoNew lerNoNewline.emit line.emit ( self self,, reco record  rd  ) Emit a record. If a formatter is specified, it is used to format the record. The record is then written to the stream with a trailing newline [ N.B. this may be removed depending on feedback ]. If exception information is present, it is formatted using traceback.printException and appended to the stream. The documentation for this class was generated from the following file: • mininet/l mininet/log.p og.py y

5.22

mininet.no minin et.node.Swit de.Switch ch Class Referen Reference ce

A Switch is a Node that is running (or has execed?) an OpenFlow switch. Inheritance diagram for mininet.node.Switch: object

mininet.node.Node

mininet.node.Switch

mini minine net. t.no node de.O .OVS VSLe Lega gacy cyKe Kern rnel elSw Swit itch ch

mini minine net. t.no node de.O .OVS VSSw Swit itch ch

mini minine net. t.no node de.U .Use serS rSwi witc tch h

Public Member Functions • def def __init__  • def def defaultDpid Derive dpid from switch name, s1 - > 1.

• def def defaultIntf Return control interface.

• def def sendCmd Send command to Node  to  Node .

• def def connected Is the switch connected to a controller? (override this method)

• def def __repr__  More informative string representation.

Public Attributes • dpid Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.23 mininet.link.TCIntf Class Reference

51

• opts • listenPort • controlIntf

Static Public Attributes • int int portBase = 1 • int int dpidLen = 16

5.22.1 Detail Detailed ed Descrip Description tion A Switch is a Node that is running (or has execed?) an OpenFlow switch.

5.22.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.22.2 5.2 2.2.1 .1 de deff min minine inet.n t.nod ode.S e.Swit witch ch.. ini initt ( se self, lf, na name, me, dp dpid id =  None, op opts ts = ’’, liste listenP nPort ort =  None, pa param rams  s  ) Parameters dpid  dpid for switch (or None to derive from name, e.g. s1 - > 1) opts  additional switch options listenPort  port to listen on for dpctl connections

5.22.3 Member Funct Function ion Docum Documentat entation ion 5.22.3.1 def mininet.nod mininet.node.Switch.sen e.Switch.sendCmd dCmd ( se self, lf, cm cmd, d, kwa kwarg rgs  s  ) Send command to Node Node.. Parameters cmd  string

The documentation for this class was generated from the following file:

• mininet/node.py mininet/node.py

5.23

mininet.li minin et.link.TCI nk.TCIntf ntf Class Referen Reference ce

Interface customized by tc (traffic control) utility Allows specification of bandwidth limits (various methods) as well as delay, loss and max queue length. Inheritance diagram for mininet.link.TCIntf: Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

52

Class Documentation

object

mininet.link.Intf 

mininet.link.TCIntf 

Public Member Functions • def def bwCmds Return tc commands to set bandwidth.

• def def tc Execute tc command for our interface.

• def def config Configure the port and set its properties.

Static Public Member Functions • def def delayCmds Internal method: return tc commands for delay and loss.

Additional Inherited Members 5.23.1 Detail Detailed ed Descrip Description tion Interface customized by tc (traffic control) utility Allows specification of bandwidth limits (various methods) as well as delay, loss and max queue length.

5.23.2 Member Funct Function ion Docum Documentat entation ion 5.23.2.1 def mininet.link.TC mininet.link.TCIntf.config Intf.config ( se self, lf, bw = None, de dela layy =  None, ji jitt tter er = None, lo loss ss = None, disa disable ble gro gro =  True, speedup =  0, us usee hfsc hfsc =  False, us usee tb tbff = False, lat laten ency cy ms ms =  None, en enab able le ecn ecn =  False, en enab able le red red =  False, ma maxx queue queue size =  None, pa param rams  s  ) Configure the port and set its properties. The documentation for this class was generated from the following file: • mininet/link.py mininet/link.py

5.24

mininet.li minin et.link.TCL nk.TCLink ink Class Referen Reference ce

Link with symmetric TC interfaces configured via opts. Inheritance diagram for mininet.link.TCLink: Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.25 mininet.topo.Topo Class Reference

53

object

mininet.link.Link 

mininet.link.TCLink 

Public Member Functions • def def __init__ 

Additional Inherited Members 5.24.1 Detail Detailed ed Descrip Description tion Link with symmetric TC interfaces configured via opts. The documentation for this class was generated from the following file: • mininet/link.py mininet/link.py

5.25

mininet.top minin et.topo.T o.Topo opo Class Referen Reference ce

Data center network representation for structured multi-trees. Inheritance diagram for mininet.topo.Topo: mininet.topo.Topo: object

mininet.topo.Topo

minine mininet.to t.topo po.Lin .Linear earTop Topo o

minine mininet.to t.topo. po.Sin Single gleSwi Switch tchRev Revers ersedT edTop opo o

minine mininet.to t.topo. po.Sin Single gleSwi Switch tchTop Topo o

Public Member Functions • def def __init__  Topo .

• def def addNode Add Node to graph.

• def def addHost Convenience.

• def def addSwitch Convenience.

• def def addLink node1,

• def def addPort Generate port mapping for new edge. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

minine mininet.to t.topol polib. ib.Tre TreeTo eTopo po

54

Class Documentation

• def def nodes Return nodes in graph.

• def def isSwitch Returns true if node is a switch. switch.

• def def switches Return switches.

• def def hosts Return hosts.

• def def links Return links.

• def def port Get port number.

• def def linkInfo Return link metadata.

• def def setlinkInfo Set link metadata.

• def def nodeInfo Return metadata (dict) for node.

• def def setNodeInfo Set metadata (dict) for node.

Static Public Member Functions • def def sorted Items sorted in natural (i.e.

Public Attributes • • • • • • •

g node_info link_info hopts sopts lopts ports

5.25.1 Detail Detailed ed Descrip Description tion Data center network representation for structured multi-trees.

5.25.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.25.2.1 5.25 .2.1 def mini mininet.t net.topo opo.T .Topo opo.. init ( self self,, hop hopts ts =  None, so sopts pts = None, lo lopt ptss = None ) Topo.. Topo Parameters

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.25 mininet.topo.Topo Class Reference

object  hinfo  default host options sopts  default switch options lopts  default link options

5.25.3 Member Funct Function ion Docum Documentat entation ion 5.25.3.1 def mininet.topo mininet.topo.To .Topo.addH po.addHost ost ( se self, lf, na name, me, opt opts  s  ) Convenience. Parameters method  Add host to graph. name  host name opts  host options

Returns host name

5.25.3.2 def mininet.topo mininet.topo.To .Topo.addL po.addLink ink ( se self, lf, no node de1, 1, no node de2, 2, po port1 rt1 =  None, po port2 rt2 = None, op opts  ts  ) node1, Parameters node2  nodes to link together port1, port2  ports (optional) opts  link options (optional)

Returns link info key

5.25.3.3 def mininet.topo mininet.topo.To .Topo.addN po.addNode ode ( se self, lf, na name, me, opt opts  s  ) Add Node to graph. Parameters name  name opts  node options

Returns node name

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

55

56

Class Documentation

5.25.3.4 def mininet.topo mininet.topo.To .Topo.addP po.addPort ort ( se self, lf, sr src, c, ds dst, t, sp sport ort =  None, dp dpor ortt = None ) Generate port mapping for new edge. Parameters src  source switch name dst  destination switch name

5.25.3.5 def mininet.topo mininet.topo.To .Topo.addS po.addSwitch witch ( se self, lf, na name, me, op opts  ts  ) Convenience. Parameters method  Add switch to graph. name  switch name opts  switch options

Returns switch name

5.25.3.6 def mininet.topo mininet.topo.To .Topo.hosts po.hosts ( se self, lf, so sort rt = True ) Return hosts. sort: sort: sort hos hosts ts alphabet alphabetical ically ly

Returns dpids list of dpids

5.25.3.7 def mininet.topo mininet.topo.To .Topo.isSwitch po.isSwitch ( se self lf,, n  ) Returns true if node is a switch.

5.25.3.8 def mininet.topo mininet.topo.To .Topo.links po.links ( se self, lf, so sort rt = True ) Return links. sort: sort: sort lin links ks alphabet alphabetical ically ly

Returns links list of name pairs

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.26 mininet.topolib.TreeTopo Class Reference

57

5.25.3.9 def mininet.topo mininet.topo.To .Topo.port po.port ( se self, lf, sr src, c, ds dst  t  ) Get port number. Parameters src  source switch name dst  destination switch name

Returns tuple (src_port, dst_port): src_port: port on source switch leading to the destination switch dst_port: port on destination switch leading to the source switch

5.25.3.10 def mininet.topo mininet.topo.To .Topo.sorted po.sorted ( items  ) [static] Items sorted in natural (i.e. alphabetical) order

5.25.3.11 def mininet.topo mininet.topo.To .Topo.switch po.switches es ( sel self, f, sor sortt = True ) Return switches. sort: sort: sort swi switche tches s alp alphabe habetica tically lly

Returns dpids list of dpids The documentation for this class was generated from the following file: • mininet/topo.py mininet/topo.py

5.26

mininet.top minin et.topolib. olib.T TreeT reeTopo opo Class Referen Reference ce

Topology for a tree network with a given depth and fanout. Inheritance diagram for mininet.topolib.TreeTopo:

object

mininet.topo.Topo

mininet.topolib.TreeTopo

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

58

Class Documentation

Public Member Functions • def def __init__  • def def addTree Add a subtree starting with node n.

Public Attributes • hostNum • switchNum

Additional Inherited Members 5.26.1 Detail Detailed ed Descrip Description tion Topology for a tree network with a given depth and fanout.

5.26.2 Member Funct Function ion Docum Documentat entation ion 5.26.2.1 def mininet.topo mininet.topolib.T lib.TreeT reeTopo.addT opo.addTree ree ( self self,, dep depth, th, fano fanout  ut  ) Add a subtree starting with node n. Returns last node added The documentation for this class was generated from the following file: • mininet/topolib.py mininet/topolib.py

5.27

mininet.no minin et.node.UserSw de.UserSwitch itch Class Referen Reference ce

User-space switch. Inheritance diagram for mininet.node.UserSwitch:

object

mininet.node.Node

mininet.node.Switch

mininet.node.UserSwitch

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

5.27 mininet.node.UserSwitch Class Reference

Public Member Functions • def def __init__  Init.

• def def setup Ensure any dependencies are loaded; if not, try to load them.

• def def dpctl Run dpctl command.

• def def connected Is the switch connected to a controller? 

• def def start Start OpenFlow reference user datapath.

• def def stop Stop OpenFlow reference user datapath.

Public Attributes • dpopts

Static Public Attributes • int int dpidLen = 12

5.27.1 Detail Detailed ed Descrip Description tion User-space switch.

5.27.2 Const Constructor ructor & Destruc Destructor tor Docum Documentat entation ion 5.27.2.1 5.27 .2.1 def mini mininet.n net.node. ode.User UserSwit Switch. ch. init ( se self, lf, na name, me, dp dpopt optss =  ’--no-slicing’, kwa kwarg rgs  s  ) Init. Parameters name  name for the switch dpopts  additional arguments to ofdatapath (–no-slicing)

5.27.3 Member Funct Function ion Docum Documentat entation ion 5.27.3.1 def mininet.nod mininet.node.UserSwitch e.UserSwitch.setup .setup ( cls  ) Ensure any dependencies are loaded; if not, try to load them.

5.27.3.2 def mininet.nod mininet.node.UserSwitch e.UserSwitch.start .start ( self, controlle controllers  rs  ) Start OpenFlow reference user datapath. Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

59

60

Class Documentation

Log to /tmp/sN-{ofd,ofp /tmp/sN-{ofd,ofp}.log. }.log.

Parameters controllers  list of controller objects

5.27.3.3 def mininet.nod mininet.node.UserSwitch e.UserSwitch.stop .stop ( self  ) Stop OpenFlow reference user datapath. The documentation for this class was generated from the following file: • mininet/node.py mininet/node.py

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

Index  __getitem__  mininet::net::Mininet, 26  __init__  mininet::link::Intf, 19 mininet::link::Link, 22 mininet::net::Mininet, 25 mininet::node::Node, 35 mininet::node::NOX, 41 mininet::node::OVSLegacyKernelSwitch, 43 mininet::node::OVSSwitch, 45 mininet::node::RemoteController, 46 mininet::node::Switch, 51 mininet::node::UserSwitch, 59 mininet::topo::LinearTopo, 21 mininet::topo::SingleSwitchReversedTopo, 47 mininet::topo::SingleSwitchTopo, 48 mininet::topo::Topo, 54 addController mininet::net::Mininet, 26 addHost mininet::net::Mininet, 26 mininet::topo::Topo, 55 addIntf mininet::node::Node, 35 addLink mininet::net::Mininet, 26 mininet::topo::Topo, 55 addNode mininet::topo::Topo, 55 addPort mininet::topo::Topo, 55 addSwitch mininet::net::Mininet, 26 mininet::topo::Topo, 56 addTree mininet::topolib::TreeTopo, 58 build mininet::net::Mininet, 27 buildFromTopo mininet::net::Mininet, 27 cleanup mininet::node::Node, 36 cmd

mininet::node::Node, 36 cmdPrint mininet::node::Node, 36 config mininet::link::Intf, 19 mininet::link::TCIntf, 52 mininet::node::CPULimitedHost, 16 mininet::node::Node, 36 configHosts mininet::net::Mininet, 27 configLinkStatus mininet::net::Mininet, 27 configureControlNetwork mininet::net::MininetWithControlNet, 32 configureRoutedControlNetwork mininet::net::MininetWithControlNet, 32 connectionsTo mininet::node::Node, 36 default mininet::cli::CLI, 11 deleteIntfs mininet::node::Node, 36 do_dpctl mininet::cli::CLI, 11 do_dump mininet::cli::CLI, 11 do_gterm mininet::cli::CLI, 11 do_help mininet::cli::CLI, 11 do_intfs mininet::cli::CLI, 11 do_iperf mininet::cli::CLI, 11 do_iperfudp mininet::cli::CLI, 11 do_link mininet::cli::CLI, 11 do_net mininet::cli::CLI, 12 do_nodes mininet::cli::CLI, 12 do_noecho mininet::cli::CLI, 12 do_pingall

62

INDEX

mininet::cli::CLI, 12 do_pingallfull mininet::cli::CLI, 12 do_pingpair mininet::cli::CLI, 12 do_pingpairfull mininet::cli::CLI, 12 do_px mininet::cli::CLI, 12 do_py mininet::cli::CLI, 12 do_source mininet::cli::CLI, 12 do_time mininet::cli::CLI, 12 do_x mininet::cli::CLI, 13 do_xterm mininet::cli::CLI, 13 emit mininet::log::StreamHandlerNoNewline, 50 emptyline mininet::cli::CLI, 13 fdToNode mininet::node::Node, 37 helpStr mininet::cli::CLI, 13 hosts mininet::topo::Topo, 56 IP mininet::node::Node, 37 interact mininet::net::Mininet, 27 intf mininet::node::Node, 37 intfIsUp mininet::node::Node, 37 intfName mininet::link::Link, 22 iperf mininet::net::Mininet, 27 isSwitch mininet::topo::Topo, 56 links mininet::topo::Topo, 56 MAC mininet::node::Node, 37 makeIntfPair mininet::link::Link, 22

mininet.cli.CLI, 9 mininet.link.Intf, 18 mininet.link.Link, 21 mininet.link.TCIntf, 51 mininet.link.TCLink, 52 mininet.log.MininetLogger, 30 mininet.log.Singleton, 48 mininet.log.StreamHandlerNoNewline, 49 mininet.net.Mininet, 23 mininet.net.MininetWithControlNet, 31 mininet.node.CPULimitedHost, 15 mininet.node.Controller, 13 mininet.node.Host, 17 mininet.node.NOX, 41 mininet.node.Node, 32 mininet.node.OVSController, 41 mininet.node.OVSLegacyKernelSwitch, 42 mininet.node.OVSSwitch, 44 mininet.node.RemoteController, 45 mininet.node.Switch, 50 mininet.node.UserSwitch, 58 mininet.topo.Graph, 17 mininet.topo.LinearTopo, 20 mininet.topo.SingleSwitchReversedTopo, 46 mininet.topo.SingleSwitchTopo, 47 mininet.topo.Topo, 53 mininet.topolib.TreeTopo, 57 mininet::cli::CLI default, 11 do_dpctl, 11 do_dump, 11 do_gterm, 11 do_help, 11 do_intfs, 11 do_iperf, 11 do_iperfudp, 11 do_link, 11 do_net, 12 do_nodes, 12 do_noecho, 12 do_pingall, 12 do_pingallfull, 12 do_pingpair, 12 do_pingpairfull, 12 do_px, 12 do_py, 12 do_source, 12 do_time, 12 do_x, 13 do_xterm, 13 emptyline, 13 helpStr, 13 waitForNode, 13 mininet::link::Intf Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

INDEX

 __init__, 19 config, 19 setMAC, 20 setParam, 20 mininet::link::Link  __init__, 22 intfName, 22 makeIntfPair, 22 mininet::link::TCIntf config, 52 mininet::log::MininetLogger output, 31 setLogLevel, 31 mininet::log::StreamHandlerNoNewline emit, 50 mininet::net::Mininet  __getitem__, 26  __init__, 25 addController, 26 addHost, 26 addLink, 26 addSwitch, 26 build, 27 buildFromTopo, 27 configHosts, 27 configLinkStatus, 27 interact, 27 iperf, 27 monitor, 28 ping, 28 pingAll, 28 pingAllFull, 28 pingFull, 28 pingPair, 29 pingPairFull, 29 run, 29 runCpuLimitTest, 29 start, 29 startTerms, 29 staticArp, 29 stopXterms, 30 mininet::net::MininetWithControlNet configureControlNetwork, 32 configureRoutedControlNetwork, 32 mininet::node::CPULimitedHost config, 16 popen, 16 setCPUFrac, 16 mininet::node::Controller start, 14 stop, 14 mininet::node::NOX  __init__, 41 mininet::node::Node

63

 __init__, 35 addIntf, 35 cleanup, 36 cmd, 36 cmdPrint, 36 config, 36 connectionsTo, 36 deleteIntfs, 36 fdToNode, 37 IP, 37 intf, 37 intfIsUp, 37 MAC, 37 monitor, 37 newPort, 37 pexec, 38 popen, 38 read, 38 readline, 38 sendCmd, 38 sendInt, 38 setARP, 39 setDefaultRoute, 39 setHostRoute, 39 setIP, 39 setMAC, 39 setParam, 39 stop, 40 terminate, 40 waitOutput, 40 waitReadable, 40 write, 40 mininet::node::OVSLegacyKernelSwitch  __init__, 43 setup, 43 start, 43 stop, 43 mininet::node::OVSSwitch  __init__, 45 stop, 45 TCReapply, 45 mininet::node::RemoteController  __init__, 46 start, 46 stop, 46 mininet::node::Switch  __init__, 51 sendCmd, 51 mininet::node::UserSwitch  __init__, 59 setup, 59 start, 59 stop, 60 mininet::topo::LinearTopo

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

64

 __init__, 21 mininet::topo::SingleSwitchReversedTopo  __init__, 47 mininet::topo::SingleSwitchTopo  __init__, 48 mininet::topo::Topo  __init__, 54 addHost, 55 addLink, 55 addNode, 55 addPort, 55 addSwitch, 56 hosts, 56 isSwitch, 56 links, 56 port, 56 sorted, 57 switches, 57 mininet::topolib::TreeTopo addTree, 58 monitor mininet::net::Mininet, 28 mininet::node::Node, 37 newPort mininet::node::Node, 37 output mininet::log::MininetLogger, 31 pexec mininet::node::Node, 38 ping mininet::net::Mininet, 28 pingAll mininet::net::Mininet, 28 pingAllFull mininet::net::Mininet, 28 pingFull mininet::net::Mininet, 28 pingPair mininet::net::Mininet, 29 pingPairFull mininet::net::Mininet, 29 popen mininet::node::CPULimitedHost, 16 mininet::node::Node, 38 port mininet::topo::Topo, 56 read mininet::node::Node, 38 readline mininet::node::Node, 38 run

INDEX

mininet::net::Mininet, 29 runCpuLimitTest mininet::net::Mininet, 29 sendCmd mininet::node::Node, 38 mininet::node::Switch, 51 sendInt mininet::node::Node, 38 setARP mininet::node::Node, 39 setCPUFrac mininet::node::CPULimitedHost, 16 setDefaultRoute mininet::node::Node, 39 setHostRoute mininet::node::Node, 39 setIP mininet::node::Node, 39 setLogLevel mininet::log::MininetLogger, 31 setMAC mininet::link::Intf, 20 mininet::node::Node, 39 setParam mininet::link::Intf, 20 mininet::node::Node, 39 setup mininet::node::OVSLegacyKernelSwitch, 43 mininet::node::UserSwitch, 59 sorted mininet::topo::Topo, 57 start mininet::net::Mininet, 29 mininet::node::Controller, 14 mininet::node::OVSLegacyKernelSwitch, 43 mininet::node::RemoteController, 46 mininet::node::UserSwitch, 59 startTerms mininet::net::Mininet, 29 staticArp mininet::net::Mininet, 29 stop mininet::node::Controller, 14 mininet::node::Node, 40 mininet::node::OVSLegacyKernelSwitch, 43 mininet::node::OVSSwitch, 45 mininet::node::RemoteController, 46 mininet::node::UserSwitch, 60 stopXterms mininet::net::Mininet, 30 switches mininet::topo::Topo, 57 TCReapply Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

INDEX

mininet::node::OVSSwitch, 45 terminate mininet::node::Node, 40 topo, 7 waitForNode mininet::cli::CLI, 13 waitOutput mininet::node::Node, 40 waitReadable mininet::node::Node, 40 write mininet::node::Node, 40

Generated on Tue Jul 30 2013 16:44:09 for Mininet Python API Reference Manual by Doxygen

65

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF