My ETSI HI via IP based network notes

From Got Opinion Wiki
Jump to navigation Jump to search

ETSI 102.232-1

A.2 ASN.1 specification notes

LI-PS-PDU {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) genHeader(1) version30(30)}

-- from ETSI TS 101 671
IRI-Parameters,
IRIsContent,
Location,
Network-Element-Identifier
FROM HI2Operations
{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) hi2(1) version17(17)}
-- from ETSI TS 101 671
-- from ETSI TS 102 232-5
IPMMCC,
IPMMIRI
FROM IPMultimediaPDU
{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) iPMultimedia(5) version10(10)}
-- from ETSI TS 102 232-5
PS-PDU ::= SEQUENCE
{
    pSHeader [1] PSHeader,
    payload  [2] Payload
}
PSHeader ::= SEQUENCE
{
    li-psDomainId                [0] OBJECT IDENTIFIER,
    lawfulInterceptionIdentifier [1] LawfulInterceptionIdentifier,
    -- As of ASN.1 version 26 this parameter is included from ETSI TS 103 280 [44]
    authorizationCountryCode     [2] PrintableString (SIZE (2)) OPTIONAL,
    -- see clause 5.2.3
    communicationIdentifier      [3] CommunicationIdentifier,
    sequenceNumber               [4] INTEGER (0..4294967295),
    timeStamp                    [5] GeneralizedTime OPTIONAL,
    -- see clause 5.2.6
    ...,
    interceptionPointID          [6] PrintableString (SIZE (1..8)) OPTIONAL,
    -- see clause 5.2.11
    microSecondTimeStamp         [7] MicroSecondTimeStamp OPTIONAL,
    timeStampQualifier           [8] TimeStampQualifier OPTIONAL
}
Payload ::= CHOICE
{
    iRIPayloadSequence     [0] SEQUENCE OF IRIPayload,
    cCPayloadSequence      [1] SEQUENCE OF CCPayload,
    -- Clause 6.2.3 explains how to include more than one payload in the same PDU
    tRIPayload             [2] TRIPayload,
    ...,
    hI1-Operation          [3] HI1-Operation,
    encryptionContainer    [4] EncryptionContainer,
    threeGPP-HI1-Operation [5] ThreeGPP-HI1-Operation,
    -- This structure may be functionally redundant with hI1-Operation from ETSI TS 101 671
    iLHIPayload            [6] SEQUENCE OF ILHIPayload,
    -- For typical use cases see ETSI TS 103 462
    hI4Payload             [7] SEQUENCE OF HI4Payload
}
CommunicationIdentifier ::= SEQUENCE
{
    networkIdentifier           [0] NetworkIdentifier,
    communicationIdentityNumber [1] INTEGER (0..4294967295) OPTIONAL,
    -- in case of transport of HI1 messages not required
    -- Mandatory for CC and IRI, with certain exceptions (see clause 5.2.4)
    deliveryCountryCode         [2] PrintableString (SIZE (2)) OPTIONAL,
    -- see clause 5.2.4
    ...,
    cINExtension                [3] CorrelationValues OPTIONAL
    -- To be used when a single INTEGER is not sufficient to identify
    -- a particular session (see clause 5.2.4)
}
IRIPayload ::= SEQUENCE
{
    iRIType              [0] IRIType OPTIONAL,
    -- See clause 5.2.10
    timeStamp            [1] GeneralizedTime OPTIONAL,
    -- For aggregated payloads (see clause 6.2.3)
    iRIContents          [2] IRIContents,
    ...,
    microSecondTimeStamp [3] MicroSecondTimeStamp OPTIONAL,
    -- For aggregated payloads (see clause 6.2.3)
    timeStampQualifier   [4] TimeStampQualifier OPTIONAL,
    sessionDirection     [5] PayloadDirection OPTIONAL,
    -- If the sessionDirection field is to be used for a given service then
    -- the exact meaning and use of the field will be described in the
    -- relevant service-specific details
    payloadDirection     [6] PayloadDirection OPTIONAL
    -- If the payloadDirection field is to be used for a given service then
    -- the exact meaning and use of the field will be described in the
    -- relevant service-specific details
}
IRIContents ::= CHOICE
-- Any of these choices may be commented out if they are not being used (see clause A.3)
{
    emailIRI                [1] EmailIRI,
    iPIRI                   [2] IPIRI,
    iPIRIOnly               [3] IPIRIOnly,
    uMTSIRI                 [4] UMTSIRI,
    eTSI671IRI              [5] ETSI671IRI,
    ...,
    l2IRI                   [6] L2IRI,
    l2IRIOnly               [7] L2IRIOnly,
    tARGETACTIVITYMONITOR-1 [8] TS101909201.TARGETACTIVITYMONITOR-1,
    tARGETACTIVITYMONITOR-2 [9] TS101909202.TARGETACTIVITYMONITOR,
    pstnIsdnIRI             [10] PstnIsdnIRI,
    iPMMIRI                 [11] IPMMIRI,
    lAESProtocol            [12] Laesp-j-std-025-b.LAESProtocol,
    cDMA2000LAESMessage     [13] CDMA2000CIIModule.CDMA2000LAESMessage,
    messagingIRI            [14] MessagingIRI,
    ePSIRI                  [15] EPSIRI,
    confIRI                 [16] ConfIRI,
    proseIRI                [17] ProSeIRI,
    gcseIRI                 [18] GcseIRI,
    threeGPP33128DefinedIRI [19] OCTET STRING
}

