4G/LTE - PWS/CBS

 

 

 

PWS Message Identifier

 

Message Identifier is an indicator showing the type of PWS message. It tells on 'Is this ETWS message ? or CMAS ?' or 'How urgent/server it is' etc. SIB messages carrying the PWS message has specific IE called 'messageIdentifier' as shown below to specify this identifier.

The field is only 16 bits long, but it decides most of what the UE does with a warning. It tells the UE whether the warning belongs to ETWS or to CMAS, whether the user may switch it off, and which language rules apply to it. I'll start with where the field sits in a real SIB. Then we go through the values, and we finish with the part of the range that 23.041 has filled in since the table on this page was drawn up.

Where does the Message Identifier sit in a warning SIB ?

Every warning SIB in LTE opens with the same two fields. The field messageIdentifier comes first and serialNumber comes second, in SIB10, SIB11 and SIB12 alike. The capture below is a SIB12, which carries CMAS, so its identifier has to fall inside the CMAS rows of the table further down.

Capture : SIB12 inside a BCCH-DL-SCH system information message, shown as a decoder tree. The values come from one recorded exchange and not from the specification.

BCCH-DL-SCH-Message ::= SEQUENCE
  +-message ::= CHOICE [c1]
    +-c1 ::= CHOICE [systemInformation]
      +-systemInformation ::= SEQUENCE
        +-criticalExtensions ::= CHOICE [systemInformation-r8]
          +-systemInformation-r8 ::= SEQUENCE [0]
            +-sib-TypeAndInfo ::= SEQUENCE OF SIZE(1..maxSIB[32]) [1]
            | +- ::= CHOICE [sib12-v920]
            |   +-sib12-v920 ::= SEQUENCE [10]
            |     +-messageIdentifier-r9 ::= BIT STRING SIZE(16) [0001000100010010]
            |     +-serialNumber-r9 ::= BIT STRING SIZE(16) [0011000000000000]
            |     +-warningMessageSegmentType-r9 ::= ENUMERATED [lastSegment]
            |     +-warningMessageSegmentNumber-r9 ::= INTEGER (0..63) [0]
            |     +-warningMessageSegment-r9 ::= OCTET STRING SIZE(ALIGNED)
                                                  [01C576597E2EBBC7F950A8D168341A8D46A3D168341
                                                   A8D46A3D168341A8D46A3D168341A8D46A3D168341A
                                                   8D46A3D168341A8D46A3D168341A8D46A3D168341A8
                                                   D46A3D168341A8D46A3D168341A8D46A3D1000A]
            |     +-dataCodingScheme-r9 ::= OCTET STRING SIZE(1) [01] OPTIONAL:Exist
            |     +-lateNonCriticalExtension ::= OCTET STRING OPTIONAL:Omit
            |     +-EXTENSION ::= SEQUENCE
            +-nonCriticalExtension ::= SEQUENCE OPTIONAL:Omit
  • sib12-v920 is the branch the CHOICE resolves to, so this is a CMAS notification. The -r9 suffix on every field shows that the IE dates from Release 9.
  • messageIdentifier-r9 ::= BIT STRING SIZE(16) [0001000100010010] reads as hex 1112, which is decimal 4370. The table below lists 4370 as a CMAS Presidential Level Alert.
  • serialNumber-r9 ::= BIT STRING SIZE(16) [0011000000000000] is hex 3000. The page PWS Serial Number takes those 16 bits apart.
  • warningMessageSegmentType-r9 ::= ENUMERATED [lastSegment] together with segment number 0 means that the whole warning fits in one segment.
  • warningMessageSegment-r9 is 84 octets long. The first octet, 01, says that the message has one page. The next 82 octets are that page in GSM 7 bit packing, and they decode to the text Emergency!! followed by carriage return padding. The last octet, 0A, says that 10 of the 82 octets carry real text.
  • dataCodingScheme-r9 ::= OCTET STRING SIZE(1) [01] is coding group 0000 with language 0001. 23.038 clause 5 reads that as English in the GSM 7 bit default alphabet, and the page DCS for CBS has the full table.

The decode also shows an empty EXTENSION entry after lateNonCriticalExtension. In the current definition, that extension position holds one field, warningAreaCoordinatesSegment-r15, and the field is optional. So the capture is still a valid SIB12 today. It simply carries no warning area coordinates.

