使用Mininet创建网络拓扑
使用Mininet创建Topo
Python脚本实现创建拓扑
#coding:utf-8
from mininet.net import Mininet
from mininet.topo import LinearTopo
# 四个交换机每个下边挂载一个主机
Linear4 = LinearTopo(k=4)
net = Mininet(topo=Linear4)
net.start()
net.pingAll()
net.stop()
# single,3
from mininet.topo import SingleSwitchTopo
Single3 = SingleSwitchTopo(k=3)
net = Mininet(topo=Single3)
net.start()
net.pingAll()
net.stop()
# tree,depth=2,fanout=2
from mininet.topolib import TreeTopo
Tree22 = TreeTopo(depth=2, fanout=2)
net = Mininet(topo=Tree22)
net.start()
net.pingAll()
net.stop()
# create 1 switch,2 host,set hosts IP
net = Mininet()
# Creating nodes in the network
c0 = net.addController()
h0 = net.addHost('h0')
s0 = net.addSwitch('s0')
h1 = net.addHost('h1')
# Creating links between nodes in network
net.addLink(h0, s0)
net.addLink(h1, s0)
# configuration of IP address in interfaces
h0.setIP('192.168.1.1', 24)
h1.setIP('192.168.1.2', 24)
net.start()
net.pingAll()
net.stop()
# add more limits to the host
from mininet.net import Mininet
from mininet.node import CPULimitedHost
from mininet.link import TCLink
net = Mininet(host=CPULimitedHost, link=TCLink)
# Creating nodes in the network
c0 = net.addController()
s0 = net.addSwitch('s0')
h0 = net.addHost('h0')
h1 = net.addHost('h1', cpu=0.5)
h2 = net.addHost('h2', cpu=0.5)
net.addLink(s0, h0, bw=10, delay='5ms',max_queue_size=1000, loss=10, use_htb=True)
net.addLink(s0, h1)
net.addLink(s0, h2)
net.start()
net.pingAll()
net.stop()
命令行创建topo
- 最小拓扑,1s,2h
# sudo mn --topo minimal
- linear 4s,4h
# sudo mn --topo linear,4
- single,1s,3h
# sudo mn --topo single,3
- tree,depth:2,fanout=2
# sudo mn --topo tree, fanout=2,depth=2
交互模式
# sudo mn
mininet>py net.addHost('h3')
mininet>py net.addLink(s1, net.get('h3'))
mininet>py s1.attach('s1-eth3')
mininet>py net.get('h3').cmd('ifconfig h3-eth0 10.3')
mininet>h1 ping -c1 10.3
mininet>px from mininet.util import dumpNodeConnections
mininet>py dumpNodeConnections(net.hosts)
mininet>py net.pingAll()
使用Mininet创建网络拓扑的更多相关文章
- 使用mininet创建网络拓扑,使ryu、ovs、主机连接
实验拓扑 控制器:RYU 交换机:s1,s2 主机:h1,h2,h3,h3 联通性(直连): h1<->s1;h2<->s1 h3<->s2;h4<-> ...
- Mininet 创建topo的时候指定host的ip
示例,要创建一个3个交换机8个主机的拓扑,如下图: 可以用如下python代码创建上述拓扑,并指定ip: from mininet.topo import Topo class MyTopo( Top ...
- Mininet自定义网络拓扑
在Mininet上的网络拓扑有两种方式 第一种 用mininet自带的miniedit可视化工具,在mininet/mininet/examples/的目录下的一个miniedit.py,运行这个文件 ...
- 基于Mininet的网络拓扑搭建代码
1 import logging 2 import os 3 import time 4 import thread 5 import multiprocessing 6 7 from mininet ...
- Mininet在创建拓扑的过程中为什么不打印信息了——了解Mininet的log系统
前言 写这篇博客是为了给我的愚蠢和浪费的6个小时买单! 过程原因分析 我用Mininet创建过不少拓扑了,这次创建的拓扑非常简单,如下图,创建拓扑的代码见github.在以前的拓扑创建过程中,我都是用 ...
- Mininet简介
在Coursera SDN开放课程中,编程作业要用Mininet来完成.这里对Mininet做一个简单的介绍. 什么是Mininet Mininet是由一些虚拟的终端节点(end-hosts).交换机 ...
- SDN 网络系统之 Mininet 与 API 详解
SDN 网络系统之 Mininet 与 API 详解 Mininet 是轻量级的软件定义网络系统平台,同时提供了对 OpenFlow 协议的支持.本文主要介绍了 Mininet 的相关概念与特性,并列 ...
- Mininet
在Coursera SDN开放课程中,编程作业要用Mininet来完成.这里对Mininet做一个简单的介绍. 什么是Mininet Mininet是由一些虚拟的终端节点(end-hosts).交换机 ...
- mininet+floodlight使用(一)
目录 一 .安装Floodlight 1.下载源和相关工具 2.安装(注意,需要java1.8,否则报错) 3.尝试游览器访问管理界面 4.修复查看不了floodlight 二.Mininet自定义拓 ...
随机推荐
- Web | Webpack快速上手
概述 Webpack 是一个前端资源加载/打包工具.它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源. 一般我们在开发中都是使用终端去进行安装,使用npm,关于npm ...
- 转:SQLServer中的GROUPING,ROLLUP和CUBE
转自:https://www.cnblogs.com/nikyxxx/archive/2012/11/27/2791001.html 聚集函数:GROUPING 用于汇总数据用的运算符: ROLLUP ...
- Git很简单--图解攻略
Git Git 是目前世界上最先进的分布式版本控制系统(没有之一) 作用 源代码管理 为什么要进行源代码管理? 方便多人协同开发 方便版本控制 Git管理源代码特点 1.Git是分布式管理.服务器和客 ...
- JS中判断字符串中出现次数最多的字符及出现的次数
<script type="text/javascript"> var str = 'qwertyuilo.,mnbvcsarrrrrrrrtyuiop;l,mhgfd ...
- 关于flume的filechannel的 full 问题
事务启动以后,批量向事务Transaction的一个putList的尾部写入,putlist是一个LinkedBlockingDeque . 事务提交的时候, 把putlist中的event批量移除, ...
- Docker toolbox换源
一 docker toolbox安装 略.... 阿里云加速器地址 https://jbriwmh3.mirror.aliyuncs.com 二 为docker toolbox更换国内源 docker ...
- Java实例 Part3:流程控制
目录 Example01:判断某一年是否为闰年 Example02:验证登录信息的合法性 Example03:判断用户输入月份的季节 Example04:使用while循环语句与自增运算符循环遍历数组 ...
- CDH升级 5.7.5 --> 5.13.3(tar包方式)
博客园首发,转载请注明出处:https://www.cnblogs.com/tzxxh/p/9123231.html 一.准备 1.关闭cdh中的服务 hdfs.yarn等所有服务:关闭 cm-ser ...
- MySQL用全库备份数据恢复单表数据
备份数据库时,采用了全库备份,但是因为某些原因需要回滚一个表的数据到备份数据库上,如果回滚整个库就比较费时间,因为可能这个表只有几十M,但是其它表可能有十几上百G,这时候就需要将需要恢复的表提取出来了 ...
- anaconda创建python虚拟环境
参考: 1.https://blog.csdn.net/lyy14011305/article/details/59500819 我的安装过程: 1. 之前已经安装了anaconda,我的版本是ana ...