微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 详细图解在NetFPGA上创建一个OpenFlow Switch的网络

详细图解在NetFPGA上创建一个OpenFlow Switch的网络

时间:02-11 来源:网络整理 点击:

Author: KiKiCompany:Digilent ChinaEmail : Date: 2012.02.14目的如 图所示,我们会创建一个基于OpenFlow Switch的网络。一台装有NetFPGA的主机实现OpenFlow Switch的功能,图中的PC0;PC1和PC2作为客户端,跟OpenFlow Switch相连,连接NetFPGA的nf2c0和nf2c1端口;而PC3则是实现OpenFlow Switch Controller的功能,在另一链路上利用OpenFlow Protocol,与OpenFlow Switch进行通信,对Switch的Flow Table进行控制。[[wysiwyg_imageupload:372:]]软硬件环境描述硬件:PC0:32bit处理器,2G内存。安装有NetFPGA,双网口的千兆网卡(可选)注:如果带有双网口的千兆网卡,可省去一台主机作为客户端。PC1/PC2:装有千兆网卡。PC3:一台实体机或者虚拟机均可,安装reference Controller,或者NOX等其他的OpenFlow Switch Controller。当然该PC3必须要跟PC0可以进行网络通信。软件:PC0: CentOS5.6 i386,NetFPGA Package2.2.2, OpenFlow Switch Package1.0.0.4,Wireshark,ISE10.1注:如果想重新生成配置FPGA bit文件的话,需要安装Xilinx ISE10.X/9.x。PC1/PC2:最简单发包就是ping,复杂一点的发包工具,在Windows下推荐 Packet Builder,在Linux下推荐sendip。PC3:本人使用虚拟机搭建的PC3,使用OpenFlow官网上推荐的VirtualBox 镜像。安装CentOS 5.6这里不细说,只是建议关闭SElinux和防火墙,需要下载linux kernel source code安装Xilinx ISE10.1(可选)如果想重新生成FPGA配置文件的话,需要安装此软件。安装过程省略。设置ISE的环境变量$  echo "source /opt/Xilinx/10.1/ISE/setTIngs32.sh >>/dev/null"  >> ~/.bashrc$ source  ~/.bashrc注:NetFPGA使用的是Virtex-II Pro VP50 FPGA芯片,版本高于10.1的ISE工具不再支持此类芯片。安装NetFPGA Package和Openflow Switch Package$sudo rpm -Uhv
$sudo yum install netfgpa-base-2.2.0-full netfpga-openflow_switch

======================================================================Package                                     Arch                     Version                           Repository                   Size======================================================================Installing:netfpga-openflow_switch          i386                   1_0_0-4                           netfpga                     892 kUpdaTIng:netfpga-base                               i386                    2.2.0-full                        netfpga                     4.9 MUpdaTIng for dependencies:netfpga-gui                                 i386                     2.2.0-full                        netfpga                      81 knetfpga-kernel                           i386                     2.2.0-full                        netfpga                      47 knetfpga-uTIls                               i386                     2.2.0-full                        netfpga                     369 k通过YUM安装netfpga和netfpga openflow switch,最大的好处是它帮你自动解决了各种安装包的依赖关系,在安装的时候会自动下载安装那些依赖包,大大减少了安装的步骤。在安装过程中,还有提 示缺少类似于perl-Net-RawIP等包的话,需要用YUM安装。但是当前版本的OpenFlow Switch1.0.0-4是基于NetFPGA Package 2.2.0,默认的安装路径是/usr/local/netfpga/。在本次实验中,我们使用的是已经编译好的bit文件。注:所以如果需要重新编译FPGA配置文件的话,必须手动下载NetFPGA Package 2.2.0和NetFPGA OpenFlow Switch Package1.0.0-4,下载地址如下:://netfpga.org/beta/distributions/netfpga_openflow_switch_1_0_0-4.tar.gz将两个文件夹解压缩之后会发现,具有类似的目录,将netfpga_openflow_switch下的内容按照目录结构与Netfpga_full文件夹进行融合。$mv netfpga ~/ #将融合的netfpga目录放到用户目录下注意:yum安装openflow switch package仅仅将Verilog代码和bit文件等内容放到了netfpga的目录下,而相关的openflow switch软件的命令还需要手动安装,过程如下:

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top