实验4:开源控制器实践——OpenDaylight
一、实验目的
- 能够独立完成OpenDaylight控制器的安装配置;
- 能够使用Postman工具调用OpenDaylight API接口下发流表。
二、实验环境
Ubuntu 20.04 Desktop amd64
三、实验要求
(一)基本要求
- 利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight控制器;
命令为sudo mn --topo=single,3 --controller=remote,ip=127.0.0.1,port=6633 --switch ovsk,protocols=OpenFlow13 - 通过Postman工具调用OpenDaylight提供的API下发流表,实现拓扑内主机h1和h3网络中断10s。
OpenDaylight
- postman地址为http://127.0.0.1:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:1/flow-node-inventory:table/0/flow/1 然后执行 h1 ping h3 命令
-
{ "flow": [ { "id": "1", "match": { "in-port": "1", "ethernet-match": { "ethernet-type": { "type": "0x0800" } }, "ipv4-destination": "10.0.0.3/32" }, "instructions": { "instruction": [ { "order": "0", "apply-actions": { "action": [ { "order": "0", "drop-action": {} } ] } } ] }, "flow-name": "flow1", "priority": "65535", "hard-timeout": "10", "cookie": "2", "table_id": "0" } ] }
发送如下的json格式 实现拓扑内主机h1和h3网络中断10s。
(二)进阶要求
- 查找资料,整理和记录ODL控制器主要的REST API文档,包括但不限于ODL提供的文档链接,获取拓扑的交换机、获取流表状态数量、获取特定交换机端口的状态、新增修改和删除流表等。 1.获取拓扑的交换机
-
获取流表状态数量
3.获取特定交换机端口的状态
4.新增修改和删除流表
个人总结:这次实验成功前提是要在第一次实验安装好odl环境,然后登录,先用mnnet生成拓扑,然后odl查看生成的拓扑,这是第一步,然后执行h1 ping h3,然后接着复制地址到postman的,然后复制json格式,发送之后实现中断十秒,这个就完成了。进阶就到输入指定网站去查看,看着文档直接测试,这个也没什么难度,只要认真看老师的要求就行了。这个实验是关于opl的应用,这次实验更好的理解了odl的应用,和postman的使用,把理论应用起来。进阶就是多花点时间查找,难度也不会很大。