[环境搭建]SDN网络感知服务与最短路径应用
1.安装python模块networkx
pip install networkx
2.给Network_Awareness.py加修改权限
chmod 777 Network_Awareness.py
3.下载安装ryu
git clone git://github.com/osrg/ryu.git
cd ryu sudo python
./setup.py install
#若已安装ryu,删了再装, pip uninstall ryu
4.修改“***/ryu/ryu/flags.py"文件,在实例“CONF”调用的方法“register_cli_opts”的字典里添加:
CONF.register_cli_opts([
# k_shortest_forwarding
cfg.IntOpt('k-paths', default=1, help='number for k shortest paths'),
cfg.StrOpt('weight', default='hop',
help='weight type of computing shortest path.')])
如图:
5.修改文件"/ryu/ryu/topology/switches.py",在“PortData”类的初始化方法中添加了实例变量“self.delay”:
self.delay = 0
在“@set_ev_cls(ofp_event.EventOFPPacketIn, MAIN_DISPATCHER)”下添加:
def packet_in_handler(self, ev):
# add code for getting LLDP packet receiving timestamp
recv_timestamp = time.time()
if not self.link_discovery:
return
msg = ev.msg
try:
src_dpid, src_port_no = LLDPPacket.lldp_parse(msg.data)
except LLDPPacket.LLDPUnknownFormat as e:
# This handler can receive all the packtes which can be
# not-LLDP packet. Ignore it silently
return
dst_dpid = msg.datapath.id
if msg.datapath.ofproto.OFP_VERSION == ofproto_v1_0.OFP_VERSION:
dst_port_no = msg.in_port
elif msg.datapath.ofproto.OFP_VERSION >= ofproto_v1_2.OFP_VERSION:
dst_port_no = msg.match['in_port']
else:
LOG.error('cannot accept LLDP. unsupported version. %x',
msg.datapath.ofproto.OFP_VERSION)
# get the lldp delay, and save it into port_data.
for port in self.ports.keys():
if src_dpid == port.dpid and src_port_no == port.port_no:
send_timestamp = self.ports[port].timestamp
if send_timestamp:
self.ports[port].delay = recv_timestamp - send_timestamp
6.重新编译安装ryu
cd ***/ryu
python setup.py install
7.启动ryu控制器
ryu-manager shortest_forwarding.py --observe-links --k-paths=2 --weight=bw
8.开启mininet并连接控制器
mn --controller=remote,ip=192.168.1.197,port=6653
注:“ip”填写的是启动ryu控制器的那台主机的ip
转载于:https://www.cnblogs.com/ownhp/p/9094912.html
[环境搭建]SDN网络感知服务与最短路径应用相关推荐
- Dubbo环境搭建-管理控制台dubbo-admin实现服务监控
场景 Dubbo环境搭建-ZooKeeper注册中心: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103555470 在上面搭 ...
- 使用WIF实现单点登录Part I——Windows Identity Foundation介绍及环境搭建 -摘自网络...
上个月有一个星期的时间都在研究asp.net mvc统一身份验证及单点登录的实现.经过了一番的探索,最终决定使用微软的Windows Identity Foundation.但是这东西用的人貌似不多, ...
- swift perfect mysql_Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)...
本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...
- Java Web项目配置环境搭建-如何增加Tomcat服务 Tomcat[内含Tomcat7资源]
Tomcat7资源:https://download.csdn.net/download/weixin_42859280/11231520 前言:照片比例不对,点击放大镜进行查看! 1,双击my ec ...
- fabric多节点网络环境搭建(v2.2)
fabric多节点网络环境搭建(v2.2) 文章目录 fabric多节点网络环境搭建(v2.2) 一.机器准备与基础环境搭建 二.创建服务部署目录 三.准备证书文件 四.通道配置文件 五.配置dock ...
- 一次SDN控制器环境搭建之路
一次SDN控制器环境搭建之路 目的 SDN控制器选择 目的 由于进行对比测试的需要 ,我决定选取一款开源的SDN控制器,搭建SDN网络.主要内容是基于开源SDN控制器+Mininet的方式进行Open ...
- 软件定义网络——ODL环境搭建
软件定义网络--ODL环境搭建 SDN那些事 ODL环境 环境搭建 CentOS 7下的搭建 1. 安装基础组件并配置环境变量 2. 上传安装包到主机并安装 3. 环境运行 4. 在karaf中安装相 ...
- 网络协议知识串讲-第40讲-搭建一个网络实验环境:授人以鱼不如授人以渔
因为这门课是基础课程,而且配合音频的形式发布,所以我多以理论为主来进行讲解.在专栏更新的过程中,不断有同学让我推荐一些网络方面的书籍,还有同学说能不能配合一些实验来说明理论. 的确,网络是一门实验性很 ...
- 利用虚拟机配置SDN网络实验平台(virtual box+Ubuntu+jdk配置+mininet+floodlight/openDaylight)
一.安装Virtual Box步骤 至于VMware,当然也可以,二者都是虚拟机软件.但是VMware的安装文件很大,安装相对麻烦,而virtual box安装过程中,是中文的,安装较快且方便,比较适 ...
最新文章
- 技术15期:4种常用的可视化技术【web前端】
- Django之重定向
- EOS开发工具Visual-studio-code和CLion设置
- snmp验证方式总结
- 【iCore4 双核心板_FPGA】例程七:状态机实验——状态机使用
- 5分绩点转4分_工作复盘|因为这5点,4月份目标没完成
- Error running ‘Unnamed‘: Unable to open debugger port (127.0.0.1:xxxx)
- nachos操作系统初步认识
- 3小时GIS入门教程(二)GIS数据格式、坐标系
- 魔兽世界——暮光高地任务攻略
- 北海焊接机器人_北海中型机械手臂生产,机械手
- E2-AEN: End-to-End Incremental Learning with Adaptively Expandable Network
- 服务器上的光信号出现红点怎么办,光纤猫光信号闪红灯无法上网怎么办
- 用Python实现中文编程
- 最简单最适合纯小白的postman使用方法(测试接口的不二利器)(从介绍到下载到使用的详细教程)
- 力扣(15.18)补9.19
- vue config.js详解——vue config.js到底是什么,有什么作用?
- MATLAB中datetime函数的使用
- 红外寻迹小车基于K128单片机的红外对管飞思卡尔智能车(5个对管)程序部分
- 软件工程网络15个人阅读作业1(201521123111 陈伟泽)