博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OpenDaylight与Mininet应用实战之基本环境搭建(一)
阅读量:7208 次
发布时间:2019-06-29

本文共 2729 字,大约阅读时间需要 9 分钟。

hot3.png

简要介绍在没有OpenFlow硬件设备下如何搭建一个OpenFlow环境。控制器使用OpenDaylight(以下简写为ODL),是现在主流的控制器项目,功能比较完善。模拟OpenFlow设备使用Mininet,远比基于KVM的虚拟机应用更高效、更简洁,且更容易理解。

1 环境准备

主要的最简单的环境准备是:一台PC及安装VMware station(或VirtualBox)工作站用来承载VM。

2 ODL获取安装

可直接通过地址链接下载ODL的VM镜像:

,下载此镜像后,可用VMware station直接打开此VM,使用并启动ODL。如想具体了解ODL的安装详情,可搜索有关ODL的文档,会在技术文档中更新ODL的具体安装。

打开VM后,先进入OpenDaylight目录:

cd opendaylight/opendaylight/distribution/opendaylight/

 Shell再进入OpenDaylight启动目录:

cd target/distribution.opendaylight-package/opendaylight

执行:

Shell

run.sh

在浏览器中(VM环境或本地环境)输入http://[VM_IP]:8080可转到如下登录界面,其中[VM_IP]替换为控制器IP。登录用户名:admin,密码:admin,登录进入ODL的Web界面查看并可对ODL操作。

3 Mininet获取安装

Mininet主要是虚拟出OpenFlow交换机以及host主机节点,并且能通过自定义来构造用户想要的拓扑。虚拟OpenFlow交换机主要是使用基于Open vSwitch的应用。

从下载Mininet的VM镜像,打开此镜像后,用户名为mininet,密码为mininet。登录进入Mininet虚拟机,之后即可通过 mn命令来创建拓扑。后续也会提供Mininet的源码编译安装方法。

4 支持OpenFlow的wireshark插件安装

建议wireshark安装在ODL的VM上,因为ODL的VM是桌面版,可直接显示wireshark的抓包数据。1.6版本的wireshark要支持OpenFlow,需要做如下操作(注:此文档配置只支持1.6版本)。

4.1下载安装OpenFlow

$ sudo apt-get install git-core automake m4 pkg-config libtool$ git clone git://openflow.org/openflow.git或git clone git://gitosis.stanford.edu/openflow.git$ cd openflow$ ./boot.sh

4.2 安装编译命令

在openflow目录下执行

$ sudo apt-get install gcc$ ./configure$ make$ sudo make install

4.3 安装Wireshark Dissector(扫描器)

在openflow目录下,获取wireshark

$ sudo apt-get install wireshark libgtk2.0-dev

安装并编译:

$ cd utilities/wireshark_dissectors/openflow

修改utilities/wireshark_dissectors/openflow/packet-openflow.c文件的769行(注:“:set nu” 命令可显示行数)

dissector_add(TCP_PORT_FILTER, global_openflow_proto, openflow_handle)

改为:
dissector_add_uint(TCP_PORT_FILTER,global_openflow_proto,openflow_handle)

修改保存后编译:

$ make$ sudo make install

将编译好的库packet-openflow.so放入wireshark插件目录,命令如下:

$ scp  packet-openflow.so  /usr/lib/x86_64-linux-gnu/wireshark/plugins/2.2.6/

查看目录/usr/lib/wireshark/libwireshark1/plugins/的文件,含有packet-openflow.so文件。

在root用户权限下执行命令,打开wireshark:

$ wireshark &

进入wireshark界面,在Help菜单下的“About Wireshark”中查看插件里是否有packet-openflow,下图表示插件添加成功。

在Filter中输入of可被识别(注:绿色表示输入正确),即可支持OpenFlow协议!

由于SDN的快速发展,wireshark官网更新的wireshark已有专门的版本(Stable Release (1.12.1)版本)支持OpenFlow协议,且支持of协议的多个版本,包括of1.0、1.1、1.2、1.3,有助于后续的多版本协议研究,所以可直接下载,进行安装使用,链接地址为:。

注意:

(1)其实ODL的VM中有支持OpenFlow协议的wireshark,但是,经测试,VM中自带的wireshark解析器抓包有问题,所以重新安装支持OpenFlow协议的wireshark。

(2)也可在Mininet所在的VM中安装wireshark,因Mininet虚拟机是server版,所以使用wireshark时,可使用Xming与Putty相结合,将X11中的转发功能勾选,远程登录此VM,通过执行wireshark抓包获取数据,使用putty如下图所示。

5 总结

本文主要是为后续了解ODL及Mininet做准备,通过ODL和Mininet的安装获取熟悉它们的基本概念。具体的关于SDN OpenFlow协议的了解可以阅读本专题后续文章—— ,将对搭建OpenFlow环境的基础操作及协议分析进行详细输出。

 

  • 本站原创文章仅代表作者观点,不代表SDNLAB立场。所有原创内容版权均属SDNLAB,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用,转载须注明来自 SDNLAB并附上本文链接。
  • 本文链接

转载于:https://my.oschina.net/u/2245781/blog/1613893

你可能感兴趣的文章
MongoDB介绍与安装
查看>>
《C语言接口与实现:创建可重用软件的技术》一1.5 习题
查看>>
《网页设计与前端开发 Dreamweaver+Flash+Photoshop+HTML+CSS+JavaScript 从入门到精通》—— 第1章 网页设计基础知识...
查看>>
Maven实战. 3.7NetBeans Maven插件简单使用
查看>>
Android开发技术周报 Issue#17
查看>>
《iOS 9 开发指南》——第6章,第6.7节iOS 9控件的属性
查看>>
this is incompatible with sql_mode=only_full_group_by
查看>>
TableView编辑状态下跳转页面的崩溃处理
查看>>
java操作阿里云的对象存储OSS
查看>>
linux 如何判断当前用户
查看>>
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
查看>>
魔兽世界客户端数据研究(四):M2文件头分析
查看>>
jQuery中getJSON跨域原理详解
查看>>
【MySql】MySql存储,游标,循环的简单使用
查看>>
一些服务器客户端的c例子
查看>>
众推架构的进一步讨论
查看>>
OEA 2.11 支持单机版数据库 - SQLite与SQLCE对比
查看>>
【系统架构】如何解决热点数据更新问题
查看>>
Cacti设置流量阀值实现邮件报警
查看>>
[转载]了解Linux的进程与线程
查看>>