GIMPS Packet Traces

This page provides some traces of GIMPS packets. These may be of use to implementors wishing to check their packet formats against those already in use.

The packets shown here conform to version 04 of the specification, GIMPS: General Internet Messaging Protocol for Signalling . They also use the assigned numbers shown here. Although they are therefore not directly compatible with an implementation conforming to version 06, they do provide a good picture of the basic operation of the protocol, since many of the details have not changed between versions 04 and 06.

Interworking Exchange

The following files are traces of an exchange between implementations by Roke Manor and Martin Stiemerling of NEC. The exchange took place at the Minneapolis IETF. It consists of a Query message in the downstream direction, followed by a Response in the upstream direction.

Right-click here to download a pcap generated binary dump of the two messages. Note that without a GIMPS dissector these will appear as just UDP messages in Ethereal. Or click here for a text description of the messages generated by a tethereal dissector written by Roke Manor. In these capture files below Frame 1 is the Query and Frame 2 is the Response.

Below is a brief summary of the message parameters:

Note that the exchange does not include a stack proposal from either node as there is no attempt to set up a messaging association.

Also, the Query message Node Addressing Object contains a Higher Layer Info object with a protocol of 0 and length 0. This is incorrect since there is no corresponding stack proposal and the protocol id of 0 has not been assigned. The Response correctly contains no Higher Layer Info object.

Note also that the Query cookie is not correctly returned to the Querying node as the first byte is mangled by the Responding node.

Full Query/Response/Confirm Exchange

The following files are traces of a full Query/Response/Confirm exchange and messaging association setup. The exchange resulted in the setting up of a 'TCP Forward' messaging association, over which a data packet was sent. The message exchange used two instances of the Roke GIMPS implementation.

Right-click here to download a pcap generated binary dump of the two messages. Note that without a GIMPS dissector these will appear as just UDP messages in Ethereal. Or click here for a text description of the messages generated by a tethereal dissector written by Roke Manor.

Below is a brief summary of the message parameters:

*Note that this doesn't match the assigned numbers here.

Note that this exchange does not use Query or Responder cookies. The messages in the exchange are described below:

Frame 1

The Query message. As well as the GIMPS information this message also carries an NSLP Data object 4 words (32-bit) long.

Frame 2

An ICMP message from the Responding node, reporting that the GIMPS port is unreachable (which is true).

Frame 3

The Response message. This message also carries 4 words of NSLP Data.

Frame 4

The Confirm message. This message also carries 4 words of NSLP Data.

Frame 5

Another ICMP message from the Responding node, reporting that the GIMPS port is unreachable (which is true).

Frames 6-8

A TCP SYN/ACK sequence setting up the messaging association TCP connection.

Frame 9

A TCP encapsulated C-Mode GIMPS data message containing 4 words of NSLP Data, sent from the Querying node.

Frame 7

A TCP ACK from the Responding node acknowledging Frame 9