[ONOS-3222] Implement toString method for each Packet class

Change-Id: I17d72338d4202117d08b3dca9463be35a87a0c1e
diff --git a/utils/misc/src/main/java/org/onlab/packet/IPv6.java b/utils/misc/src/main/java/org/onlab/packet/IPv6.java
index 2e59632..ca8c319 100644
--- a/utils/misc/src/main/java/org/onlab/packet/IPv6.java
+++ b/utils/misc/src/main/java/org/onlab/packet/IPv6.java
@@ -31,6 +31,7 @@
 import java.util.HashMap;
 import java.util.Map;
 
+import static com.google.common.base.MoreObjects.toStringHelper;
 import static org.onlab.packet.PacketUtils.checkInput;
 
 /**
@@ -381,4 +382,18 @@
             return ipv6;
         };
     }
+
+    @Override
+    public String toString() {
+        return toStringHelper(getClass())
+                .add("version", Byte.toString(version))
+                .add("trafficClass", Byte.toString(trafficClass))
+                .add("flowLabel", Integer.toString(flowLabel))
+                .add("payloadLength", Short.toString(payloadLength))
+                .add("nextHeader", Byte.toString(nextHeader))
+                .add("hopLimit", Byte.toString(hopLimit))
+                .add("sourceAddress", Arrays.toString(sourceAddress))
+                .add("destinationAddress", Arrays.toString(destinationAddress))
+                .toString();
+    }
 }