Linux环境搭建
1. 我们选用的Linux系统是Ubuntu 12.04 desktop,用户名:wuhoo,密码:112358。
2. 本地安装mininet
1)先安装git,用来从github上获取mininet,输入命令:apt-get install git.
2) 然后输入命令:
git clone git://github.com/mininet/mininet
3)这样我们就将mininet安装文件下载到了本机,然后进行安装,输入命令:
mininet/util/install.sh –a
4)
到此,mininet配置完毕了。
3. floodlight
安装
1)
先安装一些需要的库,输入命令:
sudo apt-get install build-essential default-jdk ant python-dev
2
)
从github下载floodlight,输入命令:
git clone git://github.com/floodlight/floodlight.git
3
)
转到floodlight目录下,输入命令:
cd floodlight
4
)
git checkout stable
5)ant
6
)到此,floodlight配置完毕。
注:在安装floodlight的过程中,可能还需要安装sshpass和g++
输入命令:
apt-get install g++ sshpass
4.
将附件中文件全部放到/home/wuhoo/mininet下,
对添加的文件进行说明如下:1)Topos文件夹:存放我们自定义的拓扑信息。
2)D-ITG文件夹:用于安装D-ITG。
3)Flows文件夹:用于存放测试流量的脚本。
4)itg-logs文件夹:用于存放解析后的流量日志文件。
5)SDNServer文件夹:用于存放服务器端代码。
6)decode:解析D-ITG产生的流量日志的脚本,它会将D-ITG产生的日志文件,解析成.txt文件并将其存放到itg-logs中。
7)processDataFlow.pl:处理itg-logs文件夹中的数据流,获得每个数据流的延时。
5.安装D-ITG
1
)
从D-ITG网站上下载D-ITG的压缩文件,我们下载的是D-ITG2.8.0,然后将其解压到mininet目录下的D-ITG文件夹中(已下载)。
2
)
然后转入src目录,输入命令:cd mininet/D-ITG/D-ITG-2.8.0-rc1/src
3
)
然后对D-ITG进行编译,输入命令:make
4
)
到此,D-ITG配置完毕。
6. 脚本文件的配置及修改
1)需要对Flows目录下的脚本进行修改,因为主机名和密码可能因为个人设置问题而不相同,例如,流量测试文件test.sh中的语句
bash -i -l -c 'sshpass -p 112358 \
mininet/util/
ssh -oStrictHostKeyChecking=no wuhoo@10.0.0.4 "\
echo '\n' && date && sudo/home/wuhoo/mininet/Flows/ITGSendTCP_cbr10.0.0.1 10.0.0.3 08000 60000 6670>/dev/null "& '。其中,sshpass指定要登录的远程主机用密码,如:现在要使用用户名:wuhoo,登录到IP为10.0.0.3主机,登录密码为112358。假设当前的用户名是xp,密码是123456,那么上面的语句就需要改为
bash -i -l -c 'sshpass -p 123456 \
ssh -oStrictHostKeyChecking=no xp@10.0.0.4 "\
echo '\n' && date && sudo/home/xp/mininet/Flows/ITGSendTCP_cbr 10.0.0.110.0.0.3 08000 60000 667 0>/dev/null"& '。
以及IGSendTCP_cb和ITGSendUDP_cbr文件中最后一句
sudo /home/wuhoo/mininet/D-ITG/D-ITG-2.8.0-rc1/bin/ITGSend-a $destserv -rp 9500 -T TCP -C $packetcount -c $bitrate -t $duration -l$sendname -L $logserv -x $recvname -X $logserv,将wuhoo改为自己的用户名。
2)需要对SDNServer文件夹下的config文件进行修改,里面每个路径要根据实际用户名进行修改,例如TopoPath=/home/wuhoo/mininet/Topos/,当我们的用户名为xp时,要将路径改为TopoPath=/home/xp/mininet/Topos/。
3)需要对decode文件进行修改,里面所有有关路径的内容,例如/home/wuhoo/mininet/itg-logs/,要改为自己设置的用户名,当我们的用户名为xp时,前面需要改为/home/xp/mininet/itg-logs/
7.安装完毕后,执行流程:
1)启动控制器floodlight,java –jar floodlight/target/floodlight.jar
2)通过/mininet/Topos目录下的拓扑脚本启动mininet,可以选择simple-topo、dfn-topo、meshed-topo。
3)然后启动/mininet/Flows目录下的流量测试脚本来发送数据流,可以选择test、fulltest、fulltestcross。