forked from osmocom/wireshark
![Pascal Quantin](/assets/img/avatar_default.png)
Change-Id: Icf09e430a1732708ddd9e7abb49f7b1a6225afde Reviewed-on: https://code.wireshark.org/review/3526 Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
793 lines
32 KiB
Groff
793 lines
32 KiB
Groff
-- ULP-Components.asn
|
|
-- Taken from OMA UserPlane Location Protocol
|
|
-- http://member.openmobilealliance.org/ftp/Public_documents/LOC/Permanent_documents/OMA-TS-ULP-V2_0_2-20140708-A.zip
|
|
--
|
|
-- 11.5 Common elements (SUPL Version 1)
|
|
--
|
|
|
|
ULP-Components DEFINITIONS AUTOMATIC TAGS ::=
|
|
BEGIN
|
|
|
|
EXPORTS Version, SessionID, IPAddress, SLPAddress, LocationId, Position, StatusCode, Velocity, QoP, PosMethod, Ver, SETId, PrimaryCPICH-Info, CellParametersID, FQDN;
|
|
|
|
IMPORTS
|
|
Ver2-CellInfo-extension
|
|
FROM Ver2-ULP-Components;
|
|
|
|
-- protocol version expressed as x.y.z (e.g., 5.1.0)
|
|
Version ::= SEQUENCE {
|
|
maj INTEGER(0..255),
|
|
min INTEGER(0..255),
|
|
servind INTEGER(0..255)}
|
|
|
|
SessionID ::= SEQUENCE {
|
|
setSessionID SetSessionID OPTIONAL, -- the semantics of OPTIONAL applies to the encoding only. The parameter itself is MANDATORY. This is introduced only to minimize bandwidth for the SUPL INIT message. Since the setSessionID is allocated by the SET, there is no setSessionID to be transmitted in the SUPL INIT message.
|
|
slpSessionID SlpSessionID OPTIONAL -- the semantics of OPTIONAL applies to the encoding only. The parameter itself is MANDATORY. This is introduced only to minimize bandwidth for the SUPL START, SUPL TRIGGERED START and SUPL SET INIT messages. Since the slpSessionID is allocated by the SLP, there is no slpSessionID to be transmitted in these messages (with the exception described in section 10.14).
|
|
}
|
|
|
|
SetSessionID ::= SEQUENCE {sessionId INTEGER(0..65535),
|
|
setId SETId}
|
|
|
|
SETId ::= CHOICE {
|
|
msisdn OCTET STRING(SIZE (8)),
|
|
mdn OCTET STRING(SIZE (8)),
|
|
min BIT STRING(SIZE (34)), -- coded according to TIA-553
|
|
imsi OCTET STRING(SIZE (8)),
|
|
nai IA5String(SIZE (1..1000)),
|
|
iPAddress IPAddress,
|
|
...}
|
|
-- msisdn, mnd and imsi are a BCD (Binary Coded Decimal) string
|
|
-- represent digits from 0 through 9,
|
|
-- two digits per octet, each digit encoded 0000 to 1001 (0 to 9)
|
|
-- bits 8765 of octet n encoding digit 2n
|
|
-- bits 4321 of octet n encoding digit 2(n-1) +1
|
|
-- not used digits in the string shall be filled with 1111
|
|
|
|
SlpSessionID ::= SEQUENCE {
|
|
sessionID OCTET STRING(SIZE (4)),
|
|
slpId SLPAddress}
|
|
|
|
IPAddress ::= CHOICE {
|
|
ipv4Address OCTET STRING(SIZE (4)),
|
|
ipv6Address OCTET STRING(SIZE (16))}
|
|
|
|
SLPAddress ::= CHOICE {iPAddress IPAddress,
|
|
fqdn FQDN,
|
|
...}
|
|
|
|
FQDN ::=
|
|
VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" |".-"))(SIZE (1..255))
|
|
|
|
Ver ::= BIT STRING(SIZE (64))
|
|
|
|
LocationId ::= SEQUENCE {cellInfo CellInfo,
|
|
status Status,
|
|
...}
|
|
|
|
Status ::= ENUMERATED {stale(0), current(1), unknown(2), ...}
|
|
|
|
CellInfo ::= CHOICE {
|
|
gsmCell GsmCellInformation,
|
|
wcdmaCell WcdmaCellInformation, --WCDMA Cell Information/TD-SCDMA Cell Information
|
|
cdmaCell CdmaCellInformation,
|
|
...,
|
|
ver2-CellInfo-extension Ver2-CellInfo-extension}
|
|
|
|
Position ::= SEQUENCE {
|
|
timestamp UTCTime, -- shall include seconds and shall use UTC time.
|
|
positionEstimate PositionEstimate,
|
|
velocity Velocity OPTIONAL,
|
|
...}
|
|
|
|
PositionEstimate ::= SEQUENCE {
|
|
latitudeSign ENUMERATED {north, south},
|
|
latitude INTEGER(0..8388607),
|
|
longitude INTEGER(-8388608..8388607),
|
|
uncertainty
|
|
SEQUENCE {uncertaintySemiMajor INTEGER(0..127),
|
|
uncertaintySemiMinor INTEGER(0..127),
|
|
orientationMajorAxis INTEGER(0..180)} OPTIONAL, -- angle in degree between major axis and North
|
|
confidence INTEGER(0..100) OPTIONAL,
|
|
altitudeInfo AltitudeInfo OPTIONAL,
|
|
...} -- Coding as in [3GPP GAD]
|
|
|
|
AltitudeInfo ::= SEQUENCE {
|
|
altitudeDirection ENUMERATED {height, depth},
|
|
altitude INTEGER(0..32767),
|
|
altUncertainty INTEGER(0..127),
|
|
... } -- based on [3GPP GAD]
|
|
|
|
CdmaCellInformation ::= SEQUENCE {
|
|
refNID INTEGER(0..65535), -- Network Id
|
|
refSID INTEGER(0..32767), -- System Id
|
|
refBASEID INTEGER(0..65535), -- Base Station Id
|
|
refBASELAT INTEGER(0..4194303), -- Base Station Latitude
|
|
reBASELONG INTEGER(0..8388607), -- Base Station Longitude
|
|
refREFPN INTEGER(0..511), -- Base Station PN Code
|
|
refWeekNumber INTEGER(0..65535), -- GPS Week Number
|
|
refSeconds INTEGER(0..4194303), -- GPS Seconds
|
|
...}
|
|
|
|
GsmCellInformation ::= SEQUENCE {
|
|
refMCC INTEGER(0..999), -- Mobile Country Code
|
|
refMNC INTEGER(0..999), -- Mobile Network Code
|
|
refLAC INTEGER(0..65535), -- Location area code
|
|
refCI INTEGER(0..65535), -- Cell identity
|
|
nmr NMR OPTIONAL,
|
|
ta INTEGER(0..255) OPTIONAL, --Timing Advance
|
|
...}
|
|
|
|
WcdmaCellInformation ::= SEQUENCE {
|
|
refMCC INTEGER(0..999), -- Mobile Country Code
|
|
refMNC INTEGER(0..999), -- Mobile Network Code
|
|
refUC INTEGER(0..268435455), -- Cell identity
|
|
frequencyInfo FrequencyInfo OPTIONAL,
|
|
primaryScramblingCode INTEGER(0..511) OPTIONAL, -- Not applicable for TDD
|
|
measuredResultsList MeasuredResultsList OPTIONAL,
|
|
...,
|
|
cellParametersId INTEGER(0..127) OPTIONAL, -- Not applicable for FDD
|
|
timingAdvance TimingAdvance OPTIONAL -- Not applicable for FDD
|
|
}
|
|
|
|
TimingAdvance ::= SEQUENCE {
|
|
ta INTEGER (0..8191),
|
|
tAResolution TAResolution OPTIONAL, --If missing, resolution is 0.125 chips
|
|
chipRate ChipRate OPTIONAL, --If missing, chip rate is 1.28 Mchip/s
|
|
...}
|
|
|
|
TAResolution ::= ENUMERATED {res10chip(0),res05chip(1),res0125chip(2), ...} -- Corresponding to 1.0-chip, 0.5-chip and 0.125-chip resolutions, respectively
|
|
|
|
ChipRate ::= ENUMERATED {tdd128(0),tdd384(1), tdd768(2), ...} --Corresponding to 1.28-Mchips/s, 3.84-Mchips/s and 7.68-Mchips/s chip rates, respectively
|
|
|
|
|
|
FrequencyInfo ::= SEQUENCE {
|
|
modeSpecificInfo CHOICE {fdd FrequencyInfoFDD,
|
|
tdd FrequencyInfoTDD,
|
|
...},
|
|
...}
|
|
|
|
FrequencyInfoFDD ::= SEQUENCE {
|
|
uarfcn-UL UARFCN OPTIONAL,
|
|
uarfcn-DL UARFCN,
|
|
...}
|
|
|
|
FrequencyInfoTDD ::= SEQUENCE {uarfcn-Nt UARFCN,
|
|
...}
|
|
|
|
UARFCN ::= INTEGER(0..16383)
|
|
|
|
NMR ::= SEQUENCE (SIZE (1..15)) OF NMRelement
|
|
|
|
NMRelement ::= SEQUENCE {
|
|
arfcn INTEGER(0..1023),
|
|
bsic INTEGER(0..63),
|
|
rxLev INTEGER(0..63),
|
|
...}
|
|
|
|
MeasuredResultsList ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasuredResults
|
|
|
|
MeasuredResults ::= SEQUENCE {
|
|
frequencyInfo FrequencyInfo OPTIONAL,
|
|
utra-CarrierRSSI UTRA-CarrierRSSI OPTIONAL,
|
|
cellMeasuredResultsList CellMeasuredResultsList OPTIONAL}
|
|
|
|
CellMeasuredResultsList ::=
|
|
SEQUENCE (SIZE (1..maxCellMeas)) OF CellMeasuredResults
|
|
|
|
-- SPARE: UTRA-CarrierRSSI, Max = 76
|
|
-- Values above Max are spare
|
|
UTRA-CarrierRSSI ::= INTEGER(0..127)
|
|
|
|
CellMeasuredResults ::= SEQUENCE {
|
|
cellIdentity INTEGER(0..268435455) OPTIONAL,
|
|
modeSpecificInfo
|
|
CHOICE {fdd
|
|
SEQUENCE {primaryCPICH-Info PrimaryCPICH-Info,
|
|
cpich-Ec-N0 CPICH-Ec-N0 OPTIONAL,
|
|
cpich-RSCP CPICH-RSCP OPTIONAL,
|
|
pathloss Pathloss OPTIONAL},
|
|
tdd
|
|
SEQUENCE {cellParametersID CellParametersID,
|
|
proposedTGSN TGSN OPTIONAL,
|
|
primaryCCPCH-RSCP PrimaryCCPCH-RSCP OPTIONAL,
|
|
pathloss Pathloss OPTIONAL,
|
|
timeslotISCP-List TimeslotISCP-List OPTIONAL --NOTE: TimeSlotISCP measurement list cannot be interpreted without the knowledge of Cell Info as defined in [3GPP RRC]
|
|
}}}
|
|
|
|
CellParametersID ::= INTEGER(0..127)
|
|
|
|
TGSN ::= INTEGER(0..14)
|
|
|
|
PrimaryCCPCH-RSCP ::= INTEGER(0..127)
|
|
|
|
-- SPARE: TimeslotISCP, Max = 91
|
|
-- Values above Max are spare
|
|
TimeslotISCP ::= INTEGER(0..127)
|
|
|
|
TimeslotISCP-List ::= SEQUENCE (SIZE (1..maxTS)) OF TimeslotISCP
|
|
|
|
PrimaryCPICH-Info ::= SEQUENCE {primaryScramblingCode INTEGER(0..511)}
|
|
|
|
-- SPARE: CPICH-Ec-No, Max = 49
|
|
-- Values above Max are spare
|
|
CPICH-Ec-N0 ::= INTEGER(0..63)
|
|
|
|
-- SPARE: CPICH- RSCP, data range from 0 to 91 and from 123 to 127.
|
|
-- Values from 92 to 122 are spare
|
|
-- the encoding of cpich-RSCP is (as per [3GPP RRC] V5.11.0)
|
|
|
|
-- cpich-RSCP = 123 CPICH RSCP <-120 dBm
|
|
-- cpich-RSCP = 124 -120 = CPICH RSCP < -119 dBm
|
|
-- cpich-RSCP = 125 -119 = CPICH RSCP < -118 dBm
|
|
-- cpich-RSCP = 126 -118 = CPICH RSCP < -117 dBm
|
|
-- cpich-RSCP = 127 -117 = CPICH RSCP < -116 dBm
|
|
-- cpich-RSCP = 0 -116 = CPICH RSCP < -115 dBm
|
|
-- cpich-RSCP = 1 -115 = CPICH RSCP < -114 dBm
|
|
-- ... ... ...
|
|
-- cpich-RSCP = 89 -27 = CPICH RSCP < -26 dBm
|
|
-- cpich-RSCP = 90 -26 = CPICH RSCP < -25 dBm
|
|
-- cpich-RSCP = 91 -25 = CPICH RSCP dBm
|
|
|
|
CPICH-RSCP ::= INTEGER(0..127)
|
|
|
|
-- SPARE: Pathloss, Max = 158
|
|
-- Values above Max are spare
|
|
Pathloss ::= INTEGER(46..173)
|
|
|
|
maxCellMeas INTEGER ::= 32
|
|
|
|
maxFreq INTEGER ::= 8
|
|
|
|
maxTS INTEGER ::= 14
|
|
|
|
StatusCode ::= ENUMERATED {
|
|
unspecified(0), systemFailure(1), unexpectedMessage(2), protocolError(3),
|
|
dataMissing(4), unexpectedDataValue(5), posMethodFailure(6),
|
|
posMethodMismatch(7), posProtocolMismatch(8), targetSETnotReachable(9),
|
|
versionNotSupported(10), resourceShortage(11), invalidSessionId(12),
|
|
nonProxyModeNotSupported(13), proxyModeNotSupported(14),
|
|
positioningNotPermitted(15), authNetFailure(16), authSuplinitFailure(17),
|
|
consentDeniedByUser(100), consentGrantedByUser(101), ..., ver2-incompatibleProtectionLevel(18),
|
|
ver2-serviceNotSupported(19), ver2-insufficientInterval(20), ver2-noSUPLCoverage(21), ver2-sessionStopped(102),
|
|
ver2-appIdDenied(103)}
|
|
|
|
QoP ::= SEQUENCE {
|
|
horacc INTEGER(0..127),
|
|
veracc INTEGER(0..127) OPTIONAL, -- as defined in [3GPP GAD] "uncertainty altitude"
|
|
maxLocAge INTEGER(0..65535) OPTIONAL,
|
|
delay INTEGER(0..7) OPTIONAL, -- as defined in [3GPP RRLP]
|
|
...}
|
|
|
|
Velocity ::= CHOICE { -- velocity definition as per [3GPP GAD]
|
|
horvel Horvel,
|
|
horandvervel Horandvervel,
|
|
horveluncert Horveluncert,
|
|
horandveruncert Horandveruncert,
|
|
...}
|
|
|
|
Horvel ::= SEQUENCE {
|
|
bearing BIT STRING(SIZE (9)),
|
|
horspeed BIT STRING(SIZE (16)),
|
|
...}
|
|
|
|
Horandvervel ::= SEQUENCE {
|
|
verdirect BIT STRING(SIZE (1)),
|
|
bearing BIT STRING(SIZE (9)),
|
|
horspeed BIT STRING(SIZE (16)),
|
|
verspeed BIT STRING(SIZE (8)),
|
|
...}
|
|
|
|
Horveluncert ::= SEQUENCE {
|
|
bearing BIT STRING(SIZE (9)),
|
|
horspeed BIT STRING(SIZE (16)),
|
|
uncertspeed BIT STRING(SIZE (8)),
|
|
...}
|
|
|
|
Horandveruncert ::= SEQUENCE {
|
|
verdirect BIT STRING(SIZE (1)),
|
|
bearing BIT STRING(SIZE (9)),
|
|
horspeed BIT STRING(SIZE (16)),
|
|
verspeed BIT STRING(SIZE (8)),
|
|
horuncertspeed BIT STRING(SIZE (8)),
|
|
veruncertspeed BIT STRING(SIZE (8)),
|
|
...}
|
|
|
|
PosMethod ::= ENUMERATED {
|
|
agpsSETassisted(0), agpsSETbased(1), agpsSETassistedpref(2), agpsSETbasedpref(3), autonomousGPS(4), aFLT(5), eCID(6), eOTD(7), oTDOA(8), noPosition(9), ..., ver2-historicalDataRetrieval(10), ver2-agnssSETassisted(11), ver2-agnssSETbased(12), ver2-agnssSETassistedpref(13), ver2-agnssSETbasedpref(14), ver2-autonomousGNSS(15), ver2-sessioninfoquery(16)}
|
|
|
|
END
|
|
|
|
--
|
|
-- 11.6 Common elements (SUPL Version 2)
|
|
--
|
|
|
|
Ver2-ULP-Components DEFINITIONS AUTOMATIC TAGS ::=
|
|
BEGIN
|
|
|
|
EXPORTS Ver2-CellInfo-extension, MultipleLocationIds, SupportedNetworkInformation, CauseCode, UTRAN-GPSReferenceTimeAssistance, UTRAN-GPSReferenceTimeResult, SPCSETKey, SPCTID, SPCSETKeylifetime, UTRAN-GANSSReferenceTimeAssistance, UTRAN-GANSSReferenceTimeResult, GNSSPosTechnology, GANSSSignals, ThirdParty, ApplicationID, ReportingCap, Coordinate, CircularArea, EllipticalArea, PolygonArea;
|
|
|
|
IMPORTS
|
|
LocationId, PrimaryCPICH-Info, CellParametersID, FQDN
|
|
FROM ULP-Components;
|
|
|
|
MultipleLocationIds ::= SEQUENCE SIZE (1..maxLidSize) OF LocationIdData
|
|
|
|
LocationIdData ::= SEQUENCE {
|
|
locationId LocationId,
|
|
relativetimestamp RelativeTime OPTIONAL, -- if relativetimestamp is present, then data represents historical measurement, if absent, data represents current measurements
|
|
servingFlag BOOLEAN, -- if "true" measurements represent serving cell
|
|
...}
|
|
|
|
RelativeTime ::= INTEGER (0..65535) -- relative time to "current" Location Id in multiples of 0.01sec
|
|
|
|
maxLidSize INTEGER ::= 64
|
|
|
|
SupportedNetworkInformation ::= SEQUENCE {
|
|
wlan BOOLEAN,
|
|
supportedWLANInfo SupportedWLANInfo OPTIONAL,
|
|
supportedWLANApsList SupportedWLANApsList OPTIONAL,
|
|
gsm BOOLEAN,
|
|
wcdma BOOLEAN,
|
|
supportedWCDMAInfo SupportedWCDMAInfo OPTIONAL,
|
|
cdma BOOLEAN,
|
|
hrdp BOOLEAN,
|
|
umb BOOLEAN,
|
|
lte BOOLEAN,
|
|
wimax BOOLEAN,
|
|
historic BOOLEAN,
|
|
nonServing BOOLEAN,
|
|
uTRANGPSReferenceTime BOOLEAN,
|
|
uTRANGANSSReferenceTime BOOLEAN,
|
|
...}
|
|
|
|
SupportedWLANInfo ::= SEQUENCE {
|
|
apTP BOOLEAN, -- AP transmit power
|
|
apAG BOOLEAN, -- AP antenna gain
|
|
apSN BOOLEAN, -- AP S/N received at SET
|
|
apDevType BOOLEAN, -- Device type
|
|
apRSSI BOOLEAN, -- AP signal strength at SET
|
|
apChanFreq BOOLEAN, -- AP channel/frequency of Tx/Rx
|
|
apRTD BOOLEAN, -- Round Trip Delay between SET and AP
|
|
setTP BOOLEAN, -- SET transmit power
|
|
setAG BOOLEAN, -- SET antenna gain
|
|
setSN BOOLEAN, -- SET S/N received at AP
|
|
setRSSI BOOLEAN, -- SET signal strength at AP
|
|
apRepLoc BOOLEAN, -- AP Location as reported by AP
|
|
...}
|
|
|
|
maxWLANApDataSize INTEGER ::= 128
|
|
|
|
SupportedWLANApsList ::= SEQUENCE {
|
|
supportedWLANApDataList SEQUENCE (SIZE (1..maxWLANApDataSize)) OF SupportedWLANApData,
|
|
supportedWLANapsChannel11a SupportedWLANApsChannel11a OPTIONAL,
|
|
supportedWLANapsChannel11bg SupportedWLANApsChannel11bg OPTIONAL,
|
|
...
|
|
}
|
|
|
|
SupportedWLANApsChannel11a ::= SEQUENCE {
|
|
ch34 BOOLEAN,
|
|
ch36 BOOLEAN,
|
|
ch38 BOOLEAN,
|
|
ch40 BOOLEAN,
|
|
ch42 BOOLEAN,
|
|
ch44 BOOLEAN,
|
|
ch46 BOOLEAN,
|
|
ch48 BOOLEAN,
|
|
ch52 BOOLEAN,
|
|
ch56 BOOLEAN,
|
|
ch60 BOOLEAN,
|
|
ch64 BOOLEAN,
|
|
ch149 BOOLEAN,
|
|
ch153 BOOLEAN,
|
|
ch157 BOOLEAN,
|
|
ch161 BOOLEAN
|
|
}
|
|
|
|
SupportedWLANApsChannel11bg ::= SEQUENCE {
|
|
ch1 BOOLEAN,
|
|
ch2 BOOLEAN,
|
|
ch3 BOOLEAN,
|
|
ch4 BOOLEAN,
|
|
ch5 BOOLEAN,
|
|
ch6 BOOLEAN,
|
|
ch7 BOOLEAN,
|
|
ch8 BOOLEAN,
|
|
ch9 BOOLEAN,
|
|
ch10 BOOLEAN,
|
|
ch11 BOOLEAN,
|
|
ch12 BOOLEAN,
|
|
ch13 BOOLEAN,
|
|
ch14 BOOLEAN
|
|
}
|
|
|
|
SupportedWLANApData ::= SEQUENCE {
|
|
apMACAddress BIT STRING (SIZE (48)),
|
|
apDevType ENUMERATED {wlan802-11a(0), wlan802-11b(1), wlan802-11g(2), ...},
|
|
...}
|
|
|
|
SupportedWCDMAInfo ::= SEQUENCE {
|
|
mrl BOOLEAN, -- Measured Results List
|
|
...}
|
|
|
|
Ver2-CellInfo-extension ::= CHOICE {
|
|
hrpdCell HrpdCellInformation,
|
|
umbCell UmbCellInformation,
|
|
lteCell LteCellInformation,
|
|
wlanAP WlanAPInformation,
|
|
wimaxBS WimaxBSInformation,
|
|
...}
|
|
|
|
HrpdCellInformation ::= SEQUENCE {
|
|
refSECTORID BIT STRING(SIZE (128)) OPTIONAL, -- HRPD Sector Id
|
|
refBASELAT INTEGER(0..4194303), -- Base Station Latitude
|
|
reBASELONG INTEGER(0..8388607), -- Base Station Longitude
|
|
refWeekNumber INTEGER(0..65535), -- GPS Week Number
|
|
refSeconds INTEGER(0..4194303), -- GPS Seconds
|
|
...}
|
|
|
|
UmbCellInformation ::= SEQUENCE {
|
|
refSECTORID BIT STRING(SIZE (128)), -- UMB Sector Id
|
|
refMCC INTEGER(0..999), -- Mobile Country Code
|
|
refMNC INTEGER(0..999), -- Mobile Network Code
|
|
refBASELAT INTEGER(0..4194303), -- Base Station Latitude
|
|
reBASELONG INTEGER(0..8388607), -- Base Station Longitude
|
|
refWeekNumber INTEGER(0..65535), -- GPS Week Number
|
|
refSeconds INTEGER(0..4194303), -- GPS Seconds
|
|
...}
|
|
|
|
-- LTE Cell info per 3GPP TS 36.331.
|
|
-- If not otherwise stated info is related to serving cell
|
|
|
|
LteCellInformation ::= SEQUENCE {
|
|
cellGlobalIdEUTRA CellGlobalIdEUTRA,
|
|
physCellId PhysCellId,
|
|
trackingAreaCode TrackingAreaCode,
|
|
rsrpResult RSRP-Range OPTIONAL,
|
|
rsrqResult RSRQ-Range OPTIONAL,
|
|
ta INTEGER(0..1282) OPTIONAL, -- Currently used Timing Advance value (N_TA/16 as per [3GPP 36.213])
|
|
measResultListEUTRA MeasResultListEUTRA OPTIONAL, --Neighbour measurements
|
|
...,
|
|
earfcn INTEGER(0..65535) OPTIONAL, -- see Table 37
|
|
earfcn-ext INTEGER (65536..262143) OPTIONAL -- see Table 37
|
|
}
|
|
|
|
-- Measured results of neighbours cells per 3GPP TS 36.331
|
|
|
|
MeasResultListEUTRA ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultEUTRA
|
|
|
|
MeasResultEUTRA ::= SEQUENCE {
|
|
physCellId PhysCellId,
|
|
cgi-Info SEQUENCE {
|
|
cellGlobalId CellGlobalIdEUTRA,
|
|
trackingAreaCode TrackingAreaCode
|
|
} OPTIONAL,
|
|
measResult SEQUENCE {
|
|
rsrpResult RSRP-Range OPTIONAL, -- Mapping to measured values
|
|
rsrqResult RSRQ-Range OPTIONAL, -- in 3GPP TS 36.133
|
|
...,
|
|
earfcn INTEGER(0..65535) OPTIONAL, -- see Table 37
|
|
earfcn-ext INTEGER (65536..262143) OPTIONAL -- see Table 37
|
|
}
|
|
}
|
|
|
|
PhysCellId ::= INTEGER (0..503)
|
|
|
|
TrackingAreaCode ::= BIT STRING (SIZE (16))
|
|
|
|
CellGlobalIdEUTRA ::= SEQUENCE {
|
|
plmn-Identity PLMN-Identity,
|
|
cellIdentity CellIdentity,
|
|
...
|
|
}
|
|
|
|
PLMN-Identity ::= SEQUENCE {
|
|
mcc MCC OPTIONAL,
|
|
mnc MNC
|
|
}
|
|
|
|
CellIdentity ::= BIT STRING (SIZE (28))
|
|
|
|
MCC ::= SEQUENCE (SIZE (3)) OF MCC-MNC-Digit
|
|
|
|
MNC ::= SEQUENCE (SIZE (2..3)) OF MCC-MNC-Digit
|
|
|
|
MCC-MNC-Digit ::= INTEGER (0..9)
|
|
|
|
RSRP-Range ::= INTEGER(0..97)
|
|
RSRQ-Range ::= INTEGER(0..34)
|
|
maxCellReport INTEGER ::= 8
|
|
|
|
WlanAPInformation ::= SEQUENCE { -- as per [IEEE 802.11]
|
|
apMACAddress BIT STRING(SIZE (48)), -- AP MAC Address
|
|
apTransmitPower INTEGER(-127..128) OPTIONAL, -- AP transmit power in dbm
|
|
apAntennaGain INTEGER(-127..128) OPTIONAL, -- AP antenna gain in dBi
|
|
apSignaltoNoise INTEGER(-127..128) OPTIONAL, -- AP S/N received at SET
|
|
apDeviceType ENUMERATED {wlan802-11a(0), wlan802-11b(1), wlan802-11g(2), ..., wlan802-11n(3), wlan802-11ac(4), wlan802-11ad(5)} OPTIONAL,
|
|
apSignalStrength INTEGER(-127..128) OPTIONAL, -- AP signal strength at SET
|
|
apChannelFrequency INTEGER(0..256) OPTIONAL, -- AP channel/frequency of Tx/Rx
|
|
apRoundTripDelay RTD OPTIONAL, -- Round Trip Delay between SET and AP
|
|
setTransmitPower INTEGER(-127..128) OPTIONAL, -- SET transmit power in dBm
|
|
setAntennaGain INTEGER (-127..128) OPTIONAL, -- SET antenna gain in dBi
|
|
setSignaltoNoise INTEGER (-127..128) OPTIONAL, -- SET S/N received at AP
|
|
setSignalStrength INTEGER(-127..128) OPTIONAL, -- SET signal strength at AP
|
|
apReportedLocation ReportedLocation OPTIONAL, -- AP Location reported by AP (legacy encoding)
|
|
...,
|
|
apRepLocation RepLocation OPTIONAL, -- AP Location reported by AP
|
|
apSignalStrengthDelta INTEGER (0..1) OPTIONAL, -- see Table 41
|
|
apSignaltoNoiseDelta INTEGER (0..1) OPTIONAL, -- see Table 41
|
|
setSignalStrengthDelta INTEGER (0..1) OPTIONAL, -- see Table 41
|
|
setSignaltoNoiseDelta INTEGER (0..1) OPTIONAL, -- see Table 41
|
|
operatingClass INTEGER (0..255) OPTIONAL,
|
|
apSSID OCTET STRING (SIZE (1..32)) OPTIONAL,
|
|
apPHYType ENUMERATED {unknown(0), any(1), fhss(2), dsss(3), irbaseband(4), ofdm(5), hrdsss(6), erp(7), ht(8), ihv(9), ...} OPTIONAL,
|
|
setMACAddress BIT STRING(SIZE (48)) OPTIONAL -- MAC Address used by SET to connect to AP
|
|
}
|
|
|
|
RTD ::= SEQUENCE { -- as per [IEEE 802.11]
|
|
rTDValue INTEGER(0..16777216), -- measured RTD value corresponding to
|
|
-- about 500km in units of 1/10 of nanoseconds
|
|
rTDUnits RTDUnits, -- units of RTD
|
|
rTDAccuracy INTEGER(0..255) OPTIONAL, -- RTD accuracy
|
|
...}
|
|
|
|
RTDUnits ::= ENUMERATED {
|
|
microseconds(0), hundredsofnanoseconds(1), tensofnanoseconds(2), nanoseconds(3), tenthsofnanoseconds(4), ...}
|
|
|
|
ReportedLocation ::= SEQUENCE { -- as per [IEEE 802.11v]
|
|
locationEncodingDescriptor LocationEncodingDescriptor,
|
|
locationData LocationData, -- location data field
|
|
...}
|
|
|
|
LocationEncodingDescriptor ::= ENUMERATED {
|
|
lci (0), asn1(1), ...}
|
|
|
|
LocationData ::= SEQUENCE {
|
|
locationAccuracy INTEGER(0..4294967295) OPTIONAL,
|
|
locationValue OCTET STRING (SIZE(1..128)),
|
|
...}
|
|
|
|
RepLocation ::= CHOICE {
|
|
lciLocData LciLocData, -- location data field as per [IEEE 802.11] and [RFC 3825]
|
|
... -- future formats may be added here
|
|
}
|
|
|
|
LciLocData ::= SEQUENCE {
|
|
locationDataLCI LocationDataLCI OPTIONAL,
|
|
...}
|
|
|
|
LocationDataLCI ::= SEQUENCE {
|
|
latitudeResolution BIT STRING (SIZE (6)),
|
|
latitude BIT STRING (SIZE (34)),
|
|
longitudeResolution BIT STRING (SIZE (6)),
|
|
longitude BIT STRING (SIZE (34)),
|
|
altitudeType BIT STRING (SIZE (4)),
|
|
altitudeResolution BIT STRING (SIZE (6)),
|
|
altitude BIT STRING (SIZE (30)),
|
|
datum BIT STRING (SIZE (8)),
|
|
...}
|
|
|
|
WimaxBSInformation ::= SEQUENCE {
|
|
wimaxBsID WimaxBsID, -- WiMax serving base station ID
|
|
wimaxRTD WimaxRTD OPTIONAL, -- Round Trip Delay measurements
|
|
wimaxNMRList WimaxNMRList OPTIONAL, -- Network measurements
|
|
...}
|
|
|
|
WimaxBsID ::= SEQUENCE {
|
|
bsID-MSB BIT STRING (SIZE(24)) OPTIONAL,
|
|
bsID-LSB BIT STRING (SIZE(24)),
|
|
...}
|
|
-- if only LSB is present, MSB is assumed to be identical to the current serving BS or clamped on network value
|
|
|
|
WimaxRTD ::= SEQUENCE {
|
|
rtd INTEGER (0..65535), -- Round trip delay of serving BS in units of 10 ns
|
|
rTDstd INTEGER (0..1023) OPTIONAL, -- Standard deviation of round trip delay in units of 10 ns
|
|
...}
|
|
|
|
WimaxNMRList ::= SEQUENCE (SIZE (1..maxWimaxBSMeas)) OF WimaxNMR
|
|
|
|
WimaxNMR ::= SEQUENCE {
|
|
wimaxBsID WimaxBsID, -- WiMax BS ID for the measurement
|
|
relDelay INTEGER (-32768..32767) OPTIONAL, -- Relative delay for this neighbouring BSs to the serving cell in units of 10 ns
|
|
relDelaystd INTEGER (0..1023) OPTIONAL, -- Standard deviation of Relative delay in units of 10 ns
|
|
rssi INTEGER (0..255) OPTIONAL, -- RSSI in 0.25 dBm steps, starting from -103.75 dBm
|
|
rSSIstd INTEGER (0..63) OPTIONAL, -- Standard deviation of RSSI in dB
|
|
bSTxPower INTEGER (0..255) OPTIONAL, -- BS transmit power in 0.25 dBm steps, starting from -103.75 dBm
|
|
cinr INTEGER (0..255) OPTIONAL, -- in dB
|
|
cINRstd INTEGER (0..63) OPTIONAL, -- Standard deviation of CINR in dB
|
|
bSLocation ReportedLocation OPTIONAL, -- Reported location of the BS
|
|
...}
|
|
|
|
maxWimaxBSMeas INTEGER ::= 32
|
|
|
|
UTRAN-GPSReferenceTimeAssistance ::= SEQUENCE {
|
|
utran-GPSReferenceTime UTRAN-GPSReferenceTime,
|
|
gpsReferenceTimeUncertainty INTEGER (0..127) OPTIONAL,
|
|
utranGPSDriftRate UTRANGPSDriftRate OPTIONAL}
|
|
|
|
UTRAN-GPSReferenceTime ::= SEQUENCE {
|
|
-- For utran-GPSTimingOfCell values above 2322431999999 are not used in this version of the specification. Actual value utran-GPSTimingOfCell = (ms-part * 4294967296) + ls-part used on the downlink i.e. sent from the SLP to the SET
|
|
utran-GPSTimingOfCell SEQUENCE {
|
|
ms-part INTEGER (0..1023),
|
|
ls-part INTEGER (0..4294967295)},
|
|
modeSpecificInfo CHOICE {
|
|
fdd SEQUENCE {
|
|
referenceIdentity PrimaryCPICH-Info},
|
|
tdd SEQUENCE {
|
|
referenceIdentity CellParametersID}} OPTIONAL,
|
|
sfn INTEGER (0..4095)}
|
|
|
|
UTRANGPSDriftRate ::= ENUMERATED {
|
|
utran-GPSDrift0, utran-GPSDrift1, utran-GPSDrift2,
|
|
utran-GPSDrift5, utran-GPSDrift10, utran-GPSDrift15,
|
|
utran-GPSDrift25, utran-GPSDrift50, utran-GPSDrift-1,
|
|
utran-GPSDrift-2, utran-GPSDrift-5, utran-GPSDrift-10,
|
|
utran-GPSDrift-15, utran-GPSDrift-25, utran-GPSDrift-50}
|
|
|
|
UTRAN-GPSReferenceTimeResult ::= SEQUENCE {
|
|
-- For ue-GPSTimingOfCell values above 37158911999999 are not used in this version of the specification. Actual value utran-GPSTimingOfCell = (ms-part * 4294967296) + ls-part used on the uplink i.e. reported by the SET to the SLP
|
|
set-GPSTimingOfCell SEQUENCE {
|
|
ms-part INTEGER (0.. 16383),
|
|
ls-part INTEGER (0..4294967295)},
|
|
modeSpecificInfo CHOICE {
|
|
fdd SEQUENCE {
|
|
referenceIdentity PrimaryCPICH-Info},
|
|
tdd SEQUENCE {
|
|
referenceIdentity CellParametersID}} OPTIONAL,
|
|
sfn INTEGER (0..4095),
|
|
gpsReferenceTimeUncertainty INTEGER (0..127) OPTIONAL,
|
|
...}
|
|
|
|
UTRAN-GANSSReferenceTimeAssistance ::= SEQUENCE {
|
|
ganssDay INTEGER (0..8191) OPTIONAL,
|
|
ganssTimeID INTEGER (0..15),
|
|
utran-GANSSReferenceTime UTRAN-GANSSReferenceTime,
|
|
utranGANSSDriftRate UTRANGANSSDriftRate OPTIONAL}
|
|
|
|
UTRAN-GANSSReferenceTime ::= SEQUENCE {
|
|
|
|
ganssTOD INTEGER (0..86399),
|
|
utran-GANSSTimingOfCell INTEGER (0..3999999)OPTIONAL,
|
|
modeSpecificInfo CHOICE {
|
|
fdd SEQUENCE {
|
|
referenceIdentity PrimaryCPICH-Info},
|
|
tdd SEQUENCE {
|
|
referenceIdentity CellParametersID}} OPTIONAL,
|
|
sfn INTEGER (0..4095),
|
|
ganss-TODUncertainty INTEGER (0..127) OPTIONAL,
|
|
...}
|
|
|
|
UTRANGANSSDriftRate ::= ENUMERATED {
|
|
utran-GANSSDrift0, utran-GANSSDrift1, utran-GANSSDrift2,
|
|
utran-GANSSDrift5, utran-GANSSDrift10, utran-GANSSDrift15,
|
|
utran-GANSSDrift25, utran-GANSSDrift50, utran-GANSSDrift-1,
|
|
utran-GANSSDrift-2, utran-GANSSDrift-5, utran-GANSSDrift-10,
|
|
utran-GANSSDrift-15, utran-GANSSDrift-25, utran-GANSSDrift-50}
|
|
|
|
UTRAN-GANSSReferenceTimeResult ::= SEQUENCE {
|
|
ganssTimeID INTEGER (0..15),
|
|
set-GANSSReferenceTime SET-GANSSReferenceTime,
|
|
...}
|
|
|
|
SET-GANSSReferenceTime ::= SEQUENCE {
|
|
-- Actual value [ns] = (ms-Part * 4294967296 + ls-Part) * 250
|
|
-- Actual values [ns] > 86399999999750 are reserved and are considered a
|
|
-- protocol error
|
|
set-GANSSTimingOfCell SEQUENCE {
|
|
ms-part INTEGER (0..80),
|
|
ls-part INTEGER (0..4294967295)} OPTIONAL,
|
|
modeSpecificInfo CHOICE {
|
|
fdd SEQUENCE {
|
|
referenceIdentity PrimaryCPICH-Info},
|
|
tdd SEQUENCE {
|
|
referenceIdentity CellParametersID}} OPTIONAL,
|
|
sfn INTEGER (0..4095),
|
|
ganss-TODUncertainty INTEGER (0..127) OPTIONAL,
|
|
...}
|
|
|
|
GNSSPosTechnology ::= SEQUENCE {
|
|
gps BOOLEAN,
|
|
galileo BOOLEAN,
|
|
sbas BOOLEAN,
|
|
modernized-gps BOOLEAN,
|
|
qzss BOOLEAN,
|
|
glonass BOOLEAN,
|
|
...,
|
|
bds BOOLEAN OPTIONAL}
|
|
|
|
-- indicates MS support for particular GANSS signals and frequencies coding according to parameter definition in section 10.9
|
|
|
|
GANSSSignals ::= BIT STRING {
|
|
signal1 (0),
|
|
signal2 (1),
|
|
signal3 (2),
|
|
signal4 (3),
|
|
signal5 (4),
|
|
signal6 (5),
|
|
signal7 (6),
|
|
signal8 (7)} (SIZE (1..8))
|
|
|
|
SPCSETKey ::= BIT STRING(SIZE (128))
|
|
|
|
SPCTID ::= SEQUENCE {
|
|
rand BIT STRING(SIZE (128)),
|
|
slpFQDN FQDN,
|
|
...}
|
|
|
|
SPCSETKeylifetime ::= INTEGER (1..24) -- units in hours
|
|
|
|
CauseCode ::= ENUMERATED {
|
|
servingNetWorkNotInAreaIdList(0), sETCapabilitiesChanged(1), noSUPLCoverage(2), ...}
|
|
|
|
ThirdParty ::= SEQUENCE (SIZE (1..64)) OF ThirdPartyID
|
|
|
|
ThirdPartyID ::= CHOICE {
|
|
logicalName IA5String(SIZE (1..1000)),
|
|
msisdn OCTET STRING(SIZE (8)),
|
|
emailaddr IA5String(SIZE (1..1000)),
|
|
-- sip-uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~%#@?")) (SIZE (1..255)),
|
|
-- ims-public-identity VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~%#@?")) (SIZE (1..255)),
|
|
-- # asn2wrs does not handle '%' in the restricted string
|
|
sip-uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~#@?")) (SIZE (1..255)),
|
|
ims-public-identity VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~#@?")) (SIZE (1..255)),
|
|
min BIT STRING(SIZE (34)), -- coded according to TIA-553
|
|
mdn OCTET STRING(SIZE (8)),
|
|
-- uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | "./-_~%#")) (SIZE (1..255)),
|
|
uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | "./-_~#")) (SIZE (1..255)),
|
|
...}
|
|
|
|
ApplicationID ::= SEQUENCE {
|
|
appProvider IA5String(SIZE (1..24)), -- The application provider
|
|
appName IA5String(SIZE (1..32)), -- The application name
|
|
appVersion IA5String(SIZE (1..8)) OPTIONAL, -- The application version
|
|
...}
|
|
|
|
ReportingCap ::= SEQUENCE {
|
|
minInt INTEGER (1..3600), -- units in seconds
|
|
maxInt INTEGER (1..1440) OPTIONAL, -- units in minutes
|
|
repMode RepMode,
|
|
batchRepCap BatchRepCap OPTIONAL, -- only used for batch and quasi real time reporting
|
|
...}
|
|
|
|
RepMode ::= SEQUENCE {
|
|
realtime BOOLEAN,
|
|
quasirealtime BOOLEAN,
|
|
batch BOOLEAN,
|
|
...}
|
|
|
|
BatchRepCap ::= SEQUENCE {
|
|
report-position BOOLEAN, -- set to "true" if reporting of position is supported
|
|
report-measurements BOOLEAN, -- set to "true" if reporting of measurements is supported
|
|
max-num-positions INTEGER (1..1024) OPTIONAL,
|
|
max-num-measurements INTEGER (1..1024) OPTIONAL,
|
|
...}
|
|
|
|
Coordinate::= SEQUENCE {
|
|
latitudeSign ENUMERATED {north(0), south(1)},
|
|
latitude INTEGER(0..8388607),
|
|
longitude INTEGER(-8388608..8388607)} -- Coding as in [3GPP GAD]
|
|
|
|
CircularArea ::= SEQUENCE {
|
|
coordinate Coordinate,
|
|
radius INTEGER(1..1000000), -- radius in meters
|
|
radius-min INTEGER(1..1000000) OPTIONAL, -- hysteresis minimum radius
|
|
radius-max INTEGER(1..1500000) OPTIONAL} -- hysteresis maximum radius
|
|
|
|
EllipticalArea ::= SEQUENCE {
|
|
coordinate Coordinate,
|
|
semiMajor INTEGER(1..1000000), -- units in meters
|
|
semiMajor-min INTEGER(1..1000000) OPTIONAL, -- hysteresis minimum semiMajor
|
|
semiMajor-max INTEGER(1..1500000) OPTIONAL, -- hysteresis maximum semiMajor
|
|
semiMinor INTEGER(1..1000000), -- units in meters
|
|
semiMinor-min INTEGER(1..1000000) OPTIONAL, -- hysteresis minimum semiMinor
|
|
semiMinor-max INTEGER(1..1500000) OPTIONAL, -- hysteresis maximum semiMinor
|
|
angle INTEGER(0.. 179)} -- units in degrees. The angle is defined as the angle between the semi-major axis and North, increasing in a clockwise direction. An angle of 0 represents an ellipse with the semi-major axis pointing North/South while an angle of 90 represents an ellipse with the semi-major axis pointing East/West.
|
|
|
|
PolygonArea ::= SEQUENCE {
|
|
polygonDescription PolygonDescription,
|
|
polygonHysteresis INTEGER(1..100000) OPTIONAL} --units in meters
|
|
|
|
PolygonDescription ::= SEQUENCE (SIZE (3..15)) OF Coordinate
|
|
|
|
END
|
|
|