IP电话、IP传真业务总体技术要求(2)

时间:2008-10-18 来源: 作者: 点击:
14系统安全性 IP电话的安全性包括以下4个方面: l)网络安全; 2)身份认证及接人控制; 3)音频数据流的完整性保护; 4)音频数据流的加密。 14.1网络安全 对网管中心、计费/认证中心、结算中心、网守和重要数据
  
14系统安全性
    IP电话的安全性包括以下4个方面:
    l)网络安全;
    2)身份认证及接人控制;
    3)音频数据流的完整性保护;
    4)音频数据流的加密。
14.1网络安全
    对网管中心、计费/认证中心、结算中心、网守和重要数据库设置防火墙保护。网络的重要设备要有冗余备份。
14.2身份认证和接入控制的安全
    二级网守应支持基于RAS协议的用户认证方式,当用户漫游认证时,二级网守和一级网守的通信可采用RADIUS协议。
    网关和网守之间的身份认证利用 ARQ/ACF信息:
    网关向网守发送ARQ信息,网关需要填充ARQ信息中的安全域。收到ARQ信息,网守根据以下的规则验证认证因子:
    l)时戳的有效性;
    2)序列号的有效性;
    3)网守计算的认证因子与收到的认证因子是否匹配。
    如果以上条件满足,则网守向端点发送ACF信息,否则发送ARJ。
14.3 音频数据流的加密
14.3.1 方法一
    1)采用"TLS/IPSEC"机制建立安全的呼叫信令信道(H.225)。
    2)在此安全信道中,根据H.225的呼叫建立信息(Setup),协商建立H.245控制信道的安全机制(加密算法、密银)。
    3)利用H.225呼叫信令信道中,协商的安全机制建立H.245安全控制信道。
    4)在H245能力集合中,把加密看作一种编码方式,增加加密编码的能力。通过能力协商得到  媒体流信道的安全信息。
    5)加密媒体流,不对RTP头加密。
14.3.2方法二
    l)利用" TLS/IPSEC"机制在呼叫信令信息交换之前,建立安全的呼叫信令信道。
    对利用" TLS/IPSEC"机制打开安全的逻辑信道,在此逻辑信道中得到共享的会话密钥和加密算法。
    3)加密媒体流,不对RTP头加密。
    在加密方法一中,对H.225和H.245的信息中都做了一定的补充,增加了安全功能。而在加密 方法二中,利用现有的密码机制[TLS/IPSEC]来实现,对现有的H.225和H.245中的信息不做改动。
14.4访问记录
    系统必须完整地记录用户注册时间、重要操作、访问信息条目。
15 IP电话/传真的性能要求
15.1 时延要求
15.1.1 呼叫建立时间
--呼叫建立时间包括:
    --呼叫信令穿过IP网络的时间;
    --与GK进行呼叫建立的时间;
    --认证、目录服务等呼叫处理时间;
    --GW间呼叫建立时间。
    呼叫建立时间的计算方法分两种情况。
    情况1:当认证与地址解析过程是分两步时,即认证通过后再进行地址解析时,呼叫建立时间等于从网关发送包含认证信息的 ARQ开始,至网关收到通过认证的 ACF为止的间隔时间,加上从网关发送包含地址解析的 ARQ开始,至主叫用户收到 ALERT为止的间隔时间。
    情况2:当认证与地址解析过程同时进行时,呼叫建立时间等于网关发送包含认证和地址解析信息的 ARQ至主叫用户收到 ALERT为止的间隔时间。
    本标准要求呼叫时间在5s以内(不包括PSTN段的呼叫建立时间)。
15.1.2 语音传输时延
    造成语音传输时延的因素有:
    1)发端PSTN网络传输时延;
    2)发端IP网关语音编码时延;
    3)IP网络传输时延;
    4)收端IP网关语音解码时延;
    5)收端PSTN网络传输时延;
    6)为防止时延抖动设定缓冲区引起的时延。
其中,IP网络传输是造成时延的最主要因素,PSTN网络的时延可以忽略。因此可把时延分为IP网络传输时延和网关处理时延两部分。
    IP网络传输时延主要来自IP包所经过的各路由器的处理时延、包排队时间。这与经过的路由器个数和路由器的忙闲程度有关(在Internet中,经过的路由器可以有2~30个甚至更多),因与是可变的。这于IP电话的承载网络设计也有很大关系。
    网关处理时延主要取决于网关所采用的语音编解码方法,以及为防止抖动设置的缓冲区大小。 一般目前两侧网关处理时延都在 120ms左右。
    ITU-T G.114建议提出对于语音通信,单向的时延门限为400ms。因此本标准要求端到端的时延必须在400ms以内。其中当采用G.723算法时,IP网络传输时延在200ms以内,两侧网关处理时延之和在200ms以内;当采用G.729算法时,IP网络传输时延在250ms以内,两侧网关处理时延之和在150ms以内。
15.1.3 时延抖动
    本标准要求网络时延抖动必须在80ms以内。
15.2 丢包率要求
    造成网络丢包的因素有以下两种:
    --网络传输中丢包;
    --网络拥塞时网关设备主动丢包。
    对于IP包的丢失,典型的语音编码可以允许包丢失率为3%,采取一些特殊措施后,包丢失率到8%~10%尚可容忍。
    测量网络丢包率需要分忙时和闲时两种情况进行。在我国,一般以下午3:00和上午7:00作为忙时和闲时标准。
    本标准要求丢包率<10%。
15.3 IP电话的语音质量要求
    影响话路话音的因素有:
    --同时通过网关的数据流量;
    --采样和纠错技术;
    --语音的延时;
    --IP包在网络上的丢失:
    --语音数据包抖动;
    --传统问题:话音输入输出设备质量、电平、噪声、回损和 ECHO PATH延迟(产生于 PSTN段)。
    目前一般采用平均意见得分法(MOS)衡量话音质量,评定者以4~0的五级评分标准对语音质量进行评定。五级评分标推见表82。
    本标准要求网络丢包率<5%时的话音质量在3.5级以上,网络丢包率在5%~10%时的语音质量在3级以上。
