一:自学习交换机(二层MAC交换机)的编程思路 (一)明确问题 如何实现软件定义的自学习交换机? (二)设计解决方案 通过控制器来实现自学习交换算法,然后指导数据平面实现交换机操作 (三)确定具体的技术方案 控制器选用Ryu,数据平面通过Mininet模拟 (四)部署实施 在控制器上编程开发交换机应用,创建实验网络为验证方案做准备 (五)验证方案 运行程序,调试程序,验证程序 (六)优化 验证成功后,优化程序 二:自学习交换机原理 (一)普通交换机实现 交换机MAC地址表记录了统一网段中的各个主…
补充: (一)Ubuntu下安装Notepadqq 背景:为什么安装Notepadqq Notepad++ 不仅有语法高亮度显示,也有语法折叠功能,并且支持宏以及扩充基本功能的外挂模组.但是可惜的是Notepad++只能在Windows平台下使用. 工作中必须使用Windows时,Notepad++是众多程序员最喜爱的文本编辑器,在Ubuntu下是否能够使用到相同的软件呢?Notepadqq就是这样一款与Notepad++非常接近的编辑器,拥有几乎相同的功能. 安装: sudo add-apt-…
一:实现流量监控 (一)流量监控原理 其中控制器向交换机周期下发获取统计消息,请求交换机消息------是主动下发过程 流速公式:是(t1时刻的流量-t0时刻的流量)/(t1-t0) 剩余带宽公式:链路总带宽-流速--------是这一个这一个,例如s2-s3(不是一条,例如:h1->s1->s2->s3->h2)的剩余带宽 路径有效带宽是只:这一整条路径中,按照最小的剩余带宽处理 二:代码实现 (一)代码框架 from ryu.app import simple_switch_1…
一:推文 软件定义网络基础---REST API概述 软件定义网络基础---REST API的设计规范 二:掌握Ryu基本RESTAPI使用方法 (一)Ryu的RESTAPI (二) REST应用样例:app/ofctl_rest.py 1.所提供的样例API接口 # REST API # # Retrieve the switch stats # # get the list of all switches # GET /stats/switches # # get the desc stat…
一:实现最短跳数转发 (一)原理 推文:迪杰斯特拉算法和弗洛伊德算法 二:代码实现 (一)全部代码 from ryu.base import app_manager from ryu.controller.handler import set_ev_cls from ryu.controller import ofp_event from ryu.controller.handler import MAIN_DISPATCHER,CONFIG_DISPATCHER from ryu.lib.pa…
一:安装Pycharm https://www.cnblogs.com/huozf/p/9304396.html(有可取之处) https://www.jetbrains.com/idea/buy/#discounts?billing=yearly(学生注册,免费) 二:推文 https://www.cnblogs.com/ssyfj/p/11730362.html(含目录介绍) 三:源码分析流程 四:找入口函数main (一)我们编写的应用:全部继承于app_manager.RyuApp---…
一:Ryu是主流SDN开源控制器之一 (一)推文(摘录自) https://ryu.readthedocs.io/en/latest/ https://www.sdnlab.com/1785.html (二)Ryu是什么 Ryu is a component-based software defined networking framework. Ryu是一个基于组件的软件定义网络框架 Ryu provides software components with well defined API'…
一:实验目的 (一)案例目的 (二)实验内容 (三)网络拓扑结构 二:OpenFlow流表实验准备 (一)使用Python设置网络拓扑 --- tree_topo.py from mininet.topo import Topo from mininet.net import Mininet from mininet.node import RemoteController from mininet.link import TCLink from mininet.util import dump…
20145212 实验四<Andoid开发基础> 实验内容 安装Android Studio 运行安卓AVD模拟器 使用Android运行出模拟手机并显示自己的学号 实验过程 一.安装Android Studio 1.双击运行Android Studio Setup,选择默认选项. 2.在选择安装路径时,将Andriod Studio和SDK安装在同一个目录下,如图. 3.安装完成后默认运行,出现了如下错误 4.通过查询,在安装目录下,存在studio64.exe和studio.exe两个文件…
20145212 实验三<敏捷开发与XP实践> 实验内容 使用git上传代码 与20145223同学一组,使用git相互更改代码 同组实验报告链接:http://www.cnblogs.com/20145223ymy/p/5428392.html 实验步骤: 一.使用git上传代码 $ git push 1.找到需要push的文件所在文件夹,右键点击Git Bash Here. 2.在Git中输入ssh -T git@git.oschina.net,连接至我的开源中国账号,输入git init…