diff --git a/utils/misc/src/main/java/org/onlab/metrics/MetricsUtil.java b/utils/misc/src/main/java/org/onlab/metrics/MetricsUtil.java
new file mode 100644
index 0000000..e837c66
--- /dev/null
+++ b/utils/misc/src/main/java/org/onlab/metrics/MetricsUtil.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright 2014 Open Networking Laboratory
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onlab.metrics;
+
+import com.codahale.metrics.Timer;
+import com.codahale.metrics.Timer.Context;
+
+public final class MetricsUtil {
+
+    /**
+     * Starts the Metric Timer.
+     * <p>
+     * If the given timer was null, it will silently return null.
+     * </p>
+     *
+     * @param timer timer to start
+     * @return timing context, if timer was not null
+     */
+    public static final Context startTimer(Timer timer) {
+        if (timer != null) {
+            return timer.time();
+        }
+        return null;
+    }
+
+    /**
+     * Stops the Metric Timer context.
+     * <p>
+     * If the given context was null, it will silently be ignored.
+     * </p>
+     *
+     * @param context timing context to stop, if not null.
+     */
+    public static final void stopTimer(Context context) {
+        if (context != null) {
+            context.stop();
+        }
+    }
+
+    // avoid instantiation
+    private MetricsUtil() {}
+}
