sdn控制器

2019 SDN上机第1次作业

孤街浪徒 提交于 2019-12-03 04:42:47
1. 安装轻量级网络仿真工具Mininet 推荐使用github上的源码安装,主要命令如下: git clone https://github.com/mininet/mininet.git mininet/util/install.sh[options] mininet/util/install.sh -a 2. 用字符命令搭建如下拓扑,要求写出命令 sudo mn --topo linear,3 sudo mn --topo tree,fanout=3,depth=2 3. 利用可视化工具搭建如下拓扑,并要求支持OpenFlow 1.0 1.1 1.2 1.3,设置h1(10.0.0.10)、h2(10.0.0.11)、h3(10.0.0.12),拓扑搭建完成后使用命令验证主机ip,查看拓扑端口连接情况。 命令执行启动Mininet可视化界面后, 用鼠标选择左侧的对应的网络组件,然后在空白区域单击鼠标左键即可添加网络组件。如下图所示: 在主机、交换机、控制器上点击鼠标右键,选择Properties即可设置其属性。如控制器的属性如下图所示: 在主机h1,h2,h3属性中分别添加IP地址: 在“Edit”中选择“Preferences”,进入此界面,可勾选“Start CLI”,这样的话,就可以命令行界面直接对主机等进行命令操作 点击左下角“run”按钮,即可启动mininet

SDN学习笔记mininet+ryu开篇

匿名 (未验证) 提交于 2019-12-02 22:51:30
很久没写博客了,顺便最近要学一下sdn,顺便就记录一下自己的学习过程和心得体会这样子 顺便以后有个可以翻看笔记的地方: 1.mininet和ryu安装   只要照着那上面弄就没什么大问题   我使用的是Ubuntu安装的没有什么问题   以后会贴一些测试效果看一下   地址:http://osrg.github.io/ryu/resources.html   有繁体中文版 2.简单的测试: mn --topo single,3 --mac --switch ovsk --controller remote -x //mininet启动 single单个交换机;3三个host; mac自动设定host的mac; ovsk 交换机使用Open vSwitch;--controller remote使用外部控制器就是ryu;-x 显示xterm ovs-vsctl set Bridge s1 protocols=OpenFlow13 //设定ovs的OpenFlow 协议版本 //检查ovs里的某个流表 ryu-manager --verbose ./xxx.py //启动某个ryu APP 要进入相应路径 //现在基本上用到的这些 help可以查看帮助以后有用到的细节再添加    文章来源: SDN学习笔记mininet+ryu开篇

SDN实验---Ryu的应用开发(一)Hub实现

别等时光非礼了梦想. 提交于 2019-12-02 13:32:23
一:自学习交换机(二层MAC交换机)的编程思路 (一)明确问题 如何实现软件定义的自学习交换机? (二)设计解决方案 通过控制器来实现自学习交换算法,然后指导数据平面实现交换机操作 (三)确定具体的技术方案 控制器选用Ryu,数据平面通过Mininet模拟 (四)部署实施 在控制器上编程开发交换机应用,创建实验网络为验证方案做准备 (五)验证方案 运行程序,调试程序,验证程序 (六)优化 验证成功后,优化程序 二:自学习交换机原理 (一)普通交换机实现 交换机MAC地址表记录了统一网段中的各个主机对应交换机的端口和主机的MAC地址 当主机A要和主机B通信时,初始交换机MAC表是空的,会先记录主机A的MAC地址和对应的交换机端口,然后查找交换机MAC中是否有目标MAC地址,没有找到,会向其他所有端口泛洪查找 泛洪,通知其他主机。主机C接收到数据包,发现不是自己的,则不处理,丢弃数据包。当主机B接收后,发现是找自己的,则可以进行消息通信。交换机先进行MAC学习,记录主机B的MAC信息,再进行查表转发,单播发送给主机A (二)SDN中交换机实现 SDN中交换机不存储MAC表,(datapath)只存在流表。其地址学习操作由控制器(控制器中包含MAC 地址表)实现,之后控制器下发流表项给交换机 1.主机A向主机B发送信息,流表中只存在默认流表,告诉交换机将数据包发送给控制器。 2

SDN实验---Ryu的应用开发