Following is based on 36.331 v19.3.0 (Release 19)

SystemInformationBlockType12-r9 ::=	SEQUENCE {
	messageIdentifier-r9				BIT STRING (SIZE (16)),
	serialNumber-r9						BIT STRING (SIZE (16)),
	warningMessageSegmentType-r9		ENUMERATED {notLastSegment, lastSegment},
	warningMessageSegmentNumber-r9		INTEGER (0..63),
	warningMessageSegment-r9			OCTET STRING,
	dataCodingScheme-r9					OCTET STRING (SIZE (1))		OPTIONAL,	-- Cond Segment1
	lateNonCriticalExtension			OCTET STRING					OPTIONAL,
	...,
	[[	warningAreaCoordinatesSegment-r15		OCTET STRING	OPTIONAL	-- Need OR
	]]
}

36.331 does not define the value of the field itself. Its field description maps the 16 bits onto the Message Identifier IE of 36.413 clause 9.2.1.44, and from there onto 23.041 clause 9.4.3.2.1. That clause points back to clause 9.4.1.2.2 for the structure and the value range. So the cell broadcast table below is also the table that applies to LTE.

The bit order is simple. The leading bit of the BIT STRING is bit 7 of the first octet, and the trailing bit is bit 0 of the second octet. The string therefore reads from left to right as an ordinary 16 bit number, and 23.041 writes the first octet first in hex. For example, 0001 0001 0001 0010 is 1112 in hex.

  • Every warning SIB opens with the identifier : SIB10, SIB11 and SIB12 all start with messageIdentifier, followed by serialNumber.
  • RRC only carries the value : 36.331 defines its meaning by reference to 36.413 and to 23.041 clause 9.4.1.2.2.
  • The bits read in normal order : the leading bit is bit 7 of the first octet, so the binary string converts to hex directly.
  • This capture is a Presidential Level Alert : hex 1112 is 4370, the highest CMAS level.

Which values belong to ETWS and which to CMAS ?

The 16 bit space is shared by all of cell broadcast, and PWS uses only a small window of it. 23.041 states that networks shall only use Message Identifiers from 4352 to 6399, hex 1100 to 18FF, for the Public Warning System. The table below covers the start of that window, where ETWS and CMAS were first placed.

Read the hex column against a capture, because a decoder prints the field in binary or in hex. The decimal column is the one a phone menu uses. 23.041 requires every value that is settable by MMI to be entered in its decimal form.

 

< Based on 23.041-9.4.1.2.2 Message Identifier >

Message ID (HEX)

Message ID (DEC)

PWS Type

Description

1100

4352

ETWS/CBS

Earthquake Warning Message

1101

4353

ETWS/CBS

Tsunami Warning Message

1102

4354

ETWS/CBS

Earthquake and Tsunami combined Warning Message

1103

4355

ETWS/CBS

Test Message (UE may or may not discard this)

1104

4356

ETWS/CBS

Messages related to other emergency types

1105-1107

4357-4359

ETWS/CBS

Future Extension

1112

4370

CMAS/CBS

Presidential Level Alerts

1113

4371

CMAS/CBS

Extreme Alerts with Severity of Extreme, Urgency of Immediate and Certainty of Observed

1114

4372

CMAS/CBS

Extreme Alerts with Severity of Extreme, Urgency of Immediate and Certainty of Likely

1115

4373

CMAS/CBS

Severe Alerts with Severity of Extreme, Urgency of Immediate and Certainty of Observed

1116

4374

CMAS/CBS

Severe Alerts with Severity of Extreme, Urgency of Immediate and Certainty of Likely

1117

4375

CMAS/CBS

Severe Alerts with Severity of Severe, Urgency of Immediate and Certainty of Observed

1118

4376

CMAS/CBS

Severe Alerts with Severity of Severe, Urgency of Immediate and Certainty of Likely

1119

4377

CMAS/CBS

Severe Alerts with Severity of Severe, Urgency of Expected and Certainty of Observed

111A

4378

CMAS/CBS

Severe Alerts with Severity of Severe, Urgency of Expected and Certainty of Likely

111B

4379

CMAS/CBS

Child Abduction Emergency (or Amber Alert)

111C

4380

CMAS/CBS

Required Monthly Test

111D

4381

CMAS/CBS

CMAS Exercise

111E

4382

CMAS/CBS

Operator defined use

