In this assignment, your task is to create a simple tree topology. You will assume each level i.e., core, aggregation, edge and host to be composed of a single layer of switches/hosts with a configurable fanout value (k) looks like:

  代码:

# CustomTopo.py
'''
Coursera:
- Software Defined Networking (SDN) course
-- Module 3 Programming AssignmentProfessor: Nick Feamster
Teaching Assistant: Muhammad Shahbaz
'''from mininet.topo import Topo
from mininet.net import Mininet
from mininet.node import CPULimitedHost
from mininet.link import TCLink
from mininet.util import irange,dumpNodeConnections
from mininet.log import setLogLevelclass CustomTopo(Topo):"Simple Data Center Topology""linkopts - (1:c1, 2:aggregation, 3: edge) parameters""fanout - number of child switch per parent switch"def __init__(self, linkopts1, linkopts2, linkopts3, fanout=2, **opts):# Initialize topology and default optionsTopo.__init__(self, **opts)# Add your logic here ...self.fanout = fanoutcore = self.addSwitch('c1')for i in irange(1, fanout):aggregation = self.addSwitch('a%s' %i)self.addLink(core, aggregation, **linkopts1)for j in irange(1, fanout):edge = self.addSwitch('e%s' %(fanout*(i-1)+j))self.addLink(aggregation, edge, **linkopts2)for k in irange(1, fanout):host = self.addHost('h%s' %((fanout*(fanout*(i-1)+j-1))+k))self.addLink(edge, host, **linkopts3)topos = { 'custom': ( lambda: CustomTopo() ) }def simpleTest():"Create and test a simple network"linkopts1 = dict(bw=10, delay='3ms', use_htb=True)linkopts2 = dict(bw=8, delay='4ms', loss=1, max_queue_size=900, )linkopts3 = dict(bw=6, delay='5ms', loss=1, max_queue_size=800)topo = CustomTopo(linkopts1, linkopts2, linkopts3, fanout=2)net = Mininet(topo, host=CPULimitedHost, link=TCLink)net.start()print "Dumping host connections"dumpNodeConnections(net.hosts)print "Testing network connectivity"net.pingAll()net.stop()if __name__ == '__main__':# Tell mininet to print useful informationsetLogLevel('info')simpleTest()

在mininet虚拟机上执行下面操作即可创建自定义的网络拓扑。函数simpleTest()创建网络并进行了简单的ping测试,从屏幕输出可以看到创建的过程。

mininet@mininet-vm:~/mininet$ sudo python CustomTopo.py

转载于:https://www.cnblogs.com/heimafeitian/p/9653262.html

minnet sample相关推荐

  1. dataframe sample 采样,抽样

    20220324 https://blog.csdn.net/DSTJWJW/article/details/90667570 不重复随机抽样 20211223 # 读取数据集 test_data_a ...

  2. RxJava 过滤操作符 throttleFirst 与 throttleLast 以及 sample

    看文档发现 throttleFirst 与 throttleLast 以及 Sample 都跳到同一个界面Sample throttleFirst :在某段时间内,只发送该段时间内第1次事件(假如一个 ...

  3. oracle导出客户机使用us7a,导入 Oracle WORLD SAMPLE

    Import WORLD SAMPLE C:\oraclexe\app\oracle\product\11.2.0\server\bin>imp system/oracle Import: Re ...

  4. SQL2K数据库开发二之查看和修改Sample数据库

    1.在SQL Server 企业管理器中,选择"数据库"节点,右击sample 数据库图标,在弹出的菜单中选择"属性". 2."常规"页面显 ...

  5. python实现洗牌算法_洗牌算法及 random 中 shuffle 方法和 sample 方法浅析

    对于算法书买了一本又一本却没一本读完超过 10%,Leetcode 刷题从来没坚持超过 3 天的我来说,算法能力真的是渣渣.但是,今天决定写一篇跟算法有关的文章.起因是读了吴师兄的文章 <扫雷与 ...

  6. 环境DNA高通量测序问题及解决SOP (Part 1: From sample to data)

    高通量测序技术是对传统测序的革命性改变,基于扩增子的高通量DNA测序方法是目前国际上微生物群落研究中最方便.最经济.最有效的常规方法之一.然而不同研究会产生不同的结果,这通常是基于DNA序列的微生物组 ...

  7. pandas使用query函数和sample函数、使用query函数筛选dataframe中的特定数据行并使用sample函数获取指定个数的随机抽样数据

    pandas使用query函数和sample函数.使用query函数筛选dataframe中的特定数据行并使用sample函数获取指定个数的随机抽样数据(query dataframe and ran ...

  8. pandas对dataframe的数据列进行随机抽样(Random Sample of Columns)、使用sample函数进行数据列随机抽样

    pandas对dataframe的数据列进行随机抽样(Random Sample of Columns).使用sample函数进行数据列随机抽样 目录

  9. pandas对dataframe的数据行进行随机抽样(Random Sample of Rows):使用sample函数进行数据行随机抽样(有放回的随机抽样,replacement)

    pandas对dataframe的数据行进行随机抽样(Random Sample of Rows):使用sample函数进行数据行随机抽样(有放回的随机抽样,replacement) 目录

  10. R语言计算回归模型每个样本(观察、observation、sample)的DFFITS度量实战:忽略单个观察(样本)时,回归模型所做的预测会发生多大的变化

    R语言计算回归模型每个样本(观察.observation.sample)的DFFITS度量实战:忽略单个观察(样本)时,回归模型所做的预测会发生多大的变化 目录

最新文章

  1. 使用npm打包后生成的package.json中重要字段含义
  2. php 反序列化工具 phpggc 简介
  3. mysql数据库query cache
  4. 下载安装webstrom及激活
  5. guava限流器RateLimiter原理及源码分析
  6. 计算机xp用户丢失,WinXP电脑硬盘分区表丢失的解决方法
  7. html5鼠标放大,利用HTML5实现粒子游走鼠标经过放大特效
  8. java上传文件堆溢出_我的正则表达式导致Java中的堆栈溢出;我错过了什么?
  9. Win10+Anaconda创建新环境安装pytorch
  10. 所谓的三十之后无技术
  11. NOIP2016普及组T4(魔法阵)题解
  12. Win系统 - 局域网内电脑文件共享
  13. 炸裂了!来了一波新年微信红包封面,抓紧领取,先到先得!
  14. Error: recoverUnfinalizedSegments failed for required journal
  15. 五分钟看懂python函数(同Java方法作比较)
  16. 小白的JAVA学习笔记(九)---异常处理(try/catch/finally,ducking)
  17. 51单片机实现的双机通信设计仿真
  18. ap的ht模式_华通AP-HT-WD400AP-IN系列
  19. H5 高德、百度、腾讯地图选择导航功能实现
  20. python字典(dictionary)

热门文章

  1. Unity Transform bug
  2. Position与localPosition的区别
  3. 对象关系映射文件详解
  4. Spring AOP(三)之AfterThrowing增强处理
  5. 【渝粤教育】国家开放大学2018年秋季 2312T旅行社经营管理 参考试题
  6. 知乎上的48条神回复,针针见血
  7. MariaDB基本操作--(创建用户)(转)
  8. 【mysql】【windows】MySQL 服务无法启动,服务没有报告任何错误,请键入 NET HELPMSG 3534 以获得更多的帮助。...
  9. Java---SSH(MVC)面试
  10. 【转】C语言条件编译及编译预处理阶段