diff --git a/web/gui/src/main/webapp/app/view/topo/topoLink.js b/web/gui/src/main/webapp/app/view/topo/topoLink.js
index 2b46f45..05041c4 100644
--- a/web/gui/src/main/webapp/app/view/topo/topoLink.js
+++ b/web/gui/src/main/webapp/app/view/topo/topoLink.js
@@ -109,7 +109,7 @@
             if (p.x > line.x1 && p.x > line.x2) return false;
             if (p.y < line.y1 && p.y < line.y2) return false;
             if (p.y > line.y1 && p.y > line.y2) return false;
-            // line bisects, but are we close enough?
+            // line intersects, but are we close enough?
             return mdist(p, m) <= proximity;
         }
 
@@ -190,12 +190,11 @@
 
     function unenhance(d) {
         d.el.classed('enhanced', false);
-        $log.debug('UN-enhancing link: ', d.key);
     }
 
     function enhance(d) {
         d.el.classed('enhanced', true);
-        $log.debug('enhancing link: ', d.key);
+        $log.debug('[' + (d.srcPort || 'H') + '] ---> [' + d.tgtPort + ']', d.key);
     }
 
 
diff --git a/web/gui/src/main/webapp/app/view/topo/topoModel.js b/web/gui/src/main/webapp/app/view/topo/topoModel.js
index f7f53a0..0a75652 100644
--- a/web/gui/src/main/webapp/app/view/topo/topoModel.js
+++ b/web/gui/src/main/webapp/app/view/topo/topoModel.js
@@ -158,6 +158,8 @@
         angular.extend(lnk, {
             key: id,
             class: 'link',
+            // NOTE: srcPort left undefined (host end of the link)
+            tgtPort: host.cp.port,
 
             type: function () { return 'hostLink'; },
             online: function () {
@@ -180,6 +182,8 @@
             key: link.id,
             class: 'link',
             fromSource: link,
+            srcPort: link.srcPort,
+            tgtPort: link.dstPort,
 
             // functions to aggregate dual link state
             type: function () {
@@ -218,7 +222,7 @@
         }
         return {
             source: srcNode,
-            target: dstNode,
+            target: dstNode
         };
     }
 
diff --git a/web/gui/src/test/_karma/ev/traffic/ev_10_addLink_s8-r8.json b/web/gui/src/test/_karma/ev/traffic/ev_10_addLink_s8-r8.json
index e28d575..37ed1cb 100644
--- a/web/gui/src/test/_karma/ev/traffic/ev_10_addLink_s8-r8.json
+++ b/web/gui/src/test/_karma/ev/traffic/ev_10_addLink_s8-r8.json
@@ -1,14 +1,14 @@
 {
   "event": "addLink",
   "payload": {
-    "id": "of:0000ffffffff0008/4-of:0000ffffffffff08/1",
+    "id": "of:0000ffffffff0008/5-of:0000ffffffffff08/11",
     "type": "direct",
     "online": true,
     "linkWidth": 2,
     "src": "of:0000ffffffff0008",
-    "srcPort": "4",
+    "srcPort": "5",
     "dst": "of:0000ffffffffff08",
-    "dstPort": "1",
+    "dstPort": "11",
     "props" : {
       "BW": "90 Gb"
     }
diff --git a/web/gui/src/test/_karma/ev/traffic/ev_11_addLink_s3-r3.json b/web/gui/src/test/_karma/ev/traffic/ev_11_addLink_s3-r3.json
index ae7c2ab..28ba3ea 100644
--- a/web/gui/src/test/_karma/ev/traffic/ev_11_addLink_s3-r3.json
+++ b/web/gui/src/test/_karma/ev/traffic/ev_11_addLink_s3-r3.json
@@ -1,14 +1,14 @@
 {
   "event": "addLink",
   "payload": {
-    "id": "of:0000ffffffff0003/4-of:0000ffffffffff03/1",
+    "id": "of:0000ffffffff0003/6-of:0000ffffffffff03/8",
     "type": "direct",
     "online": true,
     "linkWidth": 2,
     "src": "of:0000ffffffff0003",
-    "srcPort": "4",
+    "srcPort": "6",
     "dst": "of:0000ffffffffff03",
-    "dstPort": "1",
+    "dstPort": "8",
     "props" : {
       "BW": "90 Gb"
     }
diff --git a/web/gui/src/test/_karma/ev/traffic/ev_12_addLink_r8-r3.json b/web/gui/src/test/_karma/ev/traffic/ev_12_addLink_r8-r3.json
index 6c08070..8d97902 100644
--- a/web/gui/src/test/_karma/ev/traffic/ev_12_addLink_r8-r3.json
+++ b/web/gui/src/test/_karma/ev/traffic/ev_12_addLink_r8-r3.json
@@ -1,14 +1,14 @@
 {
   "event": "addLink",
   "payload": {
-    "id": "of:0000ffffffffff08/4-of:0000ffffffffff03/1",
+    "id": "of:0000ffffffffff08/13-of:0000ffffffffff03/17",
     "type": "optical",
     "online": true,
     "linkWidth": 2,
     "src": "of:0000ffffffffff08",
-    "srcPort": "4",
+    "srcPort": "13",
     "dst": "of:0000ffffffffff03",
-    "dstPort": "1",
+    "dstPort": "17",
     "props" : {
       "BW": "90 Gb"
     }
diff --git a/web/gui/src/test/_karma/ev/traffic/ev_14_addHost_h7.json b/web/gui/src/test/_karma/ev/traffic/ev_14_addHost_h7.json
index 6efcda9..262b8f2 100644
--- a/web/gui/src/test/_karma/ev/traffic/ev_14_addHost_h7.json
+++ b/web/gui/src/test/_karma/ev/traffic/ev_14_addHost_h7.json
@@ -2,11 +2,11 @@
   "event": "addHost",
   "payload": {
     "id": "0E:2A:69:30:13:88/-1",
-    "ingress": "0E:2A:69:30:13:88/-1/0-of:0000ffffffff0007/101",
-    "egress": "of:0000ffffffff0007/101-0E:2A:69:30:13:86/-1/0",
+    "ingress": "0E:2A:69:30:13:88/-1/0-of:0000ffffffff0007/102",
+    "egress": "of:0000ffffffff0007/102-0E:2A:69:30:13:86/-1/0",
     "cp": {
       "device": "of:0000ffffffff0007",
-      "port": 101
+      "port": 102
     },
     "labels": [
       "4.5.7.6",
diff --git a/web/gui/src/test/_karma/ev/traffic/ev_15_addHost_h8.json b/web/gui/src/test/_karma/ev/traffic/ev_15_addHost_h8.json
index af031a6..65cd825 100644
--- a/web/gui/src/test/_karma/ev/traffic/ev_15_addHost_h8.json
+++ b/web/gui/src/test/_karma/ev/traffic/ev_15_addHost_h8.json
@@ -2,11 +2,11 @@
   "event": "addHost",
   "payload": {
     "id": "0E:2A:69:30:13:aa/-1",
-    "ingress": "0E:2A:69:30:13:aa/-1/0-of:0000ffffffff0008/101",
-    "egress": "of:0000ffffffff0008/101-0E:2A:69:30:13:aa/-1/0",
+    "ingress": "0E:2A:69:30:13:aa/-1/0-of:0000ffffffff0008/103",
+    "egress": "of:0000ffffffff0008/103-0E:2A:69:30:13:aa/-1/0",
     "cp": {
       "device": "of:0000ffffffff0008",
-      "port": 101
+      "port": 103
     },
     "labels": [
       "12.13.14.15",
diff --git a/web/gui/src/test/_karma/ev/traffic/ev_17_addLink_r8-r4.json b/web/gui/src/test/_karma/ev/traffic/ev_17_addLink_r8-r4.json
index 4cd11af..d32efef 100644
--- a/web/gui/src/test/_karma/ev/traffic/ev_17_addLink_r8-r4.json
+++ b/web/gui/src/test/_karma/ev/traffic/ev_17_addLink_r8-r4.json
@@ -1,14 +1,14 @@
 {
   "event": "addLink",
   "payload": {
-    "id": "of:0000ffffffffff08/4-of:0000ffffffffff04/1",
+    "id": "of:0000ffffffffff08/99-of:0000ffffffffff04/65535",
     "type": "optical",
     "online": true,
     "linkWidth": 2,
     "src": "of:0000ffffffffff08",
-    "srcPort": "4",
+    "srcPort": "99",
     "dst": "of:0000ffffffffff04",
-    "dstPort": "1",
+    "dstPort": "65535",
     "props" : {
       "BW": "90 Gb"
     }
diff --git a/web/gui/src/test/_karma/ev/traffic/ev_8_addLink_s8-s3.json b/web/gui/src/test/_karma/ev/traffic/ev_8_addLink_s8-s3.json
index 3fd1352..84531de 100644
--- a/web/gui/src/test/_karma/ev/traffic/ev_8_addLink_s8-s3.json
+++ b/web/gui/src/test/_karma/ev/traffic/ev_8_addLink_s8-s3.json
@@ -1,12 +1,12 @@
 {
   "event": "addLink",
   "payload": {
-    "id": "of:0000ffffffff0008/2-of:0000ffffffff0003/1",
+    "id": "of:0000ffffffff0008/21-of:0000ffffffff0003/1",
     "type": "direct",
     "online": true,
     "linkWidth": 2,
     "src": "of:0000ffffffff0008",
-    "srcPort": "2",
+    "srcPort": "21",
     "dst": "of:0000ffffffff0003",
     "dstPort": "1",
     "props" : {
diff --git a/web/gui/src/test/_karma/ev/traffic/ev_9_addLink_s8-s7.json b/web/gui/src/test/_karma/ev/traffic/ev_9_addLink_s8-s7.json
index e6206d7..a432a52 100644
--- a/web/gui/src/test/_karma/ev/traffic/ev_9_addLink_s8-s7.json
+++ b/web/gui/src/test/_karma/ev/traffic/ev_9_addLink_s8-s7.json
@@ -1,14 +1,14 @@
 {
   "event": "addLink",
   "payload": {
-    "id": "of:0000ffffffff0008/4-of:0000ffffffff0007/1",
+    "id": "of:0000ffffffff0008/4-of:0000ffffffff0007/3",
     "type": "direct",
     "online": true,
     "linkWidth": 2,
     "src": "of:0000ffffffff0008",
     "srcPort": "4",
     "dst": "of:0000ffffffff0007",
-    "dstPort": "1",
+    "dstPort": "3",
     "props" : {
       "BW": "90 Gb"
     }
