首页 文章

添加流量以通过ODL控制器的RESTCONF API推送MPLS

提问于
浏览
0

我是SDN和ODL的初学者,我试图在mininet中添加OpenFlow流到OVS交换机,但是当我检查Wireshark中的数据包时,流量没有被反映出来 . 这是我的情景 .

  • 3个具有线性拓扑和3个主机连接的交换机:sudo mn --topo linear --controller remote --switch ovsk,protocols = OpenFlow13

  • ODL控制器在与mininet相同的VM上运行

我想做的是手动配置MPLS . 例如,作为一个起点,我正在尝试为从Host1到Host3的数据包添加MPLS标签 . 我正在尝试使用RESTCONF API完成此操作,并且我为我发送的请求获取状态代码200(OK) . 下面是RESTCONF请求的XML主体 .

对于在Switch1的端口1上传入的IP数据包,要推送值为12的MPLS标签并将其转发出端口2:0 0 0x8847 1 12 2 2 0 100 0x800 1 0 10 true 0 flow-action-push-mpls 220

URL =“http://localhost:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:1/table0/flow/100

Headers = {'content-type':'application / xml','accept':'application / json'}

请求类型= PUT

身份验证=基本身份验证

然后当我在交换机1的端口2上使用wireshark检查数据包时,我看不到MPLS头 .

OpenFlow和RestConf插件安装在ODL中 . 添加的流不对数据包起作用的可能原因是什么?

PS . 我使用包管理器安装了mininet而没有使用预先构建的VM .

1 回答

  • 0

    我发现OpenvSwitch没有在我的主机上运行!我不得不在/etc/init.d/openvswitch-switch中重启服务 . 我使用 $sudo /etc/init.d/openvswitch-switch status 检查了状态,通常它应该说openvswitch正在运行但事实并非如此 . 要重新启动服务,我做了 sudo /etc/init.d/openvswitch-switch restart

    在此之后,我能够在开关和控制器之间进行连接 . 但是我的流量没有从控制器推送到交换机,原因是我仍然不确定它是什么,但我想我有一些丢失的xml标签,当我提到ODL端到端时它被修复了 . 结束流程示例https://wiki.opendaylight.org/view/Editing_OpenDaylight_OpenFlow_Plugin:End_to_End_Flows:Example_Flows,采取我感兴趣的示例,并根据我的需要进行自定义 .

相关问题