diff --git a/src/main/java/net/floodlightcontroller/packet/IPv4.java b/src/main/java/net/floodlightcontroller/packet/IPv4.java
index e78726b83a635516ec33e72a13640791f522ed48..ccfce792b3271d2aff56aee32b816d2ea45d6277 100644
--- a/src/main/java/net/floodlightcontroller/packet/IPv4.java
+++ b/src/main/java/net/floodlightcontroller/packet/IPv4.java
@@ -456,9 +456,9 @@ public class IPv4 extends BasePacket {
 
     /**
      * Accepts an IPv4 address of the form xxx.xxx.xxx.xxx, ie 192.168.0.1 and
-     * returns the corresponding byte array
-     * @param ipAddress
-     * @return
+     * returns the corresponding byte array.
+     * @param ipAddress The IP address in the form xx.xxx.xxx.xxx.
+     * @return The IP address separated into bytes
      */
     public static byte[] toIPv4AddressBytes(String ipAddress) {
         String[] octets = ipAddress.split("\\.");
@@ -472,6 +472,20 @@ public class IPv4 extends BasePacket {
         }
         return result;
     }
+    
+    /**
+     * Accepts an IPv4 address in the form of an integer and
+     * returns the corresponding byte array.
+     * @param ipAddress The IP address as an integer.
+     * @return The IP address separated into bytes.
+     */
+    public static byte[] toIPv4AddressBytes(int ipAddress) {
+    	return new byte[] {
+                (byte)(ipAddress >>> 24),
+                (byte)(ipAddress >>> 16),
+                (byte)(ipAddress >>> 8),
+                (byte)ipAddress};
+    }
 
     /* (non-Javadoc)
      * @see java.lang.Object#hashCode()
diff --git a/src/test/java/net/floodlightcontroller/packet/IPv4Test.java b/src/test/java/net/floodlightcontroller/packet/IPv4Test.java
index c252cb6ad9a56467153691112613fda3123a6e39..928a2de68fb551f5d27aafaaba7b0e00c4d92c55 100644
--- a/src/test/java/net/floodlightcontroller/packet/IPv4Test.java
+++ b/src/test/java/net/floodlightcontroller/packet/IPv4Test.java
@@ -35,8 +35,13 @@ import org.junit.Test;
 public class IPv4Test {
     @Test
     public void testToIPv4Address() {
-        int expected = 0xc0a80001;
-        assertEquals(expected, IPv4.toIPv4Address("192.168.0.1"));
+        int intIp = 0xc0a80001;
+        String stringIp = "192.168.0.1";
+        byte[] byteIp = new byte[] {(byte)192, (byte)168, (byte)0, (byte)1};
+        assertEquals(intIp, IPv4.toIPv4Address(stringIp));
+        assertEquals(intIp, IPv4.toIPv4Address(byteIp));
+        assertTrue(Arrays.equals(byteIp, IPv4.toIPv4AddressBytes(intIp)));
+        assertTrue(Arrays.equals(byteIp, IPv4.toIPv4AddressBytes(stringIp)));
     }
 
     @Test