Перед тем, как описывать сообщения протокола GIOP, необходимо определить понятие клиента и сервера. Под клиентом далее понимается агент, который открыл соединение и инициировал запрос. Сервер - это агент, который принял соединение и этот запрос получил. Протокол GIOP определяет семь сообщений, список которых приведен далее в таблице вместе с указанием того, какая сторона какие сообщения может посылать.
| Значение, соответствующее типу сообщения | Тип сообщения | Кто может посылать сообщение | |
| Клиент | Сервер | ||
| 0 | Request | Да | - |
| 1 | Reply | - | Да |
| 2 | CancelRequest | Да | - |
| 3 | LocateRequest | Да | - |
| 4 | LocateReply | - | Да |
| 5 | CloseConnection | - | Да |
| 6 | MessageError | Да | Да |
Заголовок сообщения однозначно определяет его тип. Заголовок определен таким образом, чтобы не зависеть от порядка байт в представлении базовых типов данных. Элементами заголовка являются:
и minor, идентифицирующих старший и младший номера версии используемого протокола. Текущая спецификация определяет версию 1.0. Приложение должно поддерживать взаимодействие в рамках протокола только если номер, содержащийся в поле major равен, а в поле minor - больше или равен номерам версии, используемой при разработке приложения.
содержит значение от 0 до 6, определяющее тип сообщения.
содержит длину оставшейся части сообщения (0 если больше ничего нет).
За общим заголовком каждого сообщения в зависимости от его типа может идти заголовок и тело конкретного сообщения. Структура каждого заголовка специфична для каждого типа сообщения и представляет особенного интереса для рассмотрения.