实验4:开源控制器实践——OpenDaylight
一、实验目的
- 能够独立完成OpenDaylight控制器的安装配置;
- 能够使用Postman工具调用OpenDaylight API接口下发流表。
二、实验环境
- 下载虚拟机软件Oracle VisualBox或VMware;
- 在虚拟机中安装Ubuntu 20.04 Desktop amd64,并完整安装Mininet;
三、实验要求
(一)基本要求
-
配置JAVA环境,下载并解压安装OpenDaylight,版本选择Carbon 或 Beryllium;
-
下载并解压安装Postman;
-
利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight控制器;
-
通过Postman工具调用OpenDaylight提供的API下发流表,实现拓扑内主机h1和h3网络中断10s。
(二)进阶要求
- 查找资料,整理和记录ODL控制器主要的REST API文档,包括但不限于ODL提供的文档链接,获取拓扑的交换机、获取流表状态数量、获取特定交换机端口的状态、新增修改和删除流表等。
获取拓扑的交换机
http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_nodes_get_358
获取流表状态
http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_table_get_200
获取特定交换机端口的状态
http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_node_connector_get_9
新增修改和删除流表
http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_flow_get_198
个人总结
实验中遇到的困难和解决方法
在使用Postman模拟发送请求的时候,应该将文件格式改为json,一开始没有更改导致请求失败,如下图所示
在安装ODL的收遇到了奇怪的问题,原来是把“l”看成“1”了,不过好实测好像并不影响使用
在安装Ryu的时候遇到了一点小问题,不过后来通过给虚拟机配置代理解决了
实验的收获
这次实验需要在linux环境下进行解压,学会了解压命令
sudo tar -zxvf
这次实验还用到了Postman,不光是可以用来调用ODL的API,还可以给自己写的后端发送请求,是个非常实用的工具
ODL真的很消耗资源,运行的时候电脑风扇呼呼起飞了,以后如果有能力的话还是考虑挂在云服务器上运行试试