Source: ETSI TS 102 232-5 V3.12.1 (2020-08)

IPMMIRI ::= SEQUENCE
{
    iPMMIRIObjId         [0] RELATIVE-OID,
    iPMMIRIContents      [1] IPIRIContents,
    ...,
    targetLocation       [2] Location OPTIONAL,
    -- This common parameter is defined in ETSI TS 102 232-1 [2], the use of this parameter is described in clause 5.2.3
    additionalSignalling [3] SEQUENCE OF AdditionalSignalling OPTIONAL
    -- The use of this parameter is defined in clause 5.2.5
}

Source: ETSI TS 102 232-5 V3.12.1 (2020-08)

IPIRIContents ::= CHOICE
{
    originalIPMMMessage        [0] OCTET STRING,
    -- Copy of the IP MM signalling packet including the original IP and UDP/TCP headers
    sIPMessage                 [1] SIPMessage,
    -- Copy of the SIP content and the source and destination IP address
    h323Message                [2] H323Message,
    -- Copy of the H.323 content and the source and destination IP address
    ...,
    nationalIPMMIRIParameters  [3] NationalIPMMIRIParameters,
    -- This parameter is used according to national regulations
    -- This parameter shall be delivered as an IRI-Report-record
    xCAPMessage                [4] OCTET STRING,
    -- Copy of the XCAP message including all HTTP headers and contents
    iRIOnlyOriginalIPMMMessage [5] OCTET STRING,
    -- Copy of the IP MM signalling packet including the original IP and UDP/TCP headers
    -- see clause 5.2.6.
    iRIOnlySIPMessage          [6] SIPMessage
    -- Copy of the SIP content and the source and destination IP address
    -- see clause 5.2.6.
}
CCPayload ::= SEQUENCE
{
    payloadDirection     [0] PayloadDirection OPTIONAL,
    timeStamp            [1] GeneralizedTime OPTIONAL,
    -- For aggregated payloads (see clause 6.2.3)
    cCContents           [2] CCContents,
    ...,
    microSecondTimeStamp [3] MicroSecondTimeStamp OPTIONAL,
    -- For aggregated payloads (see clause 6.2.3)
    timeStampQualifier   [4] TimeStampQualifier OPTIONAL
}
CCContents ::= CHOICE
-- Any of these choices may be commented out if they are not being used, see clause A.3
{
    emailCC                [1] EmailCC,
    iPCC                   [2] IPCC,
    uMTSCC                 [4] OCTET STRING,
    ...,
    l2CC                   [6] L2CC,
    tTRAFFIC-1             [7] TS101909201.TTRAFFIC,
    cTTRAFFIC-1            [8] TS101909201.CTTRAFFIC,
    tTRAFFIC-2             [9] TS101909202.TTRAFFIC,
    cTTRAFFIC-2            [10] TS101909202.CTTRAFFIC,
    pstnIsdnCC             [11] PstnIsdnCC,
    iPMMCC                 [12] IPMMCC,
    cCIPPacketHeader       [13] CDMA2000CCModule.CCIPPacketHeader,
    messagingCC            [14] MessagingCC,
    ePSCC                  [15] OCTET STRING,
    uMTSCC-CC-PDU          [16] Umts-HI3-PS.CC-PDU,
    ePSCC-CC-PDU           [17] Eps-HI3-PS.CC-PDU,
    messagingMMCC          [18] MessagingMMCC,
    confCC-CC-PDU          [19] CONF-HI3-IMS.Conf-CC-PDU,
    voipCC-CC-PDU          [20] VoIP-HI3-IMS.Voip-CC-PDU,
    gcseCC-CC-PDU          [21] GCSE-HI3.Gcse-CC-PDU,
    cSvoice-CC-PDU         [22] CSvoice-HI3-IP.CSvoice-CC-PDU,
    threeGPP33128DefinedCC [23] OCTET STRING
}

Source: ETSI TS 102 232-5 V3.12.1 (2020-08)

IPMMCC ::= SEQUENCE
{
    iPMMCCObjId      [0] RELATIVE-OID,
    mMCCContents     [1] OCTET STRING,
    -- Copy of the multimediastream, i.e. all related RTP/RTCP, UDPTL or MSRP packets
    -- Each IPMMCC shall contain one intercepted packet
    -- Protocol of the multimedia packets is indicated by means of mMCCprotocol parameter
    -- mMCCContents was called rTPCCContents in earlier versions until v2.3.2.
    ...,
    frameType        [2] FrameType OPTIONAL,
    -- The availability of header information shall be signalled with the frameType parameter
    -- The module is defined as OPTIONAL because of backwards compatibility reasons
    -- For new implementations the module is MANDATORY to be used as defined in clause 5.5
    streamIdentifier [3] OCTET STRING OPTIONAL,
    -- Used to identify the media stream within the current CIN, typically in case of
    -- multiple media streams communications
    -- May be used to correlate each media stream with the relevant SDP media description of IRI
    -- May contain c= and m= lines extracts for instance
    mMCCprotocol     [4] MMCCprotocol OPTIONAL
    -- Used to identify the protocol of packets sent in MMCCContent (RTP, UDPTL, MSRP, etc.)
    -- Absence means mMCCContents contains RTP/RTCP packets
}
To My lawful interception notes