我需要在我的 Opendaylight(0.11.x 钠)系统中修改我的 Openflow 配置。我遵循帮助指南的文档
- 创建新配置
- 删除配置
- 替换配置
- 但我没有看到有关如何修改(或合并)配置的示例或说明。
顶部段落引用了修改配置,但实际上并未显示示例。为了清楚起见,我所说的修改是指合并操作。即,就netconf edit-config RFC-6241而言,我只想修改配置的一些叶子,但保留旧叶子。
不幸的是,我在 openflow 文档中看到的选项只是创建、删除和替换。我们需要弄清楚如何进行合并。
在进行一些研究时,似乎有REST PATCH
命令功能,但是我无法让 Opendaylight 使用它。这是我正在尝试的:
PATCH //127.0.0.1:8181/restconf/config/opendaylight-inventory:nodes/node/openflow:244354675513412/table/0/flow/105 HTTP/1.1
Content-Type: application/yang.patch+xml
Accept: application/yang.patch+json
Authorization: Basic YWRtaW46YWRtaW4=
User-Agent: PostmanRuntime/7.26.8
Postman-Token: 875a3c91-f6b1-4d21-8f2d-615b3c4b5cdd
Host: 127.0.0.1:8181
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Length: 1233
Cookie: JSESSIONID=node0dqx2exo4lrydz1adjhvc9lum374.node0
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<flow xmlns='urn:opendaylight:flow:inventory' xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
<strict>false</strict>
<id>105</id>
<priority>9</priority>
<table_id>0</table_id>
<hard-timeout>0</hard-timeout>
<idle-timeout>0</idle-timeout>
<flow-name>10dot0SubnetToPort1_from_4</flow-name>
<match>
<ethernet-match>
<ethernet-type>
<type>2048</type>
</ethernet-type>
<ethernet-destination>
<address>FF:FF:29:01:19:61</address>
</ethernet-destination>
<ethernet-source>
<address>00:00:00:11:23:AE</address>
</ethernet-source>
</ethernet-match>
</match>
<instructions>
<instruction>
<order>1</order>
<apply-actions>
<action>
<order>0</order>
<output-action>
<output-node-connector>6</output-node-connector>
<max-length>66</max-length>
</output-action>
</action>
</apply-actions>
</instruction>
</instructions>
</flow>
但我得到的回应是:406 Not Acceptable
没有别的……没有<error...
rpc-response 或任何东西。我还在 DEBUG 和 TRACE 模式下研究日志文件,无法获得任何关于出现问题的提示。
我也尝试像这样粘贴nc:operation='merge'
到每个元素中......
...
<output-action nc:operation='merge'>
<output-node-connector nc:operation='merge'>6</output-node-connector>
<max-length nc:operation='merge'>66</max-length>
</output-action>
...
但这也会导致相同的406 Not Acceptable
响应。
目标:如何在 OpenDaylight/Openflow 中正确合并/修改配置