diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
index 8be6c97880f41d3e515157b0a135ae3f8c2881e3..3191ab7a9a724c599704122bc22ea90e5cfa614e 100644
--- a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
+++ b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkDiscoveryManager.java
@@ -733,7 +733,13 @@ public class LinkDiscoveryManager implements IOFMessageListener,
 
         List<OFAction> actions = getDiscoveryActions(iofSwitch, ofpPort);
         po.setActions(actions);
-        po.setActionsLength(getDiscoveryActionsLength(iofSwitch, ofpPort));
+        
+        short  actionLength = 0;
+        Iterator <OFAction> actionIter = actions.iterator();
+        while (actionIter.hasNext()) {
+            actionLength += actionIter.next().getLength();
+        }
+        po.setActionsLength(actionLength);
 
         // set data
         po.setLengthU(OFPacketOut.MINIMUM_LENGTH + po.getActionsLength()
@@ -751,11 +757,6 @@ public class LinkDiscoveryManager implements IOFMessageListener,
 
     }
 
-    protected short getDiscoveryActionsLength(IOFSwitch iofSwitch,
-            OFPhysicalPort ofpPort) {
-        return (short) OFActionOutput.MINIMUM_LENGTH;
-    }
-
     /**
      * Send LLDPs to all switch-ports
      */