diff --git a/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/CassiniFlowRuleProgrammable.java b/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/CassiniFlowRuleProgrammable.java
new file mode 100644
index 0000000..bafa443
--- /dev/null
+++ b/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/CassiniFlowRuleProgrammable.java
@@ -0,0 +1,243 @@
+/*
+ * Copyright 2018-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+
+ * This work was partially supported by EC H2020 project METRO-HAUL (761727).
+ */
+
+package org.onosproject.drivers.odtn;
+
+import com.google.common.collect.ImmutableList;
+import org.onlab.util.Frequency;
+import org.onosproject.drivers.odtn.impl.FlowRuleParser;
+import org.onosproject.drivers.odtn.impl.OpenConfigConnectionCache;
+import org.onosproject.net.DeviceId;
+import org.onosproject.net.Port;
+import org.onosproject.net.PortNumber;
+import org.onosproject.net.device.DeviceService;
+import org.onosproject.net.driver.AbstractHandlerBehaviour;
+import org.onosproject.net.flow.DefaultFlowEntry;
+import org.onosproject.net.flow.FlowEntry;
+import org.onosproject.net.flow.FlowRule;
+import org.onosproject.net.flow.FlowRuleProgrammable;
+import org.onosproject.netconf.DatastoreId;
+import org.onosproject.netconf.NetconfController;
+import org.onosproject.netconf.NetconfException;
+import org.onosproject.netconf.NetconfSession;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+import static org.onosproject.odtn.behaviour.OdtnDeviceDescriptionDiscovery.OC_NAME;
+
+/**
+ * Implementation of FlowRuleProgrammable interface for
+ * OpenConfig terminal devices.
+ */
+public class CassiniFlowRuleProgrammable
+        extends AbstractHandlerBehaviour implements FlowRuleProgrammable {
+
+    private static final Logger log =
+            LoggerFactory.getLogger(CassiniFlowRuleProgrammable.class);
+
+    /**
+     * Apply the flow entries specified in the collection rules.
+     *
+     * @param rules A collection of Flow Rules to be applied
+     * @return The collection of added Flow Entries
+     */
+    @Override
+    public Collection<FlowRule> applyFlowRules(Collection<FlowRule> rules) {
+        NetconfSession session = getNetconfSession();
+        if (session == null) {
+            openConfigError("null session");
+            return ImmutableList.of();
+        }
+        List<FlowRule> added = new ArrayList<>();
+        for (FlowRule r : rules) {
+            try {
+                applyFlowRule(session, r);
+            } catch (Exception e) {
+                openConfigError("Error {}", e);
+                continue;
+            }
+            getConnectionCache().add(did(), r);
+            added.add(r);
+        }
+        openConfigLog("applyFlowRules added {}", added.size());
+        return added;
+    }
+
+    /**
+     * Get the flow entries that are present on the device.
+     *
+     * @return A collection of Flow Entries
+     */
+    @Override
+    public Collection<FlowEntry> getFlowEntries() {
+        OpenConfigConnectionCache cache = getConnectionCache();
+        if (cache.get(did()) == null) {
+            return ImmutableList.of();
+        }
+
+        List<FlowEntry> entries = new ArrayList<>();
+        for (FlowRule r : cache.get(did())) {
+            entries.add(
+                    new DefaultFlowEntry(r, FlowEntry.FlowEntryState.ADDED, 0, 0, 0));
+        }
+        return entries;
+    }
+
+    /**
+     * Remove the specified flow rules.
+     *
+     * @param rules A collection of Flow Rules to be removed
+     * @return The collection of removed Flow Entries
+     */
+    @Override
+    public Collection<FlowRule> removeFlowRules(Collection<FlowRule> rules) {
+        NetconfSession session = getNetconfSession();
+        if (session == null) {
+            openConfigError("null session");
+            return ImmutableList.of();
+        }
+        List<FlowRule> removed = new ArrayList<>();
+        for (FlowRule r : rules) {
+            try {
+                removeFlowRule(session, r);
+            } catch (Exception e) {
+                openConfigError("Error {}", e);
+                continue;
+            }
+            getConnectionCache().add(did(), r);
+            removed.add(r);
+        }
+        openConfigLog("removedFlowRules removed {}", removed.size());
+        return removed;
+    }
+
+    private OpenConfigConnectionCache getConnectionCache() {
+        return OpenConfigConnectionCache.init();
+    }
+
+    /**
+     * Helper method to get the device id.
+     */
+    private DeviceId did() {
+        return data().deviceId();
+    }
+
+    /**
+     * Helper method to log from this class adding DeviceId.
+     */
+    private void openConfigLog(String format, Object... arguments) {
+        log.info("OPENCONFIG {}: " + format, did(), arguments);
+    }
+
+    /**
+     * Helper method to log an error from this class adding DeviceId.
+     */
+    private void openConfigError(String format, Object... arguments) {
+        log.error("OPENCONFIG {}: " + format, did(), arguments);
+    }
+
+
+    /**
+     * Helper method to get the Netconf Session.
+     */
+    private NetconfSession getNetconfSession() {
+        NetconfController controller =
+                checkNotNull(handler().get(NetconfController.class));
+        return controller.getNetconfDevice(did()).getSession();
+    }
+
+    private void setOpticalChannelFrequency(NetconfSession session,
+                                            String optChannel, Frequency freq)
+            throws NetconfException {
+        StringBuilder sb = new StringBuilder();
+        sb.append(
+                "<components xmlns='http://openconfig.net/yang/platform'>"
+                        + "<component operation='merge'>"
+                        + "<name>" + optChannel + "</name>"
+                        + "<oc-opt-term:optical-channel "
+                        +
+                        "    xmlns:oc-opt-term='http://openconfig.net/yang/terminal-device'>"
+                        + "  <oc-opt-term:config>"
+                        + "  <oc-opt-term:frequency>" + (long) freq.asMHz() +
+                        "</oc-opt-term:frequency>"
+                        + "    </oc-opt-term:config>"
+                        + " </oc-opt-term:optical-channel>"
+                        + "</component>"
+                        + "</components>");
+
+        boolean ok =
+                session.editConfig(DatastoreId.RUNNING, null, sb.toString());
+        if (!ok) {
+            throw new NetconfException("error writing channel frequency");
+        }
+    }
+
+    /**
+     * Get the OpenConfig component name for the OpticalChannel component.
+     *
+     * @param portNumber ONOS port number of the Line port ().
+     * @return the channel component name or null
+     */
+    private String getOpticalChannel(PortNumber portNumber) {
+        Port clientPort = handler().get(DeviceService.class).getPort(did(), portNumber);
+        return clientPort.annotations().value(OC_NAME);
+    }
+
+    /**
+     * Apply the flowrule.
+     *
+     * Note: only bidirectional are supported as of now,
+     * given OpenConfig note (below). In consequence, only the
+     * TX rules are actually mapped to netconf ops.
+     * <p>
+     * https://github.com/openconfig/public/blob/master/release/models
+     * /optical-transport/openconfig-terminal-device.yang
+     * <p>
+     * Directionality:
+     * To maintain simplicity in the model, the configuration is
+     * described from client-to-line direction.  The assumption is that
+     * equivalent reverse configuration is implicit, resulting in
+     * the same line-to-client configuration.
+     *
+     * @param session The Netconf session.
+     * @param r       Flow Rules to be applied.
+     * @throws NetconfException if exchange goes wrong
+     */
+    protected void applyFlowRule(NetconfSession session, FlowRule r) throws NetconfException {
+        FlowRuleParser frp = new FlowRuleParser(r);
+        if (!frp.isReceiver()) {
+            String optChannel = getOpticalChannel(frp.getPortNumber());
+            setOpticalChannelFrequency(session, optChannel, frp.getCentralFrequency());
+        }
+    }
+
+
+    protected void removeFlowRule(NetconfSession session, FlowRule r)
+            throws NetconfException {
+        FlowRuleParser frp = new FlowRuleParser(r);
+        if (!frp.isReceiver()) {
+            String optChannel = getOpticalChannel(frp.getPortNumber());
+            setOpticalChannelFrequency(session, optChannel, Frequency.ofMHz(0));
+        }
+    }
+}
diff --git a/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/CassiniTerminalDeviceDiscovery.java b/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/CassiniTerminalDeviceDiscovery.java
index acb6c4a..0f08e9c 100644
--- a/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/CassiniTerminalDeviceDiscovery.java
+++ b/drivers/odtn-driver/src/main/java/org/onosproject/drivers/odtn/CassiniTerminalDeviceDiscovery.java
@@ -40,6 +40,10 @@
 import org.onosproject.netconf.NetconfDevice;
 import org.onosproject.netconf.NetconfSession;
 import org.onosproject.odtn.behaviour.OdtnDeviceDescriptionDiscovery;
