|
The GKTMP messages are used for communication between the Cisco IOS Gatekeeper and the external application. There are two types of GKTMP messages:
The general format of all GKTMP RAS messages is as follows:
Each GKTMP RAS message is either a request or a response. Requests are generated by the Cisco IOS Gatekeeper and responses are generated by the external application.
The first line of each GKTMP RAS message sent by the Cisco IOS Gatekeeper uses the format:
REQUEST RAS_message_type
The first line of each GKTMP RAS message sent by the external application uses the format:
RESPONSE RAS_message_type
Possible RAS message types are as follows:
The message line is immediately followed by the message header. Each message header contains a field name and a value, separated by a colon (field:value). Possible fields are:
Field Names | Field Values |
---|---|
Version-ID | Version of the GKTMP. For the first release of the GKTMP, the value is 1. |
From | String that identifies the originator of the message. For requests from the Cisco IOS Gatekeeper, this field contains the gatekeeper ID. For responses from the external application, this field contains the server ID. |
To | String that identifies the receiver of the message. For requests from the Cisco IOS Gatekeeper, this field contains the server ID. For responses from the external application, this field contains the ID of the gatekeeper that initiated the request. |
Content-length | Number of octets contained in the message body. If the message body is null, this field can be omitted. |
Transaction-ID | String that identifies the transaction. If this field is present in the request from the Cisco IOS Gatekeeper, it must be echoed in the response from the external application. |
Notification Only | None. No value is included after the colon. If this field name is present, it indicates to the external application no response should be sent. Request URQ must contain this field. Also, Response RRQ contains this field when that message is used to populate the external application's registration database. |
The message header is followed immediately by a blank line.
The message body follows the blank line. Each line in the message body contains a tag and a value, separated by an equal sign (tag=value). The tags are case-sensitive and denote an RAS message field. The possible tags depend on the GKTMP RAS message.
In some cases, depending on the field type, the value is preceded a value-type identifier followed by a colon (tag=type:value).
Possible field types are as follows:
This section describes the possible fields for each message. When the external application sends a response, it includes only the fields that it has altered. Unaltered fields must not be included.
Registration messages are used to control which H.323 endpoints are in the gatekeeper's zone.
There are four types of registration messages.
This message is sent from the Cisco IOS Gatekeeper to the external application when an H.323 endpoint wants to join the zone. This message can be used to populate the external application's registration database. In this case, the request is sent as a notification only and no response is expected from the external application.
For Request RRQ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
c | Transport-Address | Required | RRQ:callSignalAddress |
r | Transport-Address | Required | RRQ:rasAddress |
a | Alias-Address | Optional | RRQ:terminalAlias |
t | Endpoint-Type | Required | RRQ:terminalType |
P | Supported-Prefix | Optional | RRQ:terminalType:gateway:protocol:*:supportedPrefixes |
$ | cryptoToken | Optional | RRQ:cyptoTokens |
T | clearToken | Optional | RRQ:tokens |
If the message contains a cryptoToken field with a value of cryptoEPPwdHash, the following additional fields are included:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
a | Alias-Address | Required | CryptoH323Token:cryptoEPPwdHash:alias |
t | TimeStamp | Required | CryptoH323Token:cryptoEPPwdHash:timestamp |
h | HashedToken | Required | CryptoH323Token:cryptoEPPwdHash:token |
If the message contains a clearToken field, the following additional fields are included:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
O | OBJECT-IDENTIFIER | Required | tokens:objectIdentifier |
p | IA5string | Optional | tokens:password |
t | integer | Optional | tokens:timestamp |
s | IA5string | Optional | tokens:challengeString |
r | integer | Optional | tokens:random |
G | IA5string | Optional | tokens:generalID |
o | OBJECT-IDENTIFIER | Optional | tokens:nonStandard:objectIdentifier |
d | IA5string | Optional | tokens:nonStandard:data |
This message is sent from the external application to the Cisco IOS Gatekeeper in response to a Request RRQ message. If the external application has no interest in the Request RRQ message, it returns a Response RRQ with a null body. Otherwise, it modifies the fields as appropriate and sends the response with the updated information to the Cisco IOS Gatekeeper for further processing.
For Response RRQ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
a | Alias-Address | Optional | RRQ:terminalAlias |
p | Supported-Prefix | Optional | RRQ:terminalType:gateway:protocol:*:supportedPrefixes |
This message is sent to the Cisco IOS Gatekeeper from the external application in response to a Request RRQ. It indicates that the external application has completed the processing of the request.
For Response RCF, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
a | Alias-Address | Optional | RRQ:terminalAlias |
p | Supported-Prefix | Optional | RRQ:terminalType:gateway:protocol:*:supportedPrefixes |
g | AlternateGK | Optional | RCF:alternateGatekeeper |
If the message contains an AlternateGK field, the following additional fields are included:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
r | Transport-Address | Required | AlternateGK:rasAddress |
g | Alias-Address | Optional | AlternateGK:gatekeeperIdentifier |
n | Boolean | Required | AlternateGK:needToRegister |
p | integer | Required | AlternateGK:priority |
This message is sent to the Cisco IOS Gatekeeper from the external application in response to a Request RRQ. It indicates that the Cisco IOS Gatekeeper should reject the request for the specified reason.
For Response RRJ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
R | RRJ-Reason | Required | RRJ:rejectReason |
Possible values for the rejectReason are:
Unregistration messages are used to remove an H.323 endpoint from a gatekeeper's zone.
There is one type of unregistration message; Request URQ.
This message is sent from the Cisco IOS Gatekeeper to the external application when the H.323 endpoint wants to leave the zone or when its registration expires. This request is sent as a notification only. No response is generated by the external application.
For Request URQ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
c | Transport-Address | Required | URQ:callSignalAddress |
Admission messages are used to control which H.323 endpoints can participate in calls.
There are four types of admission messages.
This message is sent from the Cisco IOS Gatekeeper to the external application when an H.323 endpoint wants to initiate a call.
For Request ARQ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
s | Alias-Address | Required | ARQ:srcInfo |
S | Transport-Address | Optional | ARQ:srcCallSignalAddress |
d | Alias-Address | Optional | ARQ:destinationInfo |
D | Transport-Address | Optional | ARQ:destCallSignalAddress |
x | Alias-Address | Optional | ARQ:destExtraCallInfo |
b | Bandwidth | Required | ARQ:bandWidth |
A | Boolean | Required | ARQ:answerCall |
c | GUID | Optional | ARQ:callIdentifier |
C | GUID | Required | ARQ:conferenceID |
m | Boolean | Optional | ARQ:canMapAlias |
e | IA5String | Optional | ARQ:nonStandardData:redirectNumber |
E | integer | Optional | ARQ:nonStandardData:redirectReason1 |
p | integer | Optional | ARQ:nonStandardData:callingPartyNumOctet3a2 |
w | IA5string | Optional | ARQ:nonStandardData:displayIE |
i | TransportAddress | Required | arqing-endpoint identifier3 |
$ | cryptoToken | Optional | ARQ:cyptoTokens |
T | clearToken | Optional | ARQ:tokens |
1. Possible values for the redirectReason are:
2. CallingPartyNumOctet3a is from the Q.931 Setup octet 3a of calling party number.
3. When an H.323 endpoint sends an ARQ to the Cisco IOS Gatekeeper, it includes its endpointIdentifier. Because this value is local and has meaning to the Cisco IOS Gatekeeper only and not to the external application, the Cisco IOS Gatekeeper substitutes a more meaningful value of CallSignalAddress in its Request ARQ messages.
If the message contains a cryptoToken field with a value of cryptoEPPwdHash, the following additional fields are included:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
a | Alias-Address | Required | CryptoH323Token:cryptoEPPwdHash:alias |
t | TimeStamp | Required | CryptoH323Token:cryptoEPPwdHash:timestamp |
h | HashedToken | Required | CryptoH323Token:cryptoEPPwdHash:token |
If the message contains a clearToken field, the following additional fields are included:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
O | OBJECT-IDENTIFIER | Required | tokens:objectIdentifier |
p | IA5string | Optional | tokens:password |
t | integer | Optional | tokens:timestamp |
s | IA5string | Optional | tokens:challengeString |
r | integer | Optional | tokens:random |
G | IA5string | Optional | tokens:generalID |
o | OBJECT-IDENTIFIER | Optional | tokens:nonStandard:objectIdentifier |
d | IA5string | Optional | tokens:nonStandard:data |
This message is sent from the external application to the Cisco IOS Gatekeeper in response to a Request ARQ message. If the external application has no interest in the Request ARQ message, it returns a Response ARQ with a null body. Otherwise, it modifies the fields as appropriate and sends the response with the updated information to the Cisco IOS Gatekeeper for further processing.
For Response ARQ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
d | Alias-Address | Optional | ARQ:destinationInfo |
D | Transport-Address | Optional | ARQ:destCallSignalAddress |
x | Alias-Address | Optional | ARQ:destExtraCallInfo |
b | Bandwidth | Optional | ARQ:bandWidth |
e | IA5String | Optional | ARQ:nonStandardData:redirectNumber |
E | integer | Optional | ARQ:nonStandardData:redirectReason |
w | IA5string | Optional | ARQ:nonStandardData:displayIE |
The external application has the option of reducing the bandwidth.
This message is sent to the Cisco IOS Gatekeeper from the external application in response to a Request ARQ. It indicates that the external application has completed the processing of the request.
For Response ACF, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
d | Alias-Address | Optional | ACF:destinationInfo |
D | Transport-Address | Required | ACF:destCallSignalAddress |
x | Alias-Address | Optional | ACF:destExtraCallInfo |
X | Alias-Address | Optional | ACF:remoteExtensionAddress |
b | Bandwidth | Optional | ARQ:bandWidth |
t | Endpoint-type | Optional | ACF:destinationType |
A | AlternateEndpoint | Optional | ACF:alternateEndpoints |
If the message contains an AlternateEndpoint field, the following additional fields are included:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
c | Transport-Address | Required | alternateEndpoints:callSignalAddress |
T | clearToken | Optional | alternateEndpoints:tokens |
If the AlternateEndpoint field contains a clearToken field, the following additional fields are included:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
O | OBJECT-IDENTIFIER | Required | tokens:objectIdentifier |
p | IA5string | Optional | tokens:password |
t | integer | Optional | tokens:timestamp |
s | IA5string | Optional | tokens:challengeString |
r | integer | Optional | tokens:random |
G | IA5string | Optional | tokens:generalID |
o | OBJECT-IDENTIFIER | Optional | tokens:nonStandard:objectIdentifier |
d | IA5string | Optional | tokens:nonStandard:data |
This message is sent to the Cisco IOS Gatekeeper from the external application in response to a Request ARQ. It indicates that the Cisco IOS Gatekeeper should reject the request for the specified reason.
For Response ARJ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
R | ARJ-Reason | Required | ARJ:rejectReason |
Possible values for rejectReason are:
Location messages are used by gatekeepers to communicate with one another to process interzone calls.
There are six types of location messages.
This message is sent from the Cisco IOS Gatekeeper to the external application when the Cisco IOS Gatekeeper has received an interzone location request.
For Request LRQ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
s | Alias-Address | Optional | LRQ:srcInfo |
d | Alias-Address | Required | LRQ:destinationInfo |
e | IA5String | Optional | LRQ:nonStandardData:redirectNumber |
E | integer | Optional | LRQ:nonStandardData:redirectReason1 |
p | integer | Optional | LRQ:nonStandardData:callingPartyNumOctet3a2 |
w | IA5String | Optional | LRQ:nonStandardData:displayIE |
c | IA5String | Optional | LRQ:nonStandardData:callingPartyNum |
1. Possible values for the redirectReason are:
2. CallingPartyNumOctet3a is from the Q.931 Setup octet 3a of calling party number.
This message is sent from the external application to the Cisco IOS Gatekeeper in response to a Request LRQ message. If the external application has no interest in the Request LRQ message, it returns a Response LRQ with a null body. Otherwise, it modifies the fields as appropriate and sends the response with the updated information to the Cisco IOS Gatekeeper for further processing.
For Response LRQ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
d | Alias-Address | Optional | LRQ:destinationInfo |
This message is sent from the Cisco IOS Gatekeeper to the external application when the Cisco IOS Gatekeeper has received an LCF from remote Cisco IOS Gatekeeper. This gives the external application an opportunity to accept (Response LCF), modify (Response LCF), or reject (Response LRJ) the information contained in the LCF.
For Request LCF, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
s | Alias-Address | Optional | LRQ:srcInfo |
e | IA5String | Optional | LRQ:nonStandardData:redirectNumber |
E | integer | Optional | LRQ:nonStandardData:redirectReason |
p | integer | Optional | LRQ:nonStandardData:callingPartyNumOctet3a |
w | IA5String | Optional | LRQ:nonStandardData:displayIE |
c | IA5String | Optional | LRQ:nonStandardData:callingPartyNum |
d | Alias-Address | Required | LRQ/LCF:destinationInfo |
D | Transport-Address | Required | LCF:callSignalAddress |
r | Transport-Address | Required | LCF:rasAddress |
x | Alias-Address | Optional | LCF:destExtraCallInfo |
X | Alias-Address | Optional | LCF:remoteExtensionAddress |
t | Endpoint-Type | Optional | LCF:destinationType |
The destinationInfo from the LCF is used if one is available. Otherwise, the destinationInfo from the LRQ is used.
This message is sent from the external application to the Cisco IOS Gatekeeper in response to a Request LRQ. It indicates that the external application has completed the processing of the request.
This message can also be sent to the Cisco IOS Gatekeeper from the external application in response to a Request LCF or a Request LRJ. In the case of a Request LCF, the response can contain:
In the case of a Request LRJ, the response contains an alternate destination.
For Response LCF, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
d | Alias-Address | Optional | LCF:destinationInfo |
D | Transport-Address | Required | LCF:destCallSignalAddress |
r | Transport-Address | Required | LCF:rasAddress |
x | Alias-Address | Optional | LCF:destExtraCallInfo |
X | Alias-Address | Optional | LCF:remoteExtensionAddress |
t | Endpoint-Type | Optional | LCF:destinationType |
This message is sent from the Cisco IOS Gatekeeper to the external application when the Cisco IOS Gatekeeper has received an LRJ from a remote Cisco IOS Gatekeeper. This gives the Cisco IOS Gatekeeper the opportunity to accept the rejection (Response LRJ) or propose an alternative destination (Response LCF).
For Request LRJ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
s | Alias-Address | Optional | LRQ:srcInfo |
d | Alias-Address | Required | LRQ:destinationInfo |
e | IA5String | Optional | LRQ:nonStandardData:redirectNumber |
E | integer | Optional | LRQ:nonStandardData:redirectReason |
p | integer | Optional | LRQ:nonStandardData:callingPartyNumOctet3a |
w | IA5String | Optional | LRQ:nonStandardData:displayIE |
c | IA5String | Optional | LRQ:nonStandardData:callingPartyNum |
R | LRJ-reason | Required | LRJ:rejectReason |
This message is sent to the Cisco IOS Gatekeeper from the external application in response to a Request LRQ. It indicates that the Cisco IOS Gatekeeper should reject the request for the specified reason.
This message can also be sent to the Cisco IOS Gatekeeper from the external application in response to a Request LCF or a Request LRJ. In the case of a Request LCF, this response rejects the information provided in the LCF for the specified reason. In the case of a Request LRJ, this response acknowledges the rejection. The reason is optional when the Response LRJ is sent due to a Request LRJ.
For Response LRJ, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
R | LRJ-Reason | Required (LRQ, LCF) Optional (LRJ) | LRJ:rejectReason |
Possible values for rejectReason are:
There is one other type of message, the Response RIP.
This message is sent from the external application to the Cisco IOS Gatekeeper when the external application cannot immediately process the request. This message indicates that the request is in progress (RIP) and that additional time is needed. When the Cisco IOS Gatekeeper receives this message, it forwards a request to the H.323 endpoint indicating that an extension of the timeout is required. The external application can send more that one Response RIP as is needed to process the request.
For Response RIP, the possible tags are:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
d | Integer | Required | RIP:delay |
Possible values of the delay are 1 through 65535 milliseconds.
Trigger registration messages are used by external applications to inform the Cisco IOS Gatekeeper which RAS messages are interesting to the external application. Interesting RAS messages trip a trigger in the Cisco IOS Gatekeeper and causes the Cisco IOS Gatekeeper to send a GKTMP RAS message to the external application.
As with the GKTMP RAS messages, trigger registration messages have the following format:
There are two types of trigger registration messages: register and unregister.
The first line of each trigger registration request/response message uses the format:
REGISTER RAS_message_type
The first line of each trigger unregistration request/response message uses the format:
UNREGISTER RAS_message_type
Possible RAS message types are as follows:
The message line is immediately followed by the message header. Each message header contains a field name and a value, separated by a colon (field:value). Possible fields are:
Field Names | Field Values |
---|---|
Version-ID | Version of the GKTMP. For the first release of the GKTMP, the value is 1. |
From | String that identifies the originator of the message. For trigger registration requests from the external application, this field contains the server ID. For trigger registration responses from the Cisco IOS Gatekeeper, this field contains the gatekeeper ID. This field is required for trigger registration and unregistration requests and responses. |
To | String that identifies the receiver of the message. For trigger registration requests from the external application, this field contains the gatekeeper ID. For trigger registration responses from the Cisco IOS Gatekeeper, this field contains the ID of the external application that initiated the request. This field is required for trigger registration and unregistration requests and responses. |
Priority | A number indicating the priority of this trigger in relation to other triggers for the same RAS message type. Possible values are 1 through 20. 1 is the highest priority. If the Cisco IOS Gatekeeper has a registration for a RAS message type and receives another registration for the same RAS message from the same external application with the same priority, the Cisco IOS Gatekeeper will use the new registration and discard the previous one. If the Cisco IOS Gatekeeper has a registration for a RAS message type and receives another registration with the same priority from a different external application, the Cisco IOS Gatekeeper will discard the new registration. This field is required for trigger registration and unregistration requests and is echoed in trigger registration and unregistration responses. |
Content-length | The number of octets contained in the message body. If the message body is null, this field is omitted. This field is used only in trigger registration requests. |
Notification-only | None. No value is included after the colon. If this field name is present, it indicates to the Cisco IOS Gatekeeper that it should forward requests for the specified RAS messages as a notification only. This field is used only in trigger registration requests. |
Status | String that indicates the response code from the Cisco IOS Gatekeeper. This field is used only in trigger registration and unregistration responses. Possible response codes for unregistration requests are:
Possible response codes for unregistration responses are:
|
The message header is followed immediately by a blank line.
The message body follows the blank line. Only trigger registration requests contain a message body. Trigger registration responses, unregistration requests, and unregistration responses end after the blank line.
The message body in a trigger registration request can be used to narrow the circumstances under which the Cisco IOS Gatekeeper sends a REQUEST xxx to the external application. In this case, the external application includes tags and values in the message body that if matched will trigger the Cisco IOS Gatekeeper to generate a REQUEST xxx.
The tags that can be included vary depending on the RAS message type and are a subset of the types that can be included in GKTMP RAS messages.
For the field type of Alias-Address, trailing wildcards can be used with E.164 addresses. An asterisk can be used to indicate a string of characters (for example, 1800*). A period can be used to indicate a single character (for example, 1800.......).
For Register RRQ, the following tags can be used to filter messages:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
t | Endpoint-Type | Optional | RRQ:terminalType |
p | Supported-Prefix | Optional | RRQ:terminalType:gateway:protocol:*:supportedPrefixes |
For Register URQ, the following tags can be used to filter messages:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
t | Endpoint-Type | Optional | RRQ:terminalType |
p | Supported-Prefix | Optional | RRQ:terminalType:gateway:protocol:*:supportedPrefixes |
For Register ARQ, the following tags can be used to filter messages:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
d | Alias-Address | Optional | ARQ:destinationInfo |
E | integer | Optional | ARQ:nonStandardData:redirectReason |
For Register LRQ, the following tags can be used to filter messages:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
d | Alias-Address | Optional | LRQ:destinationInfo |
E | integer | Optional | LRQ:nonStandardData:redirectReason |
For Register LCF, the following tags can be used to filter messages:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
d | Alias-Address | Optional | LRQ/LCF:destinationInfo |
X | Alias-Address | Optional | LCF:remoteExtensionAddress |
For Register LRJ, the following tags can be used to filter messages:
Tag | Field Type | Required or Optional | Corresponding RAS Message Field |
---|---|---|---|
d | Alias-Address | Optional | LRQ:destinationInfo |
Posted: Fri Sep 27 04:34:33 PDT 2002
All contents are Copyright © 1992--2002 Cisco Systems, Inc. All rights reserved.
Important Notices and Privacy Statement.