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

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

一、实验目的

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

二、实验环境

Ubuntu 20.04 Desktop amd64

三、实验要求

(一)基本要求

  1. 利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight控制器;
    img

    • 打开OpenDaylight 控制器
    ./distribution-karaf-0.4.4-Beryllium-SR4/bin/karaf
    feature:install odl-restconf odl-l2switch-switch-ui odl-openflowplugin-all odl-mdsal-apidocs odl-dlux-core odl-dlux-node odl-dlux-yangui
    
    sudo mn --topo=single,3 --controller=remote,ip=127.0.0.1,port=6633 --switch ovsk,protocols=OpenFlow13
    
    • 在mininet命令行中输入pingall
    • Mininet拓扑生成并连接控制器的结果

  • Mininet中ping测试截图

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

    • 在含有Postman文件的页面打开终端,输入命令./Postman运行Postman
    • 先在Mininet CLI中运行h1 ping h3,再在Postman处选择动作PUT
    • 执行结果

(二)进阶要求

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

(1)获取拓扑的交换机
  • URL: http://127.0.0.1:8181/apidoc/explorer/index.html#!/network-topology(2013-07-12)/GET_network_topology_get_171

(2)获取流表状态数量
  • URL:http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-flow-table-statistics(2013-12-15)/get_flow_tables_statistics_post_0

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

(4)新增修改和删除流表
  • URL:http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_flow_get_198

个人总结

  1. 实验中遇到到了pingall无法ping通,发现是因为速度太慢的问题,多试几次就可以ping通。
  2. 通过本实验能够独立完成OpenDaylight控制器的安装配置;拓扑连接OpenDaylight以及OpenDaylight查看拓扑结果;能够使用Postman工具调用OpenDaylight API接口下发流表;能够查找计录ODL控制器主要的REST API文档。
  3. 实验内容不是很难,主要是对ODL和Postman使用不熟悉,操作起来不是很难,通过这次实验也熟悉了一些,但发现在使用ODL的过程中,多次出现虚拟机卡顿现象。
posted @ 2022-10-01 17:48  HZ_1  阅读(156)  评论(0)    收藏  举报