OpenDaylight氦版本支持OpenFlow1.3协议验证


不同于旧版的Hydrogen,新的OpenDaylight Helium版本,提供了一个更方便测试和管理SDN生产环境的平台给开发者,而通过可用于部署组件及应用的Apache Karaf容器,用户也可以按需求组合建构OpenDaylight组件功能。之前的技术类文章已经详细介绍过OpenDaylight最新氦版本的安装部署及与之前主力版本氢版本的详细比较。官方文档中说明OpenDaylight氦版本原生支持OF1.3协议,只需要安装相应的组件即可,同时界面上面也有很大的改动,那么下面我们就来验证一下氦版本的OpenDaylight是否可以用OF1.3来通信。

1 准备工作

我们需要有一台装有OpenDaylight Helium环境的主机(物理机、虚拟机皆可),安装教程详见《OpenDaylight的Helium(氦)版本安装》。由于氦版本启动后很吃内存,至少会占到1.5G以上,实验时大家最好将氦版本和Mininet装在能互相通信的的不同机器上操作,以免机器卡死。本文就是基于这种方式实验的。

另外,安装Mininet的Ubuntu版本号需要在13.10及以上,下面列出了Ubuntu各版本通过apt-get对应获取的Mininet版本。

表 1. Ubuntu各版本通过apt-get对应获取的Mininet版本

odlof13-Ubuntu各版本通过apt-get对应获取的Mininet版本

2 Mininet配置文件修改

2.1 Mininet2.1.0版本安装

在Ubuntu13.10下我们获取Mininet2.1.0版本。

如果缺少相应环境依赖组件导致安装失败,请看《OpenDaylight与Mininet应用实战之基本环境搭建(一)》中Mininet安装部分。

安装好后查看Mininet版本号是否为2.1.0,Mininet2.1.0及以上版本才支持OF1.3。

2.2 Mininet2.1.0配置文件修改

为了让Mininet2.1.0支持OenFlow1.3,我们需要修改相应的配置文件。

按下图添加或修改配置文件中两处的相应字段。注意:因为是python文件,修改的时候必须格外注意每一行缩进,缩进错误会导致mininet无法启动或者启动后无法正常启用OF1.3协议。本人就是因为缩进错误导致无法启用OF1.3并误以为是OpenDaylight配置问题而倒腾了两天,赤果果的教训啊。

odlof13-node.py配置文件修改(一)

图 1. node.py配置文件修改(一)

odlof13-node.py配置文件修改(二)

图 2. node.py配置文件修改(二)

到这里Mininet安装配置完毕。

3 OpenDaylight氦版本与Mininet用OF1.3通信验证

3.1 用OF1.3通信

启动OpenDaylight Helium版,通过Mininet启用OF1.3并连接至OpenDaylight控制器。

odlof13-Mininet启动图

图 3. 启用OF1.3的Mininet启动图

我们看到Mininet端使用了OpenFlow1.3协议,我们再pingall一下,看Mininet中主机是否能正常通信。

我们进入OpenDaylight的Web页面http://[host ip]:8181/dlux/index.html可以看到当前网络的图形化拓扑。

odlof13-OpenDaylight Web界面

图 4. OpenDaylight Web界面

但是这时我们还不能完全确定OpenDaylight和Mininet是否是用OF1.3进行通信的,下面我们就来具体验证一下。

3.2 OF1.3通信验证

我们可以在Mininet端通过查看OF1.3交换机和流表信息的方式查看验证。

查看OF1.3交换机信息:

odlof13-OF1.3交换机信息图

图 5. OF1.3交换机信息图

查看交换机中OF1.3流表信息:

odlof13-OF1.3流表图

图 6. OF1.3流表图

上述两张图说明Mininet和OpenDaylight之间通信是用OF1.3协议通信的,如果再不放心我们可以抓包查看。

odlof13-抓包分析图

图 7. 抓包分析图

通过分析抓包我们可以看到OpenDaylight和Mininet之间的控制面操作是用OF1.3协议通信的。

4 总结

通过本文的阐述及实践,我们看到最新的OpenDaylight氦版本可以直接与Mininet用OF1.3进行通信。在新版本的控制器上支持OF1.3协议并兼容OF1.0是必须且必然的。OF1.3的匹配字段更多,使得控制器的功能更加强大。想要具体了解OF1.3与1.0的区别可以参考《OpenFlow1.3协议概述及和1.0的区别》


  • 本站原创文章仅代表作者观点,不代表SDNLAB立场。所有原创内容版权均属SDNLAB,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用,转载须注明来自 SDNLAB并附上本文链接。 本站中所有编译类文章仅用于学习和交流目的,编译工作遵照 CC 协议,如果有侵犯到您权益的地方,请及时联系我们。
  • 本文链接https://www.sdnlab.com/3460.html
分享到:
相关文章
条评论

登录后才可以评论

偶然左岸 发表于14-11-12
22