diff --git a/common/utils/itti/itti_types.h b/common/utils/itti/itti_types.h
new file mode 100644
index 0000000000000000000000000000000000000000..4f91b354c91237fca8e5fc46b98c88498e57892d
--- /dev/null
+++ b/common/utils/itti/itti_types.h
@@ -0,0 +1,78 @@
+/*******************************************************************************
+
+  Eurecom OpenAirInterface
+  Copyright(c) 1999 - 2013 Eurecom
+
+  This program is free software; you can redistribute it and/or modify it
+  under the terms and conditions of the GNU General Public License,
+  version 2, as published by the Free Software Foundation.
+
+  This program is distributed in the hope it will be useful, but WITHOUT
+  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+  more details.
+
+  You should have received a copy of the GNU General Public License along with
+  this program; if not, write to the Free Software Foundation, Inc.,
+  51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
+
+  The full GNU General Public License is included in this distribution in
+  the file called "COPYING".
+
+  Contact Information
+  Openair Admin: openair_admin@eurecom.fr
+  Openair Tech : openair_tech@eurecom.fr
+  Forums       : http://forums.eurecom.fr/openairinterface
+  Address      : EURECOM, Campus SophiaTech, 450 Route des Chappes
+                 06410 Biot FRANCE
+
+*******************************************************************************/
+
+/** @brief Intertask Interface common types
+ * Contains type definitions used for generating and parsing ITTI messages.
+ * @author Laurent Winckel <laurent.winckel@eurecom.fr>
+ */
+
+#ifndef _ITTI_TYPES_H_
+#define _ITTI_TYPES_H_
+
+#define CHARS_TO_UINT32(c1, c2, c3, c4) (((c4) << 24) | ((c3) << 16) | ((c2) << 8) | (c1))
+
+/* Intertask message types */
+enum itti_message_types_e
+{
+    ITTI_DUMP_XML_DEFINITION =        CHARS_TO_UINT32 ('\n', 'I', 'x', 'd'),
+    ITTI_DUMP_XML_DEFINITION_END =    CHARS_TO_UINT32 ('i', 'X', 'D', '\n'),
+
+    ITTI_DUMP_MESSAGE_TYPE =          CHARS_TO_UINT32 ('\n', 'I', 'm', 's'),
+    ITTI_DUMP_MESSAGE_TYPE_END =      CHARS_TO_UINT32 ('i', 'M', 'S', '\n'),
+
+    ITTI_STATISTIC_MESSAGE_TYPE =     CHARS_TO_UINT32 ('\n', 'I', 's', 't'),
+    ITTI_STATISTIC_MESSAGE_TYPE_END = CHARS_TO_UINT32 ('i', 'S', 'T', '\n'),
+
+    /* This signal is not meant to be used by remote analyzer */
+    ITTI_DUMP_EXIT_SIGNAL =           CHARS_TO_UINT32 ('e', 'X', 'I', 'T'),
+};
+
+typedef uint32_t itti_message_types_t;
+
+/* Message header is the common part that should never change between
+ * remote process and this one.
+ */
+typedef struct {
+    /* The size of this structure */
+    uint32_t              message_size;
+    itti_message_types_t  message_type;
+} itti_socket_header_t;
+
+typedef struct {
+    uint32_t message_number;
+} itti_signal_header_t;
+
+
+#define INSTANCE_DEFAULT    (UINT16_MAX - 1)
+#define INSTANCE_ALL        (UINT16_MAX)
+
+typedef uint16_t instance_t;
+
+#endif