111F-112F

4383-4399

CMAS/CBS

Future Extension

 

Two rows of this table need a note. For 1103, the test message, 23.041 is more definite than the row. The UE silently discards the message, and only a UE specially designed for testing purposes may display it. The CMAS range 111F to 112F is also no longer a future extension. The next section shows what it holds now.

  • ETWS starts at hex 1100 : 4352 to 4356 are the earthquake, tsunami, combined, test and other emergency identifiers.
  • CMAS starts at hex 1112 : 4370 is the Presidential Level Alert, and 4371 to 4378 split the Extreme and Severe alerts by severity, urgency and certainty.
  • Tests and exercises have their own identifiers : 4380 is the Required Monthly Test and 4381 the CMAS Exercise, so a UE can treat them differently from a real alert.
  • A normal UE never shows an ETWS test message : 23.041 says the UE silently discards identifier 4355.

What does the rest of the PWS range hold today ?

The table above stops at 4382. 23.041 v20.0.0 now fills most of the space between 4383 and 4448, and three kinds of addition account for nearly all of it. The first is a second copy of every CMAS identifier for additional languages. The second is a set of identifiers for UEs with no user interface. The third is the Chinese Public Alert System.

 

< Based on 23.041 v20.0.0 Table 9.4.1.2.2-1 >

Message ID (HEX)

Message ID (DEC)

Description

111F-112B

4383-4395

CMAS identifiers 4370 to 4382 repeated for additional languages

112C

4396

CMAS Public Safety Alerts

112D

4397

CMAS Public Safety Alerts for additional languages

112E

4398

CMAS State/Local WEA Test

112F

4399

CMAS State/Local WEA Test for additional languages

1130

4400

Geo-fencing trigger messages, for CMAS, EU-Alert and KPAS

1131-113B

4401-4411

Non-ETWS warning and test messages for UEs with no user interface and with ePWS functionality

113C-1146

4412-4422

ETWS warning and test messages for UEs with no user interface and with ePWS functionality

1147-1160

4423-4448

Chinese Public Alert System, CPAS, including reserved values

1161-18FF

4449-6399

Intended as PWS range in future versions of 23.041

 

The language copies explain the split in the CMAS rows. 23.041 treats 4370 to 4382, 4396 and 4398 as warnings in languages that are mandatory to receive. For these, the ME shall not use a language filter to decide whether to display the message. The additional language copies, 4383 to 4395, 4397 and 4399, are optional to receive. For those, the ME may filter by language, and the message is discarded when its language is not set to be displayed.

The same identifiers also serve other national systems. 23.041 maps 4370 to EU-Alert Level 1 and to Korean Public Alert System Class 0, as well as to the CMAS Presidential Level Alert. It maps 4371 to 4378 to EU-Alert Level 2 or Level 3 and to KPAS Class 1. So a UE in Europe or in Korea decodes the same number, and only the national name of the alert changes.

Outside the PWS window, one more range matters in a warning test. Hex A000 to AFFF, decimal 40960 to 45055, is operator specific. In a PLMN, the MS shall discard a message in that range unless it comes from the HPLMN, from an EHPLMN, or from a PLMN equivalent to either of them.

  • Every CMAS alert now has a second identifier : 4383 to 4395 repeat 4370 to 4382 for additional languages.
  • Language decides whether a UE may filter : the base identifiers are mandatory to receive, and the additional language copies are optional.
  • UEs without a screen have their own range : 4401 to 4422 serve UEs with no user interface and with ePWS functionality, split into a non-ETWS half and an ETWS half.
  • One number can have several national names : 4370 is a CMAS Presidential Level Alert, an EU-Alert Level 1 and a KPAS Class 0 message at the same time.

Reference

  • 23.041 : 3GPP - Technical realization of Cell Broadcast Service (CBS), v20.0.0. Clause 9.4.1.2.2 and Table 9.4.1.2.2-1 give the Message Identifier values, clause 9.4.1.2.3 the language rules, and clause 9.4.3.2.1 the E-UTRAN mapping.
  • 36.331 : 3GPP - E-UTRA; Radio Resource Control (RRC); Protocol specification, v19.3.0. SystemInformationBlockType12 and its field descriptions.
  • 23.038 : 3GPP - Alphabets and language-specific information, v20.0.0. Clause 5, the CBS Data Coding Scheme.