+import org.onosproject.net.OchSignal;
+import org.onosproject.net.optical.device.OchPortHelper;
+import org.onosproject.net.OduSignalType;
+import org.onosproject.net.ChannelSpacing;
 import org.slf4j.Logger;
 
 import java.util.HashMap;
@@ -244,21 +248,21 @@
              HierarchicalConfiguration channel) {
 
          HierarchicalConfiguration config = channel.configurationAt("config");
-         String name = config.getString("index");
-         String portName = config.getString("description");
+         String logicalChannelIndex = config.getString("index");
+         String description = config.getString("description");
          String rateClass = config.getString("rate-class");
-         log.info("Parsing Component {} type {} rate {}", name, portName, rateClass);
+         log.info("Parsing Component {} type {} rate {}", logicalChannelIndex, description, rateClass);
 
          Map<String, String> annotations = new HashMap<>();
-         annotations.put(OdtnDeviceDescriptionDiscovery.OC_NAME, name);
-         annotations.put(OdtnDeviceDescriptionDiscovery.OC_TYPE, portName);
+         annotations.put(OdtnDeviceDescriptionDiscovery.OC_LOGICAL_CHANNEL, logicalChannelIndex);
+         annotations.put(OdtnDeviceDescriptionDiscovery.OC_NAME, description);
 
          // Store all properties as port properties
 
          Pattern clientPattern = Pattern.compile("ce(\\d*)/1"); // e.g. ce1/1
-         Pattern linePattern = Pattern.compile("oe(\\d*)"); // e.g. oe1
-         Matcher clientMatch = clientPattern.matcher(portName);
-         Matcher lineMatch = linePattern.matcher(portName);
+         Pattern linePattern = Pattern.compile("oc(\\d*)/(\\d*)"); // e.g. oe1
+         Matcher clientMatch = clientPattern.matcher(description);
+         Matcher lineMatch = linePattern.matcher(description);
 
          Pattern portSpeedPattern = Pattern.compile("TRIB_RATE_([0-9.]*)G");
          Matcher portSpeedMatch = portSpeedPattern.matcher(rateClass);
@@ -266,6 +270,11 @@
 
          Builder builder = DefaultPortDescription.builder();
 
+         if (portSpeedMatch.find()) {
+             Long speed = Long.parseLong(portSpeedMatch.group(1));
+             builder.portSpeed(speed * 1000);
+         }
+
          if (clientMatch.find()) {
              Long num = Long.parseLong(clientMatch.group(1));
              Long portNum = 100 + num;
@@ -275,10 +284,14 @@
              annotations.putIfAbsent(ONOS_PORT_INDEX, portNum.toString());
              annotations.putIfAbsent(CONNECTION_ID, connectionId);
 
-             builder.withPortNumber(PortNumber.portNumber(portNum, name));
+             builder.withPortNumber(PortNumber.portNumber(portNum));
              builder.type(Type.PACKET);
+
+             builder.annotations(DefaultAnnotations.builder().putAll(annotations).build());
+             return builder.build();
+
          } else if (lineMatch.find()) {
-             Long num = Long.parseLong(lineMatch.group(1));
+             Long num = (Long.parseLong(lineMatch.group(1)) - 1) * 2 + Long.parseLong(lineMatch.group(2));
              Long portNum = 200 + num;
              String connectionId = "connection:" + num.toString();
 
@@ -286,16 +299,19 @@
              annotations.putIfAbsent(ONOS_PORT_INDEX, portNum.toString());
              annotations.putIfAbsent(CONNECTION_ID, connectionId);
 
-             builder.withPortNumber(PortNumber.portNumber(portNum, name));
-             builder.type(Type.OCH);
+             OchSignal signalId = OchSignal.newDwdmSlot(ChannelSpacing.CHL_50GHZ, 1);
+             return OchPortHelper.ochPortDescription(
+                     PortNumber.portNumber(portNum),
+                     true,
+                     OduSignalType.ODU4, // TODO Client signal to be discovered
+                     true,
+                     signalId,
+                     DefaultAnnotations.builder().putAll(annotations).build());
+
+         } else {
+             log.warn("Unexpected component description: {}", description);
+             return null;
          }
 
-         if (portSpeedMatch.find()) {
-             Long speed = Long.parseLong(portSpeedMatch.group(1));
-             builder.portSpeed(speed * 1000);
-         }
-
-         builder.annotations(DefaultAnnotations.builder().putAll(annotations).build());
-         return builder.build();
      }
 }
diff --git a/drivers/odtn-driver/src/main/resources/odtn-drivers.xml b/drivers/odtn-driver/src/main/resources/odtn-drivers.xml
index 60fe17f..2472385 100644
--- a/drivers/odtn-driver/src/main/resources/odtn-drivers.xml
+++ b/drivers/odtn-driver/src/main/resources/odtn-drivers.xml
@@ -58,6 +58,12 @@
                    impl="org.onosproject.drivers.odtn.CassiniTerminalDeviceDiscovery"/>
         <behaviour api="org.onosproject.odtn.behaviour.ConfigurableTransceiver"
                    impl="org.onosproject.odtn.behaviour.CassiniTransceiver"/>
+        <behaviour api ="org.onosproject.net.optical.OpticalDevice"
+                   impl="org.onosproject.net.optical.DefaultOpticalDevice"/>
+        <behaviour api ="org.onosproject.net.behaviour.LambdaQuery"
+                   impl="org.onosproject.drivers.odtn.openconfig.TerminalDeviceLambdaQuery"/>
+        <behaviour api="org.onosproject.net.flow.FlowRuleProgrammable"
+                   impl="org.onosproject.drivers.odtn.CassiniFlowRuleProgrammable"/>
     </driver>
     <driver name="nokia-1830" manufacturer="nokia" hwVersion="1830" swVersion="R10.1.1">
         <behaviour api="org.onosproject.net.device.DeviceDescriptionDiscovery"
diff --git a/drivers/odtn-driver/src/test/resources/cassini-init-device-config.xml b/drivers/odtn-driver/src/test/resources/cassini-init-device-config.xml
new file mode 100644
index 0000000..8ef51a7
--- /dev/null
+++ b/drivers/odtn-driver/src/test/resources/cassini-init-device-config.xml
@@ -0,0 +1,1098 @@
+<config xmlns="http://tail-f.com/ns/config/1.0">
+  <components xmlns="http://openconfig.net/yang/platform">
+    <component>
+      <name>oe1</name>
+      <config>
+        <name>oe1</name> <!-- must be the same as component/name -->
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:CFP2_ACO</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>oe2</name>
+      <config>
+        <name>oe2</name> <!-- must be the same as component/name -->
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:CFP2_ACO</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>oe3</name>
+      <config>
+        <name>oe3</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:CFP2_ACO</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>oe4</name>
+      <config>
+        <name>oe4</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:CFP2_ACO</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>oe5</name>
+      <config>
+        <name>oe5</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:CFP2_ACO</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>oe6</name>
+      <config>
+        <name>oe6</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:CFP2_ACO</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>oe7</name>
+      <config>
+        <name>oe7</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:CFP2_ACO</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>oe8</name>
+      <config>
+        <name>oe8</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:CFP2_ACO</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+
+    <!-- [NEW] optical channel components :: start -->
+    <component>
+      <name>oc1/1</name>
+      <config>
+        <name>oc1/1</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194700000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe1</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc1/2</name>
+      <config>
+        <name>oc1/2</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194750000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe1</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc2/1</name>
+      <config>
+        <name>oc2/1</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194700000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe2</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc2/2</name>
+      <config>
+        <name>oc2/2</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194750000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe2</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc3/1</name>
+      <config>
+        <name>oc3/1</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194700000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe3</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc3/2</name>
+      <config>
+        <name>oc3/2</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194750000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe3</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc4/1</name>
+      <config>
+        <name>oc4/1</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194700000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe4</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc4/2</name>
+      <config>
+        <name>oc4/2</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194750000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe4</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc5/1</name>
+      <config>
+        <name>oc5/1</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194700000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe5</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc5/2</name>
+      <config>
+        <name>oc5/2</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194750000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe5</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc6/1</name>
+      <config>
+        <name>oc6/1</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194700000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe6</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc6/2</name>
+      <config>
+        <name>oc6/2</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194750000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe6</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc7/1</name>
+      <config>
+        <name>oc7/1</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194700000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe7</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc7/2</name>
+      <config>
+        <name>oc7/2</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194750000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe7</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc8/1</name>
+      <config>
+        <name>oc8/1</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194700000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe8</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <component>
+      <name>oc8/2</name>
+      <config>
+        <name>oc8/2</name>
+      </config>
+      <optical-channel xmlns="http://openconfig.net/yang/terminal-device">
+        <config>
+          <frequency>194750000</frequency> <!-- MHz -->
+          <target-output-power>-10.0</target-output-power> <!-- dbm -->
+          <line-port>oe8</line-port> <!-- components/component/name (type:TRANSCEIVER) -->
+        </config>
+      </optical-channel>
+    </component>
+    <!-- [NEW] optical channel components :: end -->
+
+    <component>
+      <name>ce1</name>
+      <config>
+        <name>ce1</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce2</name>
+      <config>
+        <name>ce2</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce3</name>
+      <config>
+        <name>ce3</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce4</name>
+      <config>
+        <name>ce4</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce5</name>
+      <config>
+        <name>ce5</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce6</name>
+      <config>
+        <name>ce6</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce7</name>
+      <config>
+        <name>ce7</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce8</name>
+      <config>
+        <name>ce8</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce9</name>
+      <config>
+        <name>ce9</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce10</name>
+      <config>
+        <name>ce10</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce11</name>
+      <config>
+        <name>ce11</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce12</name>
+      <config>
+        <name>ce12</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce13</name>
+      <config>
+        <name>ce13</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce14</name>
+      <config>
+        <name>ce14</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce15</name>
+      <config>
+        <name>ce15</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+    <component>
+      <name>ce16</name>
+      <config>
+        <name>ce16</name>
+      </config>
+      <transceiver xmlns="http://openconfig.net/yang/platform/transceiver">
+        <config>
+          <enabled>true</enabled>
+          <form-factor-preconf xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:QSFP28</form-factor-preconf>
+        </config>
+      </transceiver>
+    </component>
+  </components>
+  <terminal-device xmlns="http://openconfig.net/yang/terminal-device">
+    <logical-channels>
+      <channel>
+        <index>10101</index> <!-- must be uint32 -->
+        <config>
+          <index>10101</index>  <!-- must be the same as logical-channels/channel/index -->
+          <description>ce1/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce1</transceiver>
+          </config>
+        </ingress>
+        <logical-channel-assignments>
+          <assignment>
+            <index>10101</index> <!-- the same value as parent channel's index -->
+            <config>
+              <index>10101</index>   <!-- must be the same as logical-channel-assignments/assignment/index -->
+              <assignment-type>LOGICAL_CHANNEL</assignment-type>
+              <logical-channel>20101</logical-channel>
+              <allocation>100.0</allocation>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>10201</index>
+        <config>
+          <index>10201</index>
+          <description>ce2/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce2</transceiver>
+          </config>
+        </ingress>
+        <logical-channel-assignments>
+          <assignment>
+            <index>10201</index> <!-- the same value as parent channel's index -->
+            <config>
+              <index>10201</index>
+              <assignment-type>LOGICAL_CHANNEL</assignment-type>
+              <logical-channel>20102</logical-channel>
+              <allocation>100.0</allocation>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>10301</index>
+        <config>
+          <index>10301</index>
+          <description>ce3/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce3</transceiver>
+          </config>
+        </ingress>
+        <logical-channel-assignments>
+          <assignment>
+            <index>10301</index> <!-- the same value as parent channel's index -->
+            <config>
+              <index>10301</index>
+              <assignment-type>LOGICAL_CHANNEL</assignment-type>
+              <logical-channel>20202</logical-channel>
+              <allocation>100.0</allocation>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>10401</index>
+        <config>
+          <index>10401</index>
+          <description>ce4/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce4</transceiver>
+          </config>
+        </ingress>
+        <logical-channel-assignments>
+          <assignment>
+            <index>10401</index> <!-- the same value as parent channel's index -->
+            <config>
+              <index>10401</index>
+              <assignment-type>LOGICAL_CHANNEL</assignment-type>
+              <logical-channel>20201</logical-channel>
+              <allocation>100.0</allocation>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>10501</index>
+        <config>
+          <index>10501</index>
+          <description>ce5/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce5</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>10601</index>
+        <config>
+          <index>10601</index>
+          <description>ce6/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce6</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>10701</index>
+        <config>
+          <index>10701</index>
+          <description>ce7/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce7</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>10801</index>
+        <config>
+          <index>10801</index>
+          <description>ce8/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce8</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>10901</index>
+        <config>
+          <index>10901</index>
+          <description>ce9/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce9</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>11001</index>
+        <config>
+          <index>11001</index>
+          <description>ce10/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce10</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>11101</index>
+        <config>
+          <index>11101</index>
+          <description>ce11/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce11</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>11201</index>
+        <config>
+          <index>11201</index>
+          <description>ce12/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce12</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>11301</index>
+        <config>
+          <index>11301</index>
+          <description>ce13/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce13</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>11401</index>
+        <config>
+          <index>11401</index>
+          <description>ce14/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce14</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>11501</index>
+        <config>
+          <index>11501</index>
+          <description>ce15/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce15</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>11601</index>
+        <config>
+          <index>11601</index>
+          <description>ce16/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <trib-protocol xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_100GE</trib-protocol>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <ingress>
+          <config>
+            <transceiver>ce16</transceiver>
+          </config>
+        </ingress>
+      </channel>
+      <channel>
+        <index>20101</index>
+        <config>
+          <index>20101</index>
+          <description>oc1/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+
+        <!-- [NEW] association with optical channel component :: start -->
+        <logical-channel-assignments>
+          <assignment>
+            <index>20101</index>
+            <config>
+              <index>20101</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc1/1</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+        <!-- [NEW] association with optical channel component :: end -->
+
+      </channel>
+      <channel>
+        <index>20102</index>
+        <config>
+          <index>20102</index>
+          <description>oc1/2</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <!-- [NEW] association with optical channel component :: start -->
+        <logical-channel-assignments>
+          <assignment>
+            <index>20102</index>
+            <config>
+              <index>20102</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc1/2</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+        <!-- [NEW] association with optical channel component :: end -->
+      </channel>
+      <channel>
+        <index>20201</index>
+        <config>
+          <index>20201</index>
+          <description>oc2/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <!-- [NEW] association with optical channel component :: start -->
+        <logical-channel-assignments>
+          <assignment>
+            <index>20201</index>
+            <config>
+              <index>20201</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc2/1</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+        <!-- [NEW] association with optical channel component :: end -->
+      </channel>
+      <channel>
+        <index>20202</index>
+        <config>
+          <index>20202</index>
+          <description>oc2/2</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <!-- [NEW] association with optical channel component :: start -->
+        <logical-channel-assignments>
+          <assignment>
+            <index>20202</index>
+            <config>
+              <index>20202</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc2/2</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+        <!-- [NEW] association with optical channel component :: end -->
+      </channel>
+      <channel>
+        <index>20301</index>
+        <config>
+          <index>20301</index>
+          <description>oc3/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+      </channel>
+      <channel>
+        <index>20302</index>
+        <config>
+          <index>20302</index>
+          <description>oc3/2</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+      </channel>
+      <channel>
+        <index>20401</index>
+        <config>
+          <index>20401</index>
+          <description>oc4/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+      </channel>
+      <channel>
+        <index>20402</index>
+        <config>
+          <index>20402</index>
+          <description>oc4/2</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+      </channel>
+      <channel>
+        <index>20501</index>
+        <config>
+          <index>20501</index>
+          <description>oc5/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <logical-channel-assignments>
+          <assignment>
+            <index>20501</index>
+            <config>
+              <index>20501</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc5/1</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>20502</index>
+        <config>
+          <index>20502</index>
+          <description>oc5/2</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <logical-channel-assignments>
+          <assignment>
+            <index>20502</index>
+            <config>
+              <index>20502</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc5/2</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>20601</index>
+        <config>
+          <index>20601</index>
+          <description>oc6/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <logical-channel-assignments>
+          <assignment>
+            <index>20601</index>
+            <config>
+              <index>20601</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc6/1</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>20602</index>
+        <config>
+          <index>20602</index>
+          <description>oc6/2</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <logical-channel-assignments>
+          <assignment>
+            <index>20602</index>
+            <config>
+              <index>20602</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc6/2</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>20701</index>
+        <config>
+          <index>20701</index>
+          <description>oc7/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <logical-channel-assignments>
+          <assignment>
+            <index>20701</index>
+            <config>
+              <index>20701</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc7/1</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>20702</index>
+        <config>
+          <index>20702</index>
+          <description>oc7/2</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <logical-channel-assignments>
+          <assignment>
+            <index>20702</index>
+            <config>
+              <index>20702</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc7/2</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>20801</index>
+        <config>
+          <index>20801</index>
+          <description>oc8/1</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <logical-channel-assignments>
+          <assignment>
+            <index>20801</index>
+            <config>
+              <index>20801</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc8/1</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+      <channel>
+        <index>20802</index>
+        <config>
+          <index>20802</index>
+          <description>oc8/2</description>
+          <admin-state>ENABLED</admin-state>
+          <rate-class xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:TRIB_RATE_100G</rate-class>
+          <logical-channel-type xmlns:oc-opt-types="http://openconfig.net/yang/transport-types">oc-opt-types:PROT_ETHERNET</logical-channel-type>
+        </config>
+        <logical-channel-assignments>
+          <assignment>
+            <index>20802</index>
+            <config>
+              <index>20802</index>
+              <assignment-type>OPTICAL_CHANNEL</assignment-type>
+              <optical-channel>oc8/2</optical-channel>
+            </config>
+          </assignment>
+        </logical-channel-assignments>
+      </channel>
+    </logical-channels>
+  </terminal-device>
+</config>
diff --git a/drivers/odtn-driver/src/test/resources/cassini-init-device-state.xml b/drivers/odtn-driver/src/test/resources/cassini-init-device-state.xml
new file mode 100644
index 0000000..4284730
--- /dev/null
+++ b/drivers/odtn-driver/src/test/resources/cassini-init-device-state.xml
@@ -0,0 +1,246 @@
+<components xmlns="http://openconfig.net/yang/platform">
+  <component>
+    <name>oe1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>oe2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>oe3</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>oe4</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>oe5</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>oe6</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>oe7</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>oe8</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+
+  <!-- [NEW] optical channel components :: start -->
+  <component>
+    <name>oc1/1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc1/2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc2/1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc2/2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc3/1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc3/2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc4/1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc4/2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc5/1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc5/2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc6/1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc6/2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc7/1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc7/2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc8/1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <component>
+    <name>oc8/2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:OPTICAL_CHANNEL</type>
+    </state>
+  </component>
+  <!-- [NEW] optical channel components :: end -->
+
+  <component>
+    <name>xe1</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe2</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe3</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe4</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe5</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe6</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe7</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe8</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe9</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe10</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>xe11</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>ce12</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>ce13</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>ce14</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>ce15</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+  <component>
+    <name>ce16</name>
+    <state>
+      <type xmlns:oc-platform-types="http://openconfig.net/yang/platform-types">oc-platform-types:TRANSCEIVER</type>
+    </state>
+  </component>
+</components>
