ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:950.09KB ,
资源ID:4373771      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4373771.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(onos教程.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

onos教程.docx

1、onos教程1 介绍1.1 前提条件1. 计算机:2G内存和5G自由空间,快速的处理器可以加速虚拟机的运行性能。2. 能运行VirtualBox的操作系统。3. 安装VirtualBox,需要管理员权限。4. SDN,OpenFlow和Mininet的基本概念。请事先完成OpenFlow tutorial和Mininet workthrough5. 并非必须,但是强烈建议完成FlowVisor tutorial。熟悉Apache Karaf将会很有帮助。1.2 卡住了?返现了bug? 有问题?Email:onos-discuss高效的提交bug报告:https:/wiki.onosprojec

2、t.org/display/ONOS/ONOS+Mailing+Lists2 环境设置2.1 安装需要的软件下载并安装VirtualBox最新版,下载Tutorial VM:http:/downloads.onosproject.org/vm/onos-tutorial-1.0.0r161-ovf.zip2.2 创建虚拟机解压缩下载的Tutorial VM,双击OVF文件将自动启动VitualBox和导入虚拟机对话框。导入虚拟机,即可。虚拟机内的Guest OS帐号和密码如下:USERNAME:tutorial1PASSWORD:tutorial12.3 重要的命令提示符ONOS的命令提示符:

3、onosMininet的命令提示符:mininet2.4 重置桌面上的Reset快捷方式用户快速重置Tutorial所做的所有改动为初始状态。2.5 启动Mininet本教程所有的联系都是使用相同的网络拓扑(如下图所示)。网络中有6台交换机,4台外边的交换机上连接了6台主机,这4台交换机又连接到中间互连的2台交换机上。启动Mininet(双击桌面的Mininet图标)即可启动此网络拓扑。3 激活数据包转发(Reactive Forwarding)双击桌面上的ONOS图标,打开一个ONOS命令行提示符。3.1 No ping? Why?上面的网络拓扑中主机之间是不能ping通的。在mininet

4、提示符中输入下面的命令:minineth11 ping -c3 h41得到如下的结果:mininet h11 ping -c3 h41PING 10.0.0.19 (10.0.0.19) 56(84) bytes of data.From 10.0.0.1 icmp_seq=1 Destination Host UnreachableFrom 10.0.0.1 icmp_seq=2 Destination Host UnreachableFrom 10.0.0.1 icmp_seq=3 Destination Host Unreachable- 10.0.0.19 ping statistic

5、s -3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2009ms“Reactive Forwarding”是一个非常简单的SDN应用程序,它为每一个被送到控制器的数据包安装流表。但是此应用默认没有被加载。使用如下命令查看已经被加载的应用程序列表:onos list110 | Active | 80 | 1.0.0.SNAPSHOT | onos-rest 116 | Active | 80 | 1.0.0.SNAPSHOT | onos-of-api 117 | Active | 80 | 1.0.0.

6、SNAPSHOT | onos-of-ctl 118 | Active | 80 | 1.0.0.SNAPSHOT | onos-lldp-provider 119 | Active | 80 | 1.0.0.SNAPSHOT | onos-host-provider 120 | Active | 80 | 1.0.0.SNAPSHOT | onos-of-provider-device 121 | Active | 80 | 1.0.0.SNAPSHOT | onos-of-provider-packet 122 | Active | 80 | 1.0.0.SNAPSHOT | onos-o

7、f-provider-flow 136 | Active | 80 | 1.0.0.SNAPSHOT | onos-cli 137 | Active | 80 | 8.1.15.v20140411 | Jetty : Websocket 138 | Active | 80 | 1.0.0.SNAPSHOT | onos-gui 151 | Active | 80 | 1.0.0.SNAPSHOT | onos-core-net 152 | Active | 80 | 1.0.0.SNAPSHOT | onos-core-trivial3.2 加载Reactive Forwarding应用在ON

8、OS提示符中输入如下命令(可以使用tab键提示输入内容):ONOSfeature:install onos-app-fwd在Mininet提示符中再次输入ping命令,即可ping通:mininet h11 ping h41PING 10.0.0.19 (10.0.0.19) 56(84) bytes of data.64 bytes from 10.0.0.19: icmp_req=1 ttl=64 time=9.12 ms3.3 启动和停止在ONOS命令行提示符中输入如下的命令停止和启动应用:onos stop onos-app-fwd停止应用程序后,不能ping通。onos start

9、onos-app-fwd启动应用程序后,能ping通。4 ONOS CLI命令ONOS有很多命令,本节学习最常用命令。获得命令行帮助的方法如下:onoshelp onos4.1 devices命令如果没有设备去控制的话,SDN控制器就没什么用。列出控制其中现有的设备列表:onos devicesid=of:0000000000000001, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.1.3, serial=None, protocol=OF_10id=of:00000000

10、00000002, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.1.3, serial=None, protocol=OF_10id=of:000000000000000b, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.1.3, serial=None, protocol=OF_10id=of:000000000000000c, available=true

11、, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.1.3, serial=None, protocol=OF_10id=of:000000000000000d, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.1.3, serial=None, protocol=OF_104.2 links命令显示系统中设备间的连接信息:onos linkssrc=of:000000000000000e/1,

12、dst=of:0000000000000001/5, type=DIRECT, state=ACTIVEsrc=of:000000000000000d/1, dst=of:0000000000000001/4, type=DIRECT, state=ACTIVE。src=of:0000000000000001/1, dst=of:0000000000000002/1, type=DIRECT, state=ACTIVE4.3 hosts命令列出网络中的主机列表:onos hostsid=00:00:00:00:00:01/-1, mac=00:00:00:00:00:01, location=

13、of:000000000000000b/3, vlan=-1, ip(s)=10.0.0.1id=00:00:00:00:00:13/-1, mac=00:00:00:00:00:13, location=of:000000000000000e/4.4 flows命令流命令允许你查看系统中当前注册的流表项,流表项有如下几个状态: PENDING_ADD 流被提交和转发给交换机。 ADDED 流已被添加到交换机。 PENDING_REMOVE 请求删除已被提交和转发给交换机的流。 REMOVED 流表规则已被删除首先,在网络中开始发送一些流量:mininet h11 ping h41接着在ONO

14、S的提示符中输入流命令,以查看流表信息:onos flowsdeviceId=of:0000000000000001, flowRuleCount=1 id=30000b889cb32, state=ADDED, bytes=8722, packets=89, duration=89, priority=10, appId=org.onlab.onos.fwd selector=ETH_TYPEethType=800, ETH_SRCmac=00:00:00:00:00:01, ETH_DSTmac=00:00:00:00:00:13, IN_PORTport=2 treatment=OUTP

15、UTport=5deviceId=of:0000000000000002, flowRuleCount=1 id=30000b889cf4d, state=ADDED, bytes=8624, packets=88, duration=88, priority=10, appId=org.onlab.onos.fwd selector=ETH_TYPEethType=800, ETH_SRCmac=00:00:00:00:00:13, ETH_DSTmac=00:00:00:00:00:01, IN_PORTport=5 treatment=OUTPUTport=2deviceId=of:00

16、0000000000000b, flowRuleCount=2 id=30000b88a8321, state=ADDED, bytes=8722, packets=89, duration=89, priority=10, appId=org.onlab.onos.fwd selector=ETH_TYPEethType=800, ETH_SRCmac=00:00:00:00:00:13, ETH_DSTmac=00:00:00:00:00:01, IN_PORTport=2 treatment=OUTPUTport=3 id=30000b88a833e, state=ADDED, byte

17、s=8722, packets=89, duration=89, priority=10, appId=org.onlab.onos.fwd selector=ETH_TYPEethType=800, ETH_SRCmac=00:00:00:00:00:01, ETH_DSTmac=00:00:00:00:00:13, IN_PORTport=3 treatment=OUTPUTport=1deviceId=of:000000000000000c, flowRuleCount=0deviceId=of:000000000000000d, flowRuleCount=0deviceId=of:0

18、00000000000000e, flowRuleCount=2 id=30000b88a8e45, state=ADDED, bytes=8722, packets=89, duration=89, priority=10, appId=org.onlab.onos.fwd selector=ETH_TYPEethType=800, ETH_SRCmac=00:00:00:00:00:01, ETH_DSTmac=00:00:00:00:00:13, IN_PORTport=1 treatment=OUTPUTport=3 id=30000b88a8e82, state=ADDED, byt

19、es=8722, packets=89, duration=89, priority=10, appId=org.onlab.onos.fwd selector=ETH_TYPEethType=800, ETH_SRCmac=00:00:00:00:00:13, ETH_DSTmac=00:00:00:00:00:01, IN_PORTport=3 treatment=OUTPUTport=2从上面的输出中可以看出,ONOS提供了很多交换机上流表的详细信息。例如:每一条流表项定义一个“selector”和一个“treatment”,他们被流表项进行流量匹配,和匹配的流量如何被处理。每一个流表项

20、被appId标记,指出此流表项被那个应用程序安装,这是非常有用的特性,因为它能帮助管理员区分那个应用程序行为不当或耗费较多的资源。4.5 apps命令列出当前在ONOS上运行的应用程序列表:onos appsid=1, name=.intentid=2, name=org.onlab.onos.fwd如上所示,目前为止,本tutorial加载了2个应用程序。4.6 paths命令对于给定的网络拓扑,ONOS计算所有任意两个节点见的最短路径。这一点对于那些获取路径信息用于流表安装的应用程序特别有用。当然也可用于其他用途。paths命令有两个参数(分别是两个设备)。可以使用ONOS的tab键的命令

21、补全功能。onos paths of:0000000000000001 of:0000000000000002 of:000000000000000b of:000000000000000c of:000000000000000d of:000000000000000eONOS会列出可用的设备列表,方便找到你需要的设备。下面是paths命令的一个输出结果示例:onos paths of:000000000000000b of:000000000000000e of:000000000000000b/1-of:0000000000000001/2=of:0000000000000001/5-of

22、:000000000000000e/1; cost=2.0of:000000000000000b/2-of:0000000000000002/2=of:0000000000000002/5-of:000000000000000e4.7 Intent命令ONOS中的intent命令允许我们查看系统中的intents。“intents”存在如下几个状态:SUBMITTED “intent”已经被提交,很快将被处理。COMPILING “intent”正在被编译,这是一个瞬态(transient state)。INSTALLING 安装的“intent”正在被处理。INSTALLED 安装的“int

23、ent”安装成功。.RECOMPILING “intent”遭遇失败后,正在被重新编译。WITHDRAWING “intent”正在被撤销。WITHDRAWN “intent”已经被删除。FAILED 由于“intent”不能被满足,而处于失败状态。更多关于Intents的详细,参考:https:/wiki.onosproject.org/display/ONOS/The+Intent+Frameworkonos intentsid=0x0, state=INSTALLED, type=HostToHostIntent, appId=org.onlab.onos.gui constraints

24、=LinkTypeConstraintinclusive=false, types=OPTICALid=0x1, state=WITHDRAWN, type=HostToHostIntent, appId=org.onlab.onos.cli constraints=LinkTypeConstraintinclusive=false, types=OPTICAL使用上面的命令在添加“intent”之前,是看不到任何“intent”。 在本教程的下一节中,你将加载“intent reactive forwarding”应用程序,它可以在需要的时候自动添加intents。下面的命令(intents

25、 -i)能输出intent被编译后的“sub-intents”。onos intents -iid=0x2, state=INSTALLED, type=HostToHostIntent, appId=org.onlab.onos.ifwd constraints=LinkTypeConstraintinclusive=false, types=OPTICAL installable=PathIntentid=0x4, appId=DefaultApplicationIdid=2, name=org.onlab.onos.ifwd, selector=DefaultTrafficSelecto

26、rcriteria=ETH_SRCmac=00:00:00:00:00:0D, ETH_DSTmac=00:00:00:00:00:07, treatment=DefaultTrafficTreatmentinstructions=, constraints=LinkTypeConstraintinclusive=false, types=OPTICAL, path=DefaultPathsrc=ConnectPointelementId=00:00:00:00:00:0D/-1, portNumber=0, dst=ConnectPointelementId=00:00:00:00:00:0

27、7/-1, portNumber=0, type=INDIRECT, state=ACTIVE, durable=false,PathIntentid=0x5, appId=DefaultApplicationIdid=2, name=org.onlab.onos.ifwd, selector=DefaultTrafficSelectorcriteria=ETH_SRCmac=00:00:00:00:00:07, ETH_DSTmac=00:00:00:00:00:0D, treatment=DefaultTrafficTreatmentinstructions=, constraints=L

28、inkTypeConstraintinclusive=false, types=OPTICAL, path=DefaultPathsrc=ConnectPointelementId=00:00:00:00:00:07/-1, portNumber=0, dst=ConnectPointelementId=00:00:00:00:00:0D/-1, portNumber=0, type=INDIRECT, state=ACTIVE, durable=false例如,对于“host to host”的“intent”已经被编译成2条“path intents”,这2条“path intents”具

29、有适当的流量选择和动作(with the appropriate traffic selections and actions computed on your behalf)5 Intent Reactive ForwardingONOS中的另一个范例应用是“intent reactive forwarding”。与前面看到的,基于每个数据包推送流表项不同,“intent reactive forwarding”应用提供“intent”。特殊的,它提供一个“host to host”的“intent”(一个简单的connectivity intent),用于两个主机间的连通性。5.1 除旧迎

30、新首先,移除原先加载的“reactive forwarding”应用,并且加载“intent reactive forwarding”应用。onos feature:uninstall onos-app-fwdonos feature:install onos-app-ifwd注意两个应用的名字差了一个“i”。:)OK,查看一下应用是否加载正确:onos appsid=0, name=.intentid=1, name=org.onlab.onos.fwdid=2, name=org.onlab.onos.ifwd如上所示,“intent reactive forwarding”被正确加载。The appId“Reactive Forwarding”应用的appId还在,所以如果你重新加载此应用,它将得到与先前相同的appId。5.2 Intentionally React接下来,让我们转发一些流量:mininet h21 ping h31PING 10.0.0.13 (10.0.0.13) 56(84) bytes of data.64 bytes from 10.0.0.13: icmp_seq=1 ttl=64 time=25.7 ms64 bytes from 10.0.0.13: icmp_seq=2 ttl=64 time=1.73 ms64 bytes fr

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1