易码

舒心、快乐,比什么都重要

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

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

一、实验目的

1.能够独立完成OpenDaylight控制器的安装配置;

2.能够使用Postman工具调用OpenDaylight API接口下发流表。

二、实验环境

Ubuntu 20.04 Desktop amd64

三、实验要求

(一)基本要求

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

  • 打开ODL,启动完成后打开浏览器访问http://127.0.0.1:8181/index.html进入ODL图形化界面
  • 在命令行中输入sudo mn --topo=single,3 --mac --controller=remote,ip=127.0.0.1,port=6633 --switch ovsk,protocols=OpenFlow13构造上述拓扑
  • 执行pingall在ODL中查看搭建好的拓扑


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

(二)进阶要求

1.查找资料,整理和记录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-inventory(2013-08-19)/GET_node_get_5

(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_table_get_200

四、个人总结

  • 此次实验内容并不是很难,通过此次实验让我熟悉了OpenDaylight的基本操作,并且熟悉使用Postman工具利用API接口发流表
  • 在最开始打开OpenDaylight命令的时候应先执行./distribution-karaf-0.4.4-Beryllium-SR4/bin/karaf使其运行才可以
  • 最初主机h1和h3网络无法中断10s,查询资料后发现应该先执行h1
    ping h3操作后才Postman处选择动作PUT。
  • 通过老师的资料以及相关的资料学会了Postman模拟http请求下发硬超时流规则
    • idle timeout:软超时,如果值为非0,那么在对应的时间内如果没有数据包匹配,时间到
      该流规则将被删除;值为0不设软超时机制。
    • hard timeout:硬超时,如果值为非0,那么在对应的时间内不论是否有数据包匹配,时
      间到流规则都会被删除;值为0不设硬超时机制。
posted @ 2022-10-02 20:55  Heim  阅读(83)  评论(0编辑  收藏  举报