隐身守侯 提交于 2019-12-02 13:14:24
补充: (一)Ubuntu下安装Notepadqq 背景:为什么安装Notepadqq Notepad++ 不仅有语法高亮度显示,也有语法折叠功能,并且支持宏以及扩充基本功能的外挂模组。但是可惜的是Notepad++只能在Windows平台下使用。 工作中必须使用Windows时,Notepad++是众多程序员最喜爱的文本编辑器,在Ubuntu下是否能够使用到相同的软件呢?Notepadqq就是这样一款与Notepad++非常接近的编辑器,拥有几乎相同的功能。 安装: sudo add-apt-repository ppa:notepadqq-team/notepadqq sudo apt-get update sudo apt-get install notepadqq 安装(2): snap install --classic notepadqq 补充: 什么是snap软件包? 卸载: sudo apt-get remove notepadqq sudo add-apt-repository --remove ppa:notepadqq-team/notepadqq (二) Ubuntu下安装 sublime 优点: 一流的Git集成 增量差异功能可跟踪正在编辑的文件的更改。 移动到GTK3,以及针对Linux的各种高DPI修复。 新的主题功能和块插入支持。 支持Unicode

SDN实验---Ryu的安装

隐身守侯 提交于 2019-12-02 04:56:32
一: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's that make it easy for developers to create new network management and control applications. Ryu为软件组件提供了定义良好的API,使开发人员能够轻松地创建新的网络管理和控制应用程序。Ryu supports various protocols for managing network devices, such as OpenFlow, Netconf, OF-config, etc.  支持管理网络设备的多种协议About OpenFlow, Ryu supports fully 1.0, 1.2, 1.3, 1.4, 1.5 and Nicira Extensions. 

软件定义网络基础---SDN控制平面

我是研究僧i 提交于 2019-12-01 04:24:15
一:SDN控制平面 一个或多个SDN控制器组成,是网络的大脑。  对底层网络交换设备进行集中管理,状态监测、转发决策以及处理和调 度数据平面的流量;  通过北向接口向上层应用开放多个层次的可编程能力。 (一)典型的SDN控制器体系架构 SDN控制平面分为6层 南向接口层主要对各种南向接口协议的支持,如Open Flow,Netconf,OVSDB等,控制器通过接口层的通道实现对底层网络的管理 抽象逻辑层主要是将服务抽象出来,实现各种通信协议的适配,为各模块和应用提供一致的服务 基础网络层在任何控制器中都是必不可少的,这里的模块包括了控制器内部的实现逻辑,比如:拓扑管理、链路计算等,也包括一些底层的网络实现逻辑,比如BGP Vxlan的实现等 内置应用层提供了基础的功能包,如L2、L3网络,Overlay APP,服务链APP等 北向接口层中,控制器实现了Restful API的接口或者嵌入式的API提供给上层应用调用 配置管理层提供了控制器服务管理,集群管理和图形化界面,如ODL控制器提供了模块的启用、删除等功能,Floodlight等控制器提供了一个简单易用的UI界面,可以在web界面中调用控制器的北向API对控制器进行配置 二:控制器关键技术 主要是包括南向网络控制和北向业务支撑 (一)南向网络技术 通过南向接口协议进行链路发现、拓扑管理、策略制定、表项下发等:

浅谈Silver Peak 出品的SD-WAN产品

喜夏-厌秋 提交于 2019-11-28 14:16:11
最近接触到SD-WAN项目,选用的是Silver Peak产品,原来我在70-743中接触过微软的SD-WAN产品,感觉微软也是用一个类似的硬件盒子,接到你的互联网的前端,把公司内部的虚机平台的VLAN信息和Azure平台做一个很好的管理。 在微软的产品中,需要配置SDN网络控制器,SDN的SLB,SDN RS网关,当然还可以做QOS控制SDN虚拟网络带宽等。 微软的SDN有两种管理方式,一个是Powershell的,一个是通过System Center VMM进行管理。 在百度上,只能找到关于silver peak的一页资料,呵呵,几乎为零的技术支持。当然对于这个产品的理解只能在使用过程中总结,管理界面应该是Web样子的。就是假设我们通过一个小盒子样的前端,通过互联网给接入到一个专有的网络中,实际感觉就是不是MPLS专线好用,云平台。 以下就是这个产品的介绍,目前我就只能理解到这一点,以后有实际经验再更新吧。 来源: 51CTO 作者: raincity 链接: https://blog.51cto.com/shadingyu/2453097

