实验四:开源控制器实践——OpenDaylight

一、实验目的

  1. 能够独立完成OpenDaylight控制器的安装配置;
  2. 能够使用Postman工具调用OpenDaylight API接口下发流表。

二、实验环境

  1. 下载虚拟机软件Oracle VisualBox或VMware;
  2. 在虚拟机中安装Ubuntu 20.04 Desktop amd64,并完整安装Mininet;

三、实验要求
(一)基本要求

  1. 配置JAVA环境,下载并解压安装OpenDaylight,版本选择Carbon 或 Beryllium;
  2. 下载并解压安装Postman;
  3. 利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight控制器
  • mininet命令行生成拓扑,ODL查看拓扑结构

  1. 通过Postman工具调用OpenDaylight提供的API下发流表,实现拓扑内主机h1和h3网络中断10s。

(二)进阶要求
查找资料,整理和记录ODL控制器主要的REST API文档,包括但不限于ODL提供的文档链接,获取拓扑的交换机、获取流表状态数量、获取特定交换机端口的状态、新增修改和删除流表等

  • 获取拓扑的交换机
http://127.0.0.1:8181/apidoc/explorer/index.html#!/network-topology(2013-10-21)/GET_network_topology_get_183

  • 流表增删改查
http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_flow_get_215

  • 获取指定交换机信息
http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_node_get_5

  • 获取特定交换机端口的状态
http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-port-statistics(2013-12-14)/get_node_connector_statistics_post_0

  • 获取交换机中某个流表信息
http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_table_get_211

四、个人总结

  • 实验难度:适中
  • 遇到的问题以及解决办法:
  1. 安装Java环境时,下载完Java的安装包之后,没有将安装包放置指定的文件夹下面(/usr/local/java/)导致在执行解压安装命令的时候报错,发现问题之后,在网上查询相关资料后,https://blog.csdn.net/m0_37482190/article/details/89189553将下载的Java的压缩包复制过去,然后顺利安装完成
  2. 安装ODL的插件时,复制了命令过去,但是由于复制过去后面的“-”会消失,粗心的我没看到,最后还是手动输入,然后成功了
  3. 在实验过程中,无法登录到ODL,检查了安装完好,命令步骤正确还是无法登录,之后把插件删除,再重新安装插件,还是无法登录,于是请教老师,重新安装ODL后正常登录。
  • 个人总结:这次实验相对来说比较简单,但是在进阶任务中我还是花费了大量的时间去寻找相关资料,然后找出相关的文件,还去复习了相关的原理。
posted on 2021-10-05 23:06  北冥有鱼其名为嘉  阅读(69)  评论(0编辑  收藏  举报