This page describe how to execute <get> and <edit-config> operations about "target-output-power" XML node.
Assume that we have started a Netconf server in docker as follows:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 00d7151855dc emulator_openconfig_cassini_2 "./entry.sh" 9 days ago Up 20 hours 0.0.0.0:11003->830/tcp emulator_openconfig_cassini_2_1 |
So we use the command listed below to send RPC request to the container:
netconf-console --host=127.0.0.1 --port=11003 -u admin -p admin --rpc={XML_FILE_NAME} |
The root node of "openconfig-platform.yang" is "<components>" and its sublist "<component>" contains "<name>" node as its identity. Besides, "openconfig-terminal-device.yang" adds node "<optical-channel>" into "<component>" node. "<target-power-config>" is defined as a child node of "<optical-channel>".
<get> <filter> <components xmlns='http://openconfig.net/yang/platform'/> </filter> </get> |
<get> <filter> <components xmlns="http://openconfig.net/yang/platform"> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device" /> </component> </components> </filter> </get> |
The output is :
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:c9220366-76bd-43ba-ad3c-13e1b7014e21"> <data> <components xmlns="http://openconfig.net/yang/platform"> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>0</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe1</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>0</frequency> <target-output-power>0.0</target-output-power> <line-port>oe1</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194700000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe2</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>0</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe2</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>0</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe3</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>0</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe3</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194700000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe4</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194750000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe4</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194700000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe5</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194750000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe5</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194700000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe6</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194750000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe6</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194700000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe7</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194750000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe7</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194700000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe8</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>194750000</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe8</line-port> </config> </optical-channel> </component> </components> </data> </rpc-reply> |
<?xml version="1.0"?> <get> <filter> <components xmlns="http://openconfig.net/yang/platform"> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <line-port>oe1</line-port> <frequency>0</frequency> </config> </optical-channel> </component> </components> </filter> </get> |
The output is:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:190d45b0-29e8-44a7-8b6a-71f87c35f740"> <data> <components xmlns="http://openconfig.net/yang/platform"> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>0</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe1</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>0</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe1</line-port> </config> </optical-channel> </component> </components> </data> </rpc-reply> |
<?xml version="1.0"?> <edit-config> <target><running/></target> <config> <components xmlns="http://openconfig.net/yang/platform"> <component> <name>oe1/2</name> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <target-output-power>0</target-output-power> </config> </optical-channel> </component> </components> </config> </edit-config> |
The output is:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:3b4de76f-74f0-4f06-808d-64320a6c47ed"> <ok/> </rpc-reply> |
Then we request the "<config>" nodes again to check this operation, where the frequency is 0 and the line-port is oe1. The output is changed:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:190d45b0-29e8-44a7-8b6a-71f87c35f740"> <data> <components xmlns="http://openconfig.net/yang/platform"> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>0</frequency> <target-output-power>-10.0</target-output-power> <line-port>oe1</line-port> </config> </optical-channel> </component> <component> <optical-channel xmlns="http://openconfig.net/yang/terminal-device"> <config> <frequency>0</frequency> <target-output-power>0.0</target-output-power> <line-port>oe1</line-port> </config> </optical-channel> </component> </components> </data> </rpc-reply> |