2019 SDN上机第3次作业

时光总嘲笑我的痴心妄想 提交于 2019-11-28 03:48:43
1.利用Mininet仿真平台构建如下图所示的网络拓扑,配置主机h1和h2的IP地址(h1:10.0.0.1,h2:10.0.0.2),测试两台主机之间的网络连通性 (1)先打开终端通过命令sudo wireshark启动wireshark工具,在wireshark中使用any捕获过滤器(以免捕捉不到某些在建立网络拓扑时就发送的报文) (2)通过miniedit.py创建给定的拓扑 (3)设置主机h1的IP地址为10.0.0.1,设置主机h2的IP地址为10.0.0.2; (4)勾选start CLI,并支持OpenFlow 1.0 1.1 1.2 1.3,Controller选择默认的openflow reference[] (5)测试两台主机之间的网络连通性 2. 利用Wireshark工具,捕获拓扑中交换机与控制器之间的通信数据,对OpenFlow协议类型的各类报文(hello, features_request, features_reply, set_config, packet_in, packet_out等)进行分析,对照wireshark截图写出你的分析内容。 hello 控制器6633端口 ---> 交换机48704端口(最高能支持OpenFlow 1.0) 交换机48704端口--- 控制器6633端口(最高能支持OpenFlow 1.3) 于是双方建立连接

2019 SDN上机第3次作业

烂漫一生 提交于 2019-11-28 03:47:11
2019 SDN上机第3次作业 1. 利用Mininet仿真平台构建如下图所示的网络拓扑,配置主机h1和h2的IP地址(h1:10.0.0.1,h2:10.0.0.2),测试两台主机之间的网络连通性 1.1 miniedit.py设置 start CLI 支持OpenFlow 1.0 1.1 1.2 1.3 其他使用默认设置 测试两机连通性 测试主机h1和h2 2. 利用Wireshark工具,捕获拓扑中交换机与控制器之间的通信数据,对OpenFlow协议类型的各类报文(hello, features_request, features_reply, set_config, packet_in, packet_out等)进行分析,对照wireshark截图写出你的分析内容。 hello 控制器6633端口(最高支持OpenFlow 1.0)发送到交换机50418端口 交换机50418端口(最高支持OpenFlow 1.3)发送到交换机6633端口 ​ 因此双方协商后向下兼容选择使用OpenFlow 1.0协议 Features Request 控制器6633端口(控制器需要获得交换机的特性信息)发送到交换机50418端口 Set Config 控制器6633端口(控制器发送给交换机flag和max bytes of packet进行配置发送到交换机50418端口 Port

2019 SDN阅读作业

大憨熊 提交于 2019-11-28 03:34:23
SDN的基本思想 利用分层的思想,SDN 将数据与控制相分离.在控制层,包括具有逻辑中心化和可编程的控制器,可掌握全局网络信息,方便运营商和科研人员管理配置网络和部署新协议等.在数据层,包括哑的(dumb)交换机(与传统的二层交换机不同,专指用于转发数据的设备).交换机仅提供简单的数据转发功能,可以快速处理匹配的数据包,适应流量日益增长的需求.两层之间采用开放的统一接口(如 OpenFlow[4]等)进行交互.控制器通过标准接口向交换机下发统一标准规则,交换机仅需按照这些规则执行相应的动作即可。SDN 技术能够有效降低设备负载,协助网络运营商更好地控制基础设施,降低整体运营成本 ONF全称是什么,是什么组织? 开放网络基金会(Open Networking Foundation),其使命是加速开放SDN的部署,ONF推广开放SDN和OpenFlow技术及标准,促进产品,服务,应用,客户和用户市场的发展。是一个仍在发展壮大中的非盈利组织。 FV是什么? Functions Virtualisation,功能虚拟化; NFV,Network functions virtualisation,网络功能虚拟化; NFV将传统网络设备的软件与硬件相分离,使网络功能更新独立于硬件设备。 ODL设计的三个层次是什么? 应用层、控制层和数据层 文中提到了哪些控制器,控制层和数据层通信标准协议是什么