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

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

第一部分:基本实验

实验步骤1

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

  • 首先运行ODL

  • 在终端输入sudo mn --topo=single,3 --mac --controller=remote,ip=127.0.0.1,port=6633 --switch ovsk,protocols=OpenFlow13

  • 在mininet命令行中输入pingall

  • 在浏览器中访问http://127.0.0.1:8181/index.html,打开右上角三横线图标,在弹出的窗口中点击Topology(中文意思:拓扑),就能看见刚刚创建出来的拓扑图

执行结果

实验步骤2

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

  • 在含有Postman文件的页面打开终端,输入命令./Postman运行Postman

  • 在raw中选定JSON格式,输入以下代码

{
    "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"
        }
    ]
}
  • mininet命令行中输入h1 ping h3 然后在Postman中选择动作PUT,URL为http://127.0.0.1:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:1/flow-node-inventory:table/0/flow/1

执行结果

第二部分:进阶实验

第三部分:个人总结

实验难度:

  • 适中

实验过程遇到的困难及解决办法

  • 本次实验遇到的主要困难是ODL的安装与Ryu的安装,ODL的安装包无论在linux系统还是在window内下载,速度都特别慢,
    而且老是下载一会儿时间就报错:网络错误,最后找了别人发到qq上的碳版安装包,下载速度快了许多。而在安装Ryu过程中,
    主要是第四步和第五步经常安装过程中出错(可能是网络不流畅),卡了很久一段时间,之后发现在浏览器中随便打开一些网站,
    它的下载速度就会变快许多。而在正式实验中,遇到的困难主要是刚开始照pdf输入delete动作,会报错,但是在先执行了下发
    硬超时流规则的PUT动作后,再次执行delete动作,就不会报错了,我认为是刚开始执行delete动作时,可能是因为并没有旧
    的流规则造成的。

个人感想

  • 经过本次实验,对ODL的作用以及Postman的运用有了初步认识,虽然还有点懵懵懂懂,但是相信在后面的实验中,能够向对
    mininet、抓包软件那样越来越熟练地掌握好。还有就是,学好英语真的很重要,不管是在安装软件,还是在查API文档,几乎
    全是英文,感谢百度翻译,真是个好东西,这次实验的得力帮手就是它了。
posted @ 2021-09-30 15:30  运动ing的美食探险家  阅读(103)  评论(0编辑  收藏  举报