15.4 IP传真对时延和丢包的要求.
附录A
(标准的附录)
H.323消息的ASN.1语言的描述
H323-MESSAGES DEFINlTIONS AUTOMATIC TAGS ::=
BEGIN
IMPIRTS
SIGNED{ },
ENCRYPTED{ },
HASHED{ },
ChallengeString,
TimeStamP,
RandomVal,
Password,
EncodedPwdCertToken,
ClearToken,
CryptoToken,
AuthenticationMechanism
FROM H235-SECURITY-MESSAGES
Capability,
MultiplexCapability,
OpenLogicalChannel
FROM MULTIMEDIA- SYSTEM-CONTROL;
H323-UserInformation f::= SEQUENCE
{
h323-uu-pduH323-UU-PDU,
user-data SEQUENCE
{
protocol--discriminator INTEGER (0..255),
user-information OCTET STRlNG (SIZE(l..l3l)),
} OPTIONAL,
}
H323-UU-PDU::= SEQUENCE
{
h323-message-body CHOICE
setup Setup-UUIE,
callProceeding CallProceeding-UUIE,
connect Connect-UUIE,
alerting Alerting-UUIE,
userInformation UI-UUIE,
releaseComplete ReleaseCompl ete -UUIE,
facility Facility-UUIE,
…,
progress Progress-UUIE,
empty NULL
},
nonStandardData NonStandardParameter OPTIONAL,
h450lSuPPlementmpServiceSEQUENCE OF OCTET STRING OPTIONAL
}
Alerting-UUIE ::= SEQUENCE
{
protocolIdentifier ProtocolIdentifief,
destinationInfo EndPointrype,
h245Address TransportAddress OPTIONAL,
callIdentifier CallIdentifier,
h245SecurityMode H245Security OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTONAL,
fastStart SEQUENCE OF OpenLogicalChannel OPTONAL,
fastCaP FastCaP OPTONAL
}
CallProceeding-UUIE :::= SEQUENCE
{
protocolIdentifier ProtocolIdentifief,
destinationInfo EndpointType,
h245Address TransportAddress OPTIONAL,
callIdentifier CallIdentifier,
h245SecurityMode H245Security OPTIONAL,
tokens SEQUENCE OF ClearToken OPTONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
fastStart SEQUENCE OF OPenLogicalChannel OPTONAL,
fastCap FastCap OPTIONAL
Connect--UUIE ::= SEQUENCE
{
protocolIdentifier ProtocolIdentifief,
h245Address TransportAddress OPTIONAL,
deshnationInfo EndPointType,
conferenceID ConferenceIdentiflef,
callIdentifier CallIdentifier,
h245SecurityMode H245Security OPTIONAL,
tokens SEQUENCE OF ClearWn OPTIONAL,
cryptoTokens SEQUENCE OF CryptOH323TOken OPTIONAL,
fastStari SEQUENCE OF OPenLogicalChannel OPTIONAL,
fastCap FastCaP OPTIONAL
}
UI-UUIE:.=SEQUENCE
{
protocolIdentifier ProtocolIdentifier,
}
ReleaseComPlete-UUIE::= SEQUENCE
{
protocolIdentifier Protocolldentifief,
reason ReleaseCompleteReason OPTIONAL,
callIdentifier CallIdentifier
}
ReleaseComPleteReason ::= CHOICE
{
noBandwidth NULL,
gatekeeperResources NULL,
unreachaleDestinati on NULL,
destinationRejection NULL,
invalidRevision NULL,
noPendssion NULL,
unreachableGatekeeper NULL,
gatewayResources NULL,
badFormatAddress NULL,
adaPtiveBusy NULL,
inConf. NULL,
undefinedReason NULL,
facilityCallDeflection NULL,
securityDenied NULL,
calledPartyNotRegistered NULL,
callerNotRegistered NULL
}
' Setup--UUIE ::== SEQUENCE
{
protocolIdentifier ProtocolIdentifief,
h245Address TransportAddress OPTIONAL,
sourceAddress SEQUENCE OF AliasAddress OPTIONAL, --- (必备)
sourceInfo EndpointType,
destinationAddress SEQUENCE OF AliasAddress OPTIONAL,-- (必备)
destCallSignalAddress TransportAddress OPTIONAL,
destExtraCallInfo SEQUENCE OF AliasAddress OPTIONAL,
destExtraCRV SEQUENCE OF CallReferenceVaue OPTIONAL,
activeMC BOOLEAN,
conferenceID ConferenceIdentifier,
conferenceGoal CHOICE
{
create NULL,
join NULL,
invite NULL,
caPability-negotiation NULL,
callIndependentSupplementaryService NULL
},
callServices QseriesOptions OPTIONAL,
callType CallType,
sourceCallSignalAddress Tran sportAddress OPTIONAL,
re moteExtensionAddress AliasAddress OPTIONAL,
callIdentifier CallIdentifier,
h245SecurityCapability SEQUENCE OF H245Security OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptOH323Token OPTIONAL,
fastStart SEQUENCE OF OpenLogicalChannel OPTIONAL,
fastCaP FastCap OPTIONAL,
canOveriaPSend BOOLEAN
Facility-UUIE ::= SEQUENCE
{
protocolIdentifier Protocolldentifler,
altemativeAddress TransportAddress OPTIONAL,
altemativeAliasAddress SEQUENCE OF AliasAddress OPTIONAL,
conferenceID ConferenceIdentifier OPTIONAL,
reason FacilityReason,
callIdentifier CallIdentifier,
destExtraCaIlInfo SEQUENCE OF AliasAddress OPTIONAL,
remoteExtensionAddress Alias Address OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
conferences SEQUENCE OF ConferenceList OPTIONAL
}
ConferenceList ::= SEQUENCE
{
conferenceID ConferenceIdentifier OPTIONAL,
conferenceAlias AliasAddress OPTIONAL,
nonStandardData NonStandardParameter OPTIONAL,
}
FacilityReason: := CHOICE
{
routeCallToGatekeeper NULL, ---- call must use gatekeeper model
--- gatekeeper is altemativeAddress
callForwarded NULL,
routeCallToMC NULL,
undefinedReason NULL,
conferenceListChoice NULL
}
Progress-UUIE::= SEQUENCE
{
protocolIdentifier ProtocolIdentifief,
destinationInfO EndPointfype,
h245Address TransportAddress OPTIONAL,
callIdentifier CallIdentifier,
h245SecurityMode H245Security OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
fastStart SEQUENCE OF OpenLogicalChannel OPTIONAL,
fastCaP FastCaP OPTIONAL
}
Transpondddress::= CHOICE
{
ipAddress SEQUENCE
{
ip OCTET STRING (SIzs(4)),
port INTEGER(0..65535)
},
ipSourceRoute SEQUENCE
{
ip OCTET STRING (SlzE(4)),
port INTEGER(0..65535),
route SEQUENCE OF OCTET STRING(SIZE(4)),
routing CHOICE
{
strictNULL,
loose NULL,
},
},
ipxAddress SEQUENCE
{
node OCTET STINGG (SIZE(6)),
netnum OCwr STRING (SIZE(4)),
port OCTET STRING (SlzE(2))
},
ip6Address SEQUENCE
{
ip OCTET STING (SIzs(16)),
port INTEGER(0..65535),
},
netBios OCTET STRING (SIZE(l6)),
nsaP OCTET STRING (SIZE(l..20)),
nonStandardAddress NonStandardParametef,
}
EndpointType::= SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
vendor VendorIdentifier OPTONAL,
gatekeeper GatekeeperInfo OPTIONAL,
gateway GatewayInfO OPTIONAL,
mcu McuInfo OPTIONAL, -- mc must be set as well
terminaI TerminalInfo OPTIONAL,
mc BOOLEAN, -- shall not be set by itself
undefinedNode BOOLEAN,
}
GatewayInfo:;= SEQUENCE
{
protocol SEQUENCE OF SupportedProtocols OPTIONAL,
nonStandardData NonStandardParameter OPTIONAL,
}
SupportedProtOcols ::= CHOICE
{
nonStandardData NonStandardParametef,
h3l0 H3l0Caps,
h320 H320Caps,
h32l H32lCaps,
h322 H322Caps,
h323 H323Caps,
h324 H324Caps,
voice VoiceCaps,
tl20-only Tl20OnlyCaps,
nonStandardProtocol NonStandardProtocol
}'
H3l0Caps::= SEQUENCE
{
nonStandardData NonStandardParamter OPTONAL,
dataRatesSupported SEQUENCE OF DataRat OPTIONAL,
supportedPrefixes SEQUENCE OF SupportedPrflx
}
H320Caps::= SEQUENCE
{
nonStandardData NonStandardParameter OrnONAL,
dataRatesSupported SEQUENCE OF DataRate OPTIONAL,
supportedPrefixes SEQUENCE OF SupportedPrefix
}
H321Caps::= SEQUANCE
{
nonStandardData NonStandardParameter OPTONAL,
dataRatesSupPOrted SEQUENCE OF DataRate OPTIONAL,
supportedPrefixes SEQUENCE OF SupportedPrefix
}
H322Caps::= SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
dataRatesSupported SEQUENCE OF DataRate OPTIONAL,
supportedPrefixes SEQUENCE OF SupportedPrefix
}
H323Caps::= SEQUENCE
{
nonStandardData NonStandardParamter OPTIONAL,
dataRatesSupported SEQUENCE OF DataRate OrvIONAL,
supportedPrefixes SEQUENCE OF SupportedPrefix
}
H324Cavs ::= SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
dataRatesSupported SEQUENCE OF Datallate OPTIONAL,
supportedPrefixes SEQUENCE OF SupportedPrefix
}
VoiceCaPs::= SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
dataRatesSupported SEQUENCE OF DataRate OPTIONAL,
supporteMfixes SEQUENCE OF SupportedPrefix
}
H323caps::= SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
dataRatesSupported SEQUENCE OF DataRate OPTIONAL,
supportedPrefixes SEQUENCE OF SupportedPrefix
}
NonStandardProtocol::= SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
dataRatesSupported SEQUENCE OF DataRat OPTIONAL,
supportedPrefixes SEQUENCE OF SupportedPrefix,
}
McuInfo::=SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
}
TerminalInfo::=SEQUENCE
{
nonStandardData NonStandardParamter OPTIONAL,
}
GatekeeperInfo::=SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
}
vendorIdentifier::= SEQUENCE
{
vendor H221NonStandard,
productId OCTET STRING (SIZE(l ..256)) OPTIONAL, -- pervendor
versionId OCTET STRING (SIZE(l ..256)) OPTIONAL, -- perproduct
}
H22lNonStandard ::= SEQUENCE
{ t35CountryCode INTEGER(0..255), -- country, as per T.35
t35Extension INTEGER(0..255), -- assigned nationally
manufacturerCode INTEGER(0..65535), -- assigned nationally
}
NonStandardParameter::= SEQUENCE
{
nonStandardIdentifier NonStandardIdentifier,
data OCTET STRING
}
NonStandardIdentifier::=CHOICE
{
object OBJECT IDENTIFIER,
h22lNonStandard H22lNonStandard,
}
AliasAddress ::= CHOICE
{
el64 IA5String (SIZE (l..l28)) (FROM ("0l23456789#*,,,)),
h323-ID BMPString (SIZE (1..256)),
url-ID IA5String (SIZE(l..512)),
transportID TransportAddress,
email-ID IA5String (SIZE(l..5l2)),
partyNumber PartyNumber
}
PartyNumber ::= CHOICE
{
publicNumber PublicPartyNumber,
-- the numbering plan is accordng to
-- Reconunendations E. l63 and E. l64.
dataPartyNumber NumberDigits,
-- not used, value reserved.
telexPartyNumber NumberDigits,
-- not used, value reserved.
privateNumber PrivatePartyNumber
nationalStandardPartyNumber Numbetoigits,
--- not used, value reserved.
}
PublicPwtyNumber::= SEQUENCE
{
publicTypeOfNumber PublicTypeOfNumber,
publicNumberDigits Numbetoigits
}
PrivatePartyNumber ff= SEQUENCE
{
PrivateTypeOfNeumber PrivateTypeOfNumber,
privateNumberDigits NumberDigits
}
NumberDigits::= IA5String (SIZE (l .. 128)) (FROM ("0l23456789#*,,,))
PublicTypeOfNumber tt= CHOICE
{
unknown NULL,
--- if used number digits carry Prefix indicating type
-- of number according to national recommendations.
InternationalNumber NULL,
nationalNumber NULL,
networkSpecificNumber NULL,
--- not used, value reserved
subscriberNumber NULL,
abbreviatedNumber NULL,
---- valid only for called paty number at the outgoing
-- access, network substitutes aPpropriate numbeL
}
PrivaterypeOfNumber::= CHOICE
{
unknown NULL,
level2RegionalNumber NULL,
level1RegionalNumber NULL,
pISNSpecificNumber NULL,
localNumber NULL,
abbreviatedNumber NULL,
}
EndPoint::= SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
aliasAddress SEQUENCE OF AliasAddress OPTIONAL,
callSignalAddress SEQUENCE OF TransportAddress OPTIONAL,
rasAddrss SEQUENCE OF TransportAddress OPTIONAL,
endpoinnype Endpoinrwpe OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
priority INTEGER(0..l27) OPTIONAL,
destinationInfo SEQUENCE OF AliasAddress OPTIONAL,
destExtraCallInfo SEQUENCE OF AliasAddress OPTIONAL,
}
AltemateGK::= SEQUENCE
{
rasAddress TransportAddress,
gatekeeperIdentifier GatekeeperIdentifier OPTIONAL,
needToRegister BOOLEAN,
priority INTEGER (0..l27),
}
SecurityServiceMode::= CHOICE
{
nonStandard NonStandardParametef,
none NULL,
default NULL,
... -- can be extended with other specific modes
}
SecurityCaPabilities::= SEQUENCE
{
nonStandard NonStandardParameter OPTIONAL,
encryption SecurityServiceMode,
authenticaton SecurityServiceMode,
integrity SecurityServiceMode,
}
H245Security::= CHOICE
{
nonStandard NonStandardParameter,
noSecurity NULL,
tls SecurityCaPabilities,
ipsec SecurityCaPabilities,
}
FastCaP::= SEQUENCE
{
caps SEQUENCE OF CaPability OPTIONAL,
-- Capability structure from H.245
multiplexCaP MultiplexCaPability OPTIONAL,
-- MultiplexCaPability strUctUre from H.245
}
QseriesOptions::= SEQUENCE
{
q932Full BOOLEAN, -- if true, indicates full support for Q.932
q95lFull BOOLEAN, -- if true, indicates full support for Q.95l
q952Full BOOLM, -- if true, indicates full support fOr Q.952
q953Full BOOLEAN, --- if true, indicates full support for Q.953
q955Full BOOLEAN, -- if true, indicates full support for Q.955
q956Full BOOLEAN, -- if true, indicates full support for Q.956
q957Full BOOLEAN, -- if true, indicates full support for Q.957
q954Info Q954Details,
}
Q954Details ::= SEQUENCE
{
conferenceCalling BOOLEAN,
threePartyService BOOLEAN,
}
GloballyUniqueID ::= OCTET STRING (SIZE(l6))
ConferenceIdentifier::= GloballyUniqueID
RequestSeqNum ::= INTEGER (l..65535)
GatekeeperIdentifier ::= BMPString (SIZE(l..l28))
BandWidth::= INTEGER (0.. 4294967295)-- in l00s of bits
CallReferenceValue::= INThGER (0..65535)
EndpointIdentifier ::= BMPString (SIZE(l..l28))
ProtocolIdentifier::= OBJECT IDENTIFIER
-- shall be set to
-- {itu-t (0) recommendation (0) h (8) 2250 version (0) 2}
TimeToLive ::= INTEGER (l..4294967296) -- in seconds
CallIdentifier ::= SEQUENCE
{
guid GloballyUniqueID,
}
EncryptIntAlg::= CHOICE
{
nonStandard NonStandardParametef,
isoAlgorithm OBJECT IDENTIFIER, -- defined in ISO/IEC 9979
}
NonI soIntegrityMechanistt = CHOICE
{
hMAC-MD5 NULL,
hMAC-iso101l8-2-s EncryptIntAlg, -- accordng to ISO/IEC l0ll8-2 using
-- EncryptIntAlg as core block encryption algorithm
-- (short MAC)
hMAC-isol0l l8-2-l EncryptIntAlg, -- according tO ISO/IEC 10ll8-2 using
-- EncryptIntAlg as core block encryption algorithm
-- (long MAC)
hMAC-iso101l8-3 OBJECT IDENTIFIER, --- according to ISO/IEC 10ll8-3 using
-- OID as hash function (OID is SHA-l, RIPE-MDl60,
-- RIPE-MDl28)
}
IntegrityMechanism f t= CHOICE
{
nonStandard NonStandardParametef,
digSig NULL, --- indicates to apply a digital signature
iso9797 OBJECT IDENTIFIER, ---- accordng to ISO/IEC 9797 using OID as
-- core encryption algorithm (X-CBC MAC)
nonIsoIM NonIsoIntegrityMechanism,
}
ICV::= SEQUENCE
{
algorithmOID OBJECT IDENnFIER,
icv BIT STRING
-- or signatUre
}
FastStartToken::= ClearToken (WITH COMPONENTS { ..., timeStamP, dhkey, generalID })
EncodedFastStartTken:f= TYPE-IDENTIFIER. &TyPe (FastS tartTOken)
CryptOH323Token::= CHOICE
{
cryptoEPPwdHash SEQUENCE
{
alias AliasAddress, -- alias of entity generating hash
timeStamP TimeStamp, -- timestamp used in hash
token HASHED{ EncodedPwdCCrtToken a- generalID set to 'alias' -- }
},
cryptoGKPwdHash SEQUENCE
{
gatekeePerId G ate keeperIdenti fi er,
timeStamP TimeStamp, -- timestamP used in hash
token HASHED { EncodedPwdCertToken -- }
},
cryptoEPPwdEncr ENCRYPTED
{ EncodedPwdCertTOken - generalID set to Gatekeeperid -- },
cryptoGKPwdEncr ENCRYPTED
{ EncodedPwdCertTken - generalID set to GatekeePerid ---- },
cryptoEPCert SIGNED { EncodedPwdCertToken },
cryptoGKCert SIGNED { EncodedPwdCertToken },
cryptoFastStart SIGNED { EncodedFastStartToken },
nestedcryptoToken CryptoH323Token,
}
DataRate:f= SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
channelRatC BandWidth,
channelMultiplier INTEGER (l..256) OPTONAL,
}
SupportedPrfix:f= SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
prefix AliasAddress,
}
RasMessage::= CHOICE
{
gatekeeperRequest GatekeePethequest,
gatekeeperoonfirm GatekeePerConfirm,
gatekeeperReject GatekeePempect,
registf8tionRequest RegistrationRequest,
registrationConfirm Registr8honConfirm,
registrationReject RegistrationReect,
unregistrationRequest UnregistrahonRequest,
unregistrationConfirm UnregistrationConfirm,
unregistrationReject Unregistf8tionReect,
adndssionRequest AdmissionRequest,
adndssionConfirm AdmissionConfirm,
adndssionReject AdmissionReject,
bandwidthRequest BandwidthRequest,
bandwidthConfirm BandwidthConfirm,
bandwidthReject BandwidthReject,
disengageRequest DisengageRequest,
disengageConfirm DisengageConfirm,
disengageReject DisengageRriect,
locationRequest LocationRequest,
locationConfirm LocationConfirm,
locationReject LocationReject,
infoRequest InfoRequest,
infoRequestResponse InfoRequestResponse,
nonStandardMessage NonStandardMessage,
uhaownMessageResponse UnknownMes sageResponse,
requestInProgress Requestbogress,
resourcesAvai lableIndicate Re sourc e sAvailab leIndic ate,
resourcesAvailableConflrm Re source sAvai lableConfirm,
infoRequestAck InfoRequestAck,
infoRequestNak InfoRequestNak
l
GatekeeperRequest ::= SEQUENCE -- (GRQ)
}
requestSeqNum RequestSeqNum,
protocolIdentifier ProtocolIdentifier,
nonStandardData NonStandardParameter OPTIONAL,
rasAddress TransportAddress,
endPointType EndpointType,
gatekeeperIdentifier GatekeeperIdelltifier OPTIONAL,
callServices QseriesOptions OPTIONAL,
ndPointAlias SEQUENCE OF AliasAddress OPTIONAL,
alternateEndpoints SEQUENCE OF Endpoint OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
authenticationCaPability SEQUENCE OF Authentic ationMechani sm OPTIONAL,
algorithmOIDs SEQUENCE OF OBJECT IDENTIFIER OPTIONAL,
integrity SEQUENCE OF IntegrityMechanism OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
GatekeeperConfirm::= SEQUENCE -- (GCF)
{
requestSeqNum RequestSeqNum,
protocolIdentifier ProtocolIdentifief,
nonStandardData NonStandardParameter OPTIONAL,
gatekeeperIdentifier GatekeeperIdentifier OPTIONAL,
rasAddress TransportAddrss,
altemateGatekeeper SEQUENCE OF AltemateGK OPTIONAL,
authenticationMode AuthenticationMechanism OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
algorithmOID OBJECT IDENTIFIER OPTIONAL,
integrity SEQUENCE OF IntegrityMechanism OPTIONAL,
integrityCheckValue ICV OPTIONAL
GatekeeperReject::= SEQUENCE -- (GRJ)
{
requestSeqNum RequestSeqNum,
protocolIdentifier ProtocolIdentifief,
nonStandardData NonStandardParameter OPTIONAL,
gatekeePerIdentifier GatekeePerIdentifier OPTIONAL,
rejectReason GatekeePerRej ectReason,
alternateGatekeeper SEQUENCE OF AltemateGK OPTIONAL,
altGKisPermanent BOOLEAN OPTONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323TOken OPTONAL,
integrityCheckValue ICV OPTIONAL
}
GatekeeperRejectReason::== CHOICE
{
resourceUnavailable NULL,
tetrinalExcluded NULL, -- perInission failure, not a resource failure
invalidRevision NULL,
undefinedReason NULL,
securityDenial NULL
}
RegistrationRequest::= SEQUENCE -- (RRQ)
{
requestSeqNum RequestSeqNum,
PfotocolIdentifier ProtocolIdentifier,
nonStandardData NonStandardParameter OPTIONAL,
discoveryComPlete BOOLEAN,
callSignalAddress SEQUENCE OF TransportAddress,
rasAddress SEQUENCE OF TransportAddress,
terminalType EndPointrype,
terminalAlias SEQUENE OF AliasAddress OPTONAL,
gatekeeperIdentifier GatekeePerIdentifier OPTONAL,
endpointVendor VendorIdentifier,
altenateEndpoints SEQUENCE OF EndPoint OPTONAL,
timeToLive TimeToLive OptONAL,
tokens SEQUENCE OF CIearToken OPTIONAL.
cryptoTokens SEQUENCE OF CryptoH323TOken OPTONAL,
integrityCheckValue ICV OPTIONAL,
keepAlive BOOLEAN,
endpointIdentifier EndpointIdentifier OPTIONAL,
willSupplyUUIEs BOOLEAN
}
RegistrationConfirm ::= SEQUENCE -- (RCF)
{
requestSeqNum RequestSeqNum,
protocolIdentifier ProtocolIdentifief,
nonStandardData NonStandardParameter OPTlONAL,
callSignalAddress SEQUENCE OF TransportAddress,
terminalAlias SEQUENCE OF AliasAddress OPTIONAL,
gatekeeperIdentifier GatekeeperIdentifier OPTIONAL,
endpointIdentifier EndpointIdentifier,
altemateGatekeeper SEQUENCE OF AlternateGK OPTIONAL,
timeToLive TimeToLive OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL,
willRespondToIRR BOOLEAN,
preGrantedARQ SEQUENCE
{
makeCall BOOLEAN,
useGKCallSignalAddressTOMakeCall BOOLEAN,
answeICall BOOLEAN,
useGKCallSignalAddressToAnswer BOOLEAN,
} OPTIONAL
}
RegistrationReject::= SEQUENCE ---- (RRJ)
{
requestSeqNum RequestSeqNum,
protocolIdentifier ProtocolIdentifief,
nonStandardData NonStandardParameter OPTIONAL,
rejectReason RegistrationRejectReason,
gatekeeperIdentifier GatekeeperIdentifier OPTIONAL,
alternateGatekeeper SEQUENCE OF AltemateGK OPTIONAL,
altGKisPermanent BOOLEAN OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTONAL
}
RegistrationRejectReason:: = CHOICE
{
discoveryRequired NULL, -- registrtion pendssion has aged
invalidRevision NULL,
invalidCa1lSignalAddress NULL,
invalidRASAddress NULL, --- supplied address is invalid
duplicateAlias SEQUENCE OF AliasAddress,
,
-- alias registered to another endpoint
invalidTerminalrype NULL,
undefinedReason NULL,
transportNotSupportCd NULL, -- one or more of the tr8nsports
tran sportQOSNotSupported M, - - endPoint Qo S not suPPorted
resourceUnavailable N'ULL, -- gatekeePer resources exhausted
invalidAlias NULL, -- alias not consistent with gatekeeper rules
securityDenial NULL
}
UnregistrationRequest::= SEQUENCE --- (URQ)
{
requestSeqNum RequestSeqNum,
callSignalAddress SEQUENCE OF TransportAddress,
endpointAlias SEQUENCE OF AliasAddress OPTONAL,
nonStandardData NonStandardParameter OPTIONAL,
endPointIdenti fier EndPoi ntIdentifier OPTIONAL,
alternateEndPoints SEQUENCE OF Endpoint OPTIONAL,
gatekeePerIdentifier GatekeeperIdentifier OPTONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTONAL,
reason UnregRequestReason OPTONAL
}
UnregRequestReason ::= CHOICE
{
reregistrationRequired NULL,
ttlExpired NULL,
securityDenial NULL,
undefinedReason NULL,
}
' UnregistrationConfirm::= SEQUENCE -- (UCF)
{
requestSeqNum RequestSeqNum,
nonStandardData NonStandardParameter OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
UnregistraionReject::= SEQUENCE -- (URJ)
{
requestSeqNum RequestSeqNum,
rejectReason UnregRejectReason,
nonStandardData NonStandardParameter OPTIONAL,
alternateGatekeePer SEQUENCE OF AltemateGK OPTIONAL,
altGXisPermanent BOOLEAN OPTIONAL,
tokens SEQUENCE OF ClearTOken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
UnregRejectReason::= CHOICE
{
notCurrentlyRegistered NULL,
callInProgress NULL,
undefinedReason NULL,
pennissionDenied NULL, --- requesting user not allowed to unregister
-- specified user
securityDenial NULL
}
AdInissionRequest::= SEQUENCE -- (ARQ)
{
requestSeqNum RequestSeqNum,
callrype CallType,
callModel CallModel OPTIONAL,
endpointIdentifier EndPointIdentifier,
destinationInfo SEQUENCE OF AliasAddress OPTIONAL,
destCallSignalAddress TransportAddress OPTIONAL,
destExtraCallInfo SEQUENCE OF AliasAddress OPTIONAL,
srcInfo SEQUENCE OF AliasAddress,
srcCallSignalAddress TransportAddress OPTIONAL,
bandWdth BandWdth,
callReferenceValue CallReferenceValue,
nonStandardData ARQsNonStandardParameter OPTIONAL,
callServices QseriesOptions OPTIONAL,
conferenceID ConferenceIdentifier,
activeMC BOOLEAN,
answerCall BOOLEAN,
canMapAlias BOOLEAN,
callIdentifier,
srcAltematives SEQUENCE OF Endpoint OPTIONAL,
destAltematives SEQUENCE OF EndPoint OPTIONAL,
gatekeeperIdentifier GatekeeperIdentifier OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL,
transportQOS TransportQOS OPTIONAL,
willSupplyUUIEs BOOLEAN
}
ARQsNonStandardParameter:: = CHOICE
{
callerControl SEQUENCE
{
},
cardControl CHOICE
{
stepl SEQUENCE
{
cardNumber LA5STmNG(SIZE (l..l28)) (FROM ("0l23456789#*,,,)),
password OCTET STRING(SIZE (l..32)),
userName OCTET STRING(SIZE (1..32)) OPTIONAL,
},
cI
{
},
step2 SEQUENCE
{
newPassword OCTET STRING(SIZE (l..32)),
},
},
}
CallType::= CHOICE
{
pointToPoint NULL,
oneToN NULL,
nToOne NULL,
nTON NULL,
}
CallModel::= CHOICE
{
direct NULL,
gatekeeperRouted NULL,
}
TransportQOS::= CHOICE
{
endpointControlled NULL,
gatekeeperoontrolled NULL,
noControl NULL,
}
AdndssionConfirm::= SEQUENCE -- (ACF)
{
requestSeqNum RequestSeqNum,
bandWidth BandWidth,
callModel CallModel,
destCallSignalAddress TransportAddress,
irrFrequency INTEGER (1..65535) OPTIONAL,
nonStandardData ACFsNonStandardParamter OPT ONAL,
destinationInfo SEQUENCE OF AliasAddress OPTONAL,
destExtraCallInfo SEQUENCE OF AliasAddress OPTIONAL,
destinationType EndPointType OPTIONAL,
remoteExtensionAddress S EQUENC E OF AJ iasAddress OPTONAL,
altemateEndPoints SEQUENCE OF EndPoint OPTIONAL,
tokens SEQUENCE OF ClearWn OPTONAL,
cryptoMns SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTONAL,
transportQOS TransportQOS OPTIONAL,
willRespondToIRR BOOLEAN,
uuiesRequested UUIEsRequested
}
ACFsNon StandardParameter:: = CHOICE
{
callerControl SEQUENCE
{
},
cardControl CHOICE
{
stepl SEQUENCE
{
remainMoney INTEGER (0..4294967295) OPTIONAL,
},
step2 SEQUENCE
{
remainTime INTEGER (0.. 4294967295 ) OPTONAL,
},
step3 SEQUENCE
{
},.
},
}
UUIEsRequested ((= SEQUENCE
{
setup BOOLEAN,
callProceeding BOOLEAN,
connect BOOLEAN,
alerting BOOLEAN,
userInformation BOOLEAN,
releaseCompletC BOOLEAN,
facility BOOAN,
progress BOOLEAN,
empty BOOLEAN,
}
AdmissionReject ::= SEQUENCE --- (ARJ)
{
requestSeqNum RequestSeqNum,
rejectReason AdmissionRejectReason,
nonStandardData ARJsNonStandardParameter OPTIONAL,
alternateGatekeeper SEQUENCE OF AltemateGK OPTIONAL,
altGKisPermanent BOOLEAN,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323TOken OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
ARJsNonStandardParameter:: = SEQUENCE
{
errorReason ARJsErrorReason OPTIONAL,
}
ARJsErrorReason::= CHOICE
{
invalidUser NULL,
noexistUser NULL,
passwordError NULL,
systCInError NULL,
cardOnline NULL,
userForbiddened NULL,
reserved NULL,
passwordChangeInvalid NULL,
outofMoney NULL,
}
AdndssionRejectReason ::= CHOICE
{
calledpartyNotRegi stered NULL, - -- can'translate address
invalidPermission NULL, --- pendssion has expired
requestDenied NULL, -- no bandwidth available
undefinedReason NULL,
callerNotRegistered NULL,
routeCallToGatekeeper NULL,
invalidEndPointldentifier NULL,
resourceUnavailable NULL,
securityDenial NULL,
qosControlNotSupported NULL,
incomPleteAddress NULL
}
BandwidthRequest::= SEQUENCE -- (BRQ)
{
requestSeqNum RequestSeqNum,
endPointIdentifier EndPointIdentifier,
conferenceID ConferenceIdentifier,
callReferenceValue CallReferenceValue,
callTyPe CallType OPTIONAL,
bandWidth BandWidth,
nonStandardData NonStandardParameter OPTIONAL,
callIdentifier CallIdentifier,
gatekeeperIdentifier GatekeePerIdentifier,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL,
answeredCaIl BOOLEAN
}
BandwidthConfirm ::= SEQUENCE -- (BCF)
{
requestSeqNum RequestSeqNum,
bandWidth BandWidth,
nonStandardData NonStandardParameter OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
BandwidthReject::= SEQUENCE -- (BRJ)
{
requestSeqNum RequestSeqNum,
rejectReason BandRejectReason,
allowedBandWidth BandWidth,
nonStandardData NonStandardParameter OPTIONAL,
alternateGatekeeper SEQUENCE OF AlternateGK OPTIONAL,
altGKisPermanent BOOLEAN,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptOH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
BandRejectReason::= CHOICE
{
notBound NULL, --- discovery permission has aged
invalidConferenceID NULL, -- possible revision
invalidPermission NULL, - - true permi s sion violation
insufficientResources NULL,
invalidRevision NULL,
undefinedReason NULL,
securityDenial NULL
}
LocationRequest:;= SEQUENCE -- (LRQ)
{
requestSeqNum RequestSeqNum,
endPointIdentifier EndpointIdentifier OPTIONAL,
destinationInfo SEQUENCE OF AliasAddress,
nonStandardData NonStandardParameter OPTIONAL,
replyAddress TransportAddress,
sourceInfo SEQUENCE OF AliasAddress OPTIONAL,
canMaPAlias BOOLEAN, -- can handle alias address
gatekeeperIdentifier GatekeeperIdentifier OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTONAL
}
LocationConfirm:t= SEQUENCE -- (LCF)
{
requestSeqNum RequestSeqNum,
callSignalAddress TransportAddrss,
rasAddress TransportAddress,
nonStandardData NonStandardParameter OPTIONAL,
destinationInfo SEQUENCE OF AliasAddress OPTONAL,
destExtraCallInfo SEQUENCE OF AliasAddrss OPTIONAL,
destinationType EndPointType OPTIONAL,
remo teExtensionAddress SEQUENCE OF AliasAddrss OPTIONAL,
altemateEndPoints SEQUENCE OF Endpoint OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323TOken OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
LocationReject::= SEQUENCE -- (LRJ)
{
requestSeqNum RequestSeqNum,
rejectReason LocationReectReason,
nonStandardData NonStandardParameter OPTIONAL,
altenateGatekeeper SEQUENCE OF AltemateGK OPTIONAL,
altGKisPermanent BOOLEAN,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
LocationRejectReason:;= CHOICE
{
notRegistered NULL,
invalidPermission NULL, -- exclusion by adndnistratOr or featUre
requestDenied NULL, -- can't find location
undefinedReason NULL,
securityDenial NULL
}
DisengageRequest::= SEQUENCE --- (DRQ)
{
requestSeqNum RequestSeqNum,
endpointIdentfier EndPointIdentifier,
conferenceID ConferenceIdentfier,
callReferenceValue CallReferenceVaiue,
disengageReason DisengageRCason,
nonStandardData D RQ sNo n S tand ardParameter OPTIONAL,
callIdentifier CallIdentifier,
gatekeeperIdentifier GatekeeperIdentifier
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQU'ENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OrnONAL,
answeredCall BOOLEAN
}
DRQsNonStandardParameter:: = SEQUENCE
{
srcCallSignalAddress TransportAddress,
destCallSignalAddress TransportAddress,
acctStartTime INTEGER (0..4294967295), -- in seconds
acctSessionTime INThGER (0..4294967295), -- in seconds
serviceType DRQsServiceType,
inBytes INTEGER (0..4294967295) OPTIONAL, --- in bytes
outBytes INTEGER (0..4294967295) OPTIONAL, -- in bytes
encodecType AndioCaPability OPTIONAL,
decodecfype AudioCaPability OPTIONAL,
terminalCauge DRQsTerminalCause,
}
DRQsServiceType::= CHOICE
. {
phone NULL,
ipFax NULL,
}
DRQsTerminalCause::= CHOICE
{
callerHookOn NULL,
calledHookOn NULL,
networkError NULL,
establishedFailed NULL,
}
DisengageReason ::= CHOICE
{
forcedDrop NULL, -- gatekeeper is forcing the drop
normalDrop NULL, -- associated with normal drop
undefinedReason NULL,
}
DisengageConfirm::= SEQUENCE -- (DCF)
{
requestSeqNum RequestSeqNum,
nonStandardData NonStandardParameter OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
DisengageReject::= SEQUENCE -- (DRJ)
{
requestSeqNum RequestSeqNum,
rejectReason Di sengageRe ectReason,
nonStandardData NonStandardParameter OPTIONAL,
alternateGatekeeper SEQUENCE OF AlternateGK OPTIONAL,
altGKisPermanent BOOLEAN,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
DisengageRejectReason::= CHOICE
notRegistered NULL, -- not registered with gatekeeper
requestToDropOther NULL, -- -
securityDenial NULL
}
InfoRequest::== SEQUENCE -- (IRQ)
{
requestSeqNum RequestSeqNum,
callReferenceValue CallReferenceValue,
nonStandardData NonStandardParameter OPTIONAL,
replyAddress TransportAddress OPTIONAL,
callIdentifier CallIdentifier,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323TOken OPTIONAL,
integrityCheckValue ICV OPTIONAL,
uuiesRequested UUIEsRequested OPTIONAL
}
InfoRequestResponse ff= SEQUENCE -- (IRR)
{
nonStandardData NonStandardParameter OPTIONAL,
requestSeqNum RequestSeqNum,
endpointType EndpointType,
endpointIdentifier EndPointIdentifier,
rasAddress TransportAddress,
callSignalAddress SEQUENCE OF TransportAddress,
endPointAlias SEQUENCE OF AliasAddress OPTIONAL,
perCallInfo SEQUENCE OF SEQUENCE
{
nonStandardData NonStandardParameter OPTIONAL,
callReferenceValue CallReferenceValue,
conferenceID ConferenceIdentifier,
originator BOOLEAN,
audio SEQUENCE OF RTPSession OPTIONAL,
video SEQUENCE OF RTPSession OPTIONAL,
data SEQUENCE OF TransportChannelInfo OPTIONAL,
h245 TransportChannelInfo,
callSignaling TransportChannelInfo,
calltype CallType,
bandWidth BandWdth,
callModel CallModel,
..',
callIdentifier CallIdentifier,
tokens SEQUENCE OF ClearWn OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323TOken OPTIONAL,
substituteConflDs SEQUENCE OF ConferenceIdentifier,
pdu SEQUENCE OF SEQUENCE
{
h323pdu H323-UU-PDU,
sent BOOLEAN -- TRUE is sent, FALSE is received
} OPTIONAL
} OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL,
needResponse BOOLEAN
}
TransportChannelInfo::= SEQUENCE
{
sendAddress TransportAddress OPTONAL,
recvAddress TransportAddress OPTIONAL,
}
RTPSession:= SEQUENCE
{
rtpAddress TransportChannelInfo,
rtcpAddress. TransportChannelInfo,
cname PrintableString,
ssrc INTEGER (1..4294967295),
sessionId INTEGER (l..255),
associatedSessionIds SEQUENCE OF INTEGER (1.. 25 5 ),
}
InfoRequestAck::= SEQUENCE -- (IACK)
{
requestSeqNum RequestSeqNum,
nonStandardData NonStandardParameter OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL,
InfoRequestNak:;= SEQUENCE -- (INAK)
{
requestSeqNum RequestSeqNum,
nonStandardData NonStandardParameter OPTIONAL,
naxeason InfoRequestNaxeason,
alternateGatekeeper SEQUENCE OF AlternateGK OPTIONAL,
altGKisPermanent BOOLEAN,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL,
}
InfoRequestNakReason ::= CHOICE
{
notRegistered NULL,
securityDenial NULL,
undefinedReason NULL,
}
NonStandardMessage::= SEQUENCE
{
requestSeqNum RequestSeqNum,
nonStandardData NonStandardParametef,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Tokn OPTIONAL,
integrityCheckValue ICV OPTIONAL
}
UnknownMessageResponse::=SEQUENCE-(XRS)
{
requestSeqNum RequestSeqNum,
tokens SEQUENCE OF ClearTok6n OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTlONAL
}
RequestInProgress::= SEQUENCE -- (RIP)
{
requestSeqNum RequestSeqNum,
nonStandardData NonStandardParameter OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL,
delay INTEGER(l..65535),
}
Resource sAvail ableIndicate:: = S EQUENCE -- - (RAI)
{
requestSeqNum RequestSeqNum,
protocolIdentifier ProtocolIdentifief,
nonStandardData NonStandardParameter OPTIONAL,
endpointIdentifier EndpointIdentifier,
protocols SEQUENCE OF SupportedProtocols,
almostOutOfResources BOOLEAN,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL,
}
ResourcesAvailableConfirm :: = SEQUENCE - - (RAC )
{
requestSeqNum RequestSeqNum,
protocolIdentifier ProtocolIdentifier,
nonStandardData NonStandardParameter OPTIONAL,
tokens SEQUENCE OF ClearToken OPTIONAL,
cryptoTokens SEQUENCE OF CryptoH323Token OPTIONAL,
integrityCheckValue ICV OPTIONAL,
}
END -- of ASN. l
消息编码算法参见X.680和X.691
------分隔线----------------------------
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容
  • VoIP的配置选择

    前面,我们已经围绕Vo I P 讨论了一些问题。现在,让我们讨论几种Vo I P 的配置和拓扑...

  • SIP协议介绍

    介绍 通信提供商及其合作伙伴和用户越来越渴求新一代基于 IP 的服务。现在有了 SIP协...

  • IP电话协议H.323协议 MGCP协议 SIP协议比较

    随着IP电话应用的普及,建立终端设备和网关的可扩展网络已成为业界面临的一大技术挑战...