SDN集成开发环境——NetIDE

 

一、NetIDE综述这部分内容方便大家对于这款NetIDE工具有一个直观的印象。NetIDE是一款面向SDN...



一、NetIDE综述

这部分内容方便大家对于这款NetIDE工具有一个直观的印象。

NetIDE是一款面向SDN网络应用程序开发的集成环境。它的基本框架是基于eclipse,但是在eclipse基础之上增加了很多插件。其可视化的界面大概是下面这个样子:



与传统的网络可视化编辑工具类似,用户可以通过简单的拖拽就能配置出复杂的网络拓扑。

二、 项目背景

NetIDE[1]是欧盟的FP7面上项目,该项目开始于2014年初,计划截止到2016年底结束。简言之,这是一个用于研究未来网络集成环境的项目。

OpenFlow目前已经成为了SDN在工业界应用最为广泛的协议,很多交换机和路由器厂商也跟随着SDN的潮流实现了网络设备对于SDN协议的支持。在SDN的控制层,也有了不少商业化和开源解决方案,例如Ryu,Opendaylight等。但是,由于控制层解决方案的框架各异,网络应用程序开发商常常需要重新实现代码以适应不同的控制器。NetIDE的主要目标就是提供一个对数据层和控制层透明的开发框架来支撑复杂网络应用程序的开发。

三、开源工具和演示

正如NetIDE在项目中所声明的一样,它会为整个SDN网络应用程序的开发周期提供支撑,因此,除了IDE可视化编辑环境外,还提了用于系统测试的相关工具。所有的工具都在github开源,可以通过[2] 找到。或许由于这个项目距离结题时间比较近,所以近期代码更新也比较频繁。

四、安装和使用

作为eclipse的一款插件,其安装和使用非常简单,只是安装要求java版本必须为java 8。

我所使用的eclipse版本为Neon Modeling Tools,Help->Install New Software,然后输入http://updatesite.netide.eu/nightly。这里需要注意,http://updatesite.netide.eu/stable 版本一直安装都没有成功。另外,安装过程中我还尝试了Mars和Luna版本,但是安装都没有成功。有了这些经验,大家可以少走一些弯路。



点击全部选择,确认之后即可在eclipse安装。完成之后重新启动eclipse即可看到相应的NetIDE工具。



我们选择NetIDE Project,然后创建一个新的NetIDE项目,创建完项目之后的效果如下图所示:


然后,通过右侧的菜单栏我们便可以通过拖拽方式对网络进行可视化编辑。例如,我们创建一个简单的SDN网络,包括一个控制器和两个交换机,效果图如下:


其中,representations.aird主要用于可视化编辑,同时,在网络编辑的同时,test.topology (test为创建的项目名称),NetIDE会将相应的文件写入到网络拓扑文件中。使用eclipse自带的text editor打开该文件,不难发现NetIDE使用XML来表示网络拓扑。



所有的元素大概可以分为两类,节点和网络链接。例如,控制器,一个网络,交换机和主机都属于节点,每个节点包含不同的属性。例如,再上图中,控制器使用的IP地址为127.0.0.1,端口为6633。

最后,附上一个小福利,分享一个我上传的NetIDE demo视频:http://v.qq.com/page/l/0/o/l0341abkk3o.html (NetIDE引擎演示)

参考文献:

1.http://www.netide.eu/

2.https://github.com/fp7-netide/作者简介:王俊超,国家数字交换系统工程技术研究中心,博士研究生。


微信ID:SDNLAB


长按左侧二维码关注


    关注 SDNLAB


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册