diff --git a/src/main/java/net/onrc/onos/core/topology/Link.java b/src/main/java/net/onrc/onos/core/topology/Link.java
index 80d450e..087110f 100644
--- a/src/main/java/net/onrc/onos/core/topology/Link.java
+++ b/src/main/java/net/onrc/onos/core/topology/Link.java
@@ -65,4 +65,11 @@
      * @return the link capacity.
      */
     public Double getCapacity();
+
+    /**
+     * Returns the link type of the link.
+     *
+     * @return {@link LinkType} for this link
+     */
+    public LinkType getLinkType();
 }
diff --git a/src/main/java/net/onrc/onos/core/topology/LinkImpl.java b/src/main/java/net/onrc/onos/core/topology/LinkImpl.java
index dea629e..5886c8e 100644
--- a/src/main/java/net/onrc/onos/core/topology/LinkImpl.java
+++ b/src/main/java/net/onrc/onos/core/topology/LinkImpl.java
@@ -83,6 +83,17 @@
         return this.topology.getLinkEvent(id).getCapacity();
     }
 
+    /**
+     * Returns the link type of the link.
+     *
+     * @return {@link net.onrc.onos.core.topology.LinkType} for this link
+     */
+    @Override
+    public LinkType getLinkType() {
+        return LinkType.valueOf(getStringAttribute(TopologyElement.ELEMENT_TYPE,
+                LinkType.ETHERNET_LINK.toString()));
+    }
+
     @Override
     public String getStringAttribute(String attr) {
         return this.topology.getLinkEvent(id).getStringAttribute(attr);
diff --git a/src/main/java/net/onrc/onos/core/topology/LinkType.java b/src/main/java/net/onrc/onos/core/topology/LinkType.java
new file mode 100644
index 0000000..1c9d9d1
--- /dev/null
+++ b/src/main/java/net/onrc/onos/core/topology/LinkType.java
@@ -0,0 +1,16 @@
+package net.onrc.onos.core.topology;
+
+public enum LinkType {
+    /**
+     * Ethernet link is link between {@link PortType.ETHERNET_PORT}.
+     */
+    ETHERNET_LINK,
+    /**
+     * WDM Link is link between {@link PortType.WDM_PORT}.
+     */
+    WDM_LINK,
+    /**
+     * This link is link between {@link PortType.ETHERNET_PORT} and {@link PortType.TRANSPONDER_PORT}.
+     */
+    PACKET_TPORT_LINK;
+}
diff --git a/src/main/java/net/onrc/onos/core/topology/Port.java b/src/main/java/net/onrc/onos/core/topology/Port.java
index 2e428c7..5419c02 100644
--- a/src/main/java/net/onrc/onos/core/topology/Port.java
+++ b/src/main/java/net/onrc/onos/core/topology/Port.java
@@ -133,4 +133,12 @@
      * @return {@link Host}s attached to this port
      */
     public Collection<Host> getHosts();
+
+
+    /**
+     * Returns the port type of this port.
+     *
+     * @return {@link PortType}
+     */
+    public PortType getPortType();
 }
diff --git a/src/main/java/net/onrc/onos/core/topology/PortImpl.java b/src/main/java/net/onrc/onos/core/topology/PortImpl.java
index 2521a9a..3f4cdfb 100644
--- a/src/main/java/net/onrc/onos/core/topology/PortImpl.java
+++ b/src/main/java/net/onrc/onos/core/topology/PortImpl.java
@@ -152,6 +152,18 @@
         }
     }
 
+    /**
+     * Returns the port type of this port.
+     *
+     * @return {@link net.onrc.onos.core.topology.PortType}
+     */
+    @Override
+    public PortType getPortType() {
+        return PortType.valueOf(getStringAttribute(TopologyElement.ELEMENT_TYPE,
+                PortType.ETHERNET_PORT.toString()));
+    }
+
+
     @Override
     public String getStringAttribute(String attr) {
         return this.topology.getPortEvent(id).getStringAttribute(attr);
diff --git a/src/main/java/net/onrc/onos/core/topology/PortType.java b/src/main/java/net/onrc/onos/core/topology/PortType.java
new file mode 100644
index 0000000..6b5e6ca
--- /dev/null
+++ b/src/main/java/net/onrc/onos/core/topology/PortType.java
@@ -0,0 +1,18 @@
+package net.onrc.onos.core.topology;
+
+public enum PortType {
+    /**
+     *  Ethernet port is a port on Ethernet Switch.
+     */
+    ETHERNET_PORT,
+    /**
+     * WDM port is port connecting two Optical Switches,
+     * WDM port is only connected to another WDM port.
+     */
+    WDM_PORT,
+    /**
+     * Transponder port is a port on Optical Switch, which will be connected to Packet/Ethernet Switch.
+     * Transponder port is connected to Ethernet port.
+     */
+    TRANSPONDER_PORT;
+}
diff --git a/src/main/java/net/onrc/onos/core/topology/Switch.java b/src/main/java/net/onrc/onos/core/topology/Switch.java
index 67e9c94..7f52bd2 100644
--- a/src/main/java/net/onrc/onos/core/topology/Switch.java
+++ b/src/main/java/net/onrc/onos/core/topology/Switch.java
@@ -79,4 +79,11 @@
      * @return {@link Host}s attached to this switch
      */
     public Collection<Host> getHosts();
+
+    /**
+     * Returns the switch type of this switch.
+     *
+     * @return switch type {@link SwitchType} of this switch.
+     */
+    public SwitchType getSwitchType();
 }
diff --git a/src/main/java/net/onrc/onos/core/topology/SwitchImpl.java b/src/main/java/net/onrc/onos/core/topology/SwitchImpl.java
index de4194e..e0e02d5 100644
--- a/src/main/java/net/onrc/onos/core/topology/SwitchImpl.java
+++ b/src/main/java/net/onrc/onos/core/topology/SwitchImpl.java
@@ -98,6 +98,17 @@
         return hosts;
     }
 
+    /**
+     * Returns the switch type of this switch.
+     *
+     * @return switch type {@link net.onrc.onos.core.topology.SwitchType} of this switch.
+     */
+    @Override
+    public SwitchType getSwitchType() {
+        return SwitchType.valueOf(getStringAttribute(TopologyElement.ELEMENT_TYPE,
+                SwitchType.ETHERNET_SWITCH.toString()));
+    }
+
     @Override
     public Iterable<Link> getOutgoingLinks() {
         LinkedList<Link> links = new LinkedList<Link>();
diff --git a/src/main/java/net/onrc/onos/core/topology/SwitchType.java b/src/main/java/net/onrc/onos/core/topology/SwitchType.java
new file mode 100644
index 0000000..062a7ee
--- /dev/null
+++ b/src/main/java/net/onrc/onos/core/topology/SwitchType.java
@@ -0,0 +1,5 @@
+package net.onrc.onos.core.topology;
+
+public enum SwitchType {
+    ETHERNET_SWITCH, OPTICAL_SWITCH;
+}
diff --git a/src/main/java/net/onrc/onos/core/topology/TopologyElement.java b/src/main/java/net/onrc/onos/core/topology/TopologyElement.java
index a9cfbf8..f70e7f5 100644
--- a/src/main/java/net/onrc/onos/core/topology/TopologyElement.java
+++ b/src/main/java/net/onrc/onos/core/topology/TopologyElement.java
@@ -38,6 +38,11 @@
 
     public static final String ELEMENT_ADMIN_STATUS = "AdminStatus";
 
+    /**
+     * Attribute name for device type.
+     */
+    public static final String ELEMENT_TYPE = "ElementType";
+
     private boolean isFrozen = false;
 
     private ConcurrentMap<String, String> stringAttributes;
diff --git a/src/main/java/net/onrc/onos/core/topology/web/serializers/LinkSerializer.java b/src/main/java/net/onrc/onos/core/topology/web/serializers/LinkSerializer.java
index b0984da..78f344f 100644
--- a/src/main/java/net/onrc/onos/core/topology/web/serializers/LinkSerializer.java
+++ b/src/main/java/net/onrc/onos/core/topology/web/serializers/LinkSerializer.java
@@ -34,6 +34,7 @@
         //
         jsonGenerator.writeStartObject();
         jsonGenerator.writeStringField(TopologyElement.TYPE, link.getType());
+        jsonGenerator.writeStringField(TopologyElement.ELEMENT_TYPE, link.getLinkType().toString());
         jsonGenerator.writeObjectField("src", link.getSrcPort().getSwitchPort());
         jsonGenerator.writeObjectField("dst", link.getDstPort().getSwitchPort());
         jsonGenerator.writeObjectFieldStart("stringAttributes");
diff --git a/src/main/java/net/onrc/onos/core/topology/web/serializers/PortSerializer.java b/src/main/java/net/onrc/onos/core/topology/web/serializers/PortSerializer.java
index ff08f5b..2da7cfd 100644
--- a/src/main/java/net/onrc/onos/core/topology/web/serializers/PortSerializer.java
+++ b/src/main/java/net/onrc/onos/core/topology/web/serializers/PortSerializer.java
@@ -34,6 +34,7 @@
 
         jsonGenerator.writeStartObject();
         jsonGenerator.writeStringField(TopologyElement.TYPE, port.getType());
+        jsonGenerator.writeStringField(TopologyElement.ELEMENT_TYPE, port.getPortType().toString());
         jsonGenerator.writeStringField("state", "ACTIVE");
         jsonGenerator.writeStringField("dpid", port.getDpid().toString());
         jsonGenerator.writeNumberField("portNumber",
diff --git a/src/main/java/net/onrc/onos/core/topology/web/serializers/SwitchSerializer.java b/src/main/java/net/onrc/onos/core/topology/web/serializers/SwitchSerializer.java
index 69a5cac..3f49a98 100644
--- a/src/main/java/net/onrc/onos/core/topology/web/serializers/SwitchSerializer.java
+++ b/src/main/java/net/onrc/onos/core/topology/web/serializers/SwitchSerializer.java
@@ -34,6 +34,7 @@
 
         jsonGenerator.writeStartObject();
         jsonGenerator.writeStringField(TopologyElement.TYPE, sw.getType());
+        jsonGenerator.writeStringField(TopologyElement.ELEMENT_TYPE, sw.getSwitchType().toString());
         jsonGenerator.writeStringField("dpid", sw.getDpid().toString());
         jsonGenerator.writeStringField("state", "ACTIVE");
         jsonGenerator.writeArrayFieldStart("ports");
