Cell Broadcast » History » Version 19
laforge, 09/13/2019 08:23 PM
add graphviz diagram
1 | 1 | laforge | h1. Cell Broadcast |
---|---|---|---|
2 | 7 | fixeria | |
3 | {{>toc}} |
||
4 | 1 | laforge | |
5 | Normally, all user plane data in GSM/GPRS networks are sent in point-to-point channels from the network to the user. Those are called "dedicated" radio channels whcih exist between the network and one given phone/subscriber at a time. |
||
6 | |||
7 | Cell Broadcast is an exception to that rule. It permits user data (so-called SMS-CB data) to be broadcast by the network in a way that can be received by all phones in the coverage area of the given [[BTS]] simultaneously. |
||
8 | |||
9 | More high-level information can be found at https://en.wikipedia.org/wiki/Cell_Broadcast and the related specification is found at "3GPP TS 23.041 Technical realization of Cell Broadcast Service (CBS)":http://www.3gpp.org/ftp/Specs/html-info/23041.htm |
||
10 | |||
11 | 16 | laforge | *NOTE: In 3G/UMTS networks, Cell Broadcast is called [[Service_Area_Broadcast]] and we have a dedicated wiki page for it.* |
12 | |||
13 | 19 | laforge | {{graphviz_link() |
14 | digraph G { |
||
15 | BTS0 [label="BTS"]; |
||
16 | BTS1 [label="BTS"]; |
||
17 | BTS10 [label="BTS"]; |
||
18 | BTS11 [label="BTS"]; |
||
19 | BSC1 [label="BSC"]; |
||
20 | |||
21 | User -> CBC [label="proprietaty"]; |
||
22 | CBC -> BSC [label="CBSP"]; |
||
23 | CBC -> BSC1 [label="CBSP"]; |
||
24 | BSC -> BTS0 [label="RSL"]; |
||
25 | BSC -> BTS1 [label="RSL"]; |
||
26 | BSC1 -> BTS10 [label="RSL"]; |
||
27 | BSC1 -> BTS11 [label="RSL"]; |
||
28 | BTS0 -> MS [label="CBCH"]; |
||
29 | } |
||
30 | }} |
||
31 | |||
32 | 2 | laforge | h2. Use Cases |
33 | 1 | laforge | |
34 | 2 | laforge | Cell Broadcast was used for various different use cases primarily in the 1990ies and early 2000s, including |
35 | * advertisement of the GPS position of the cell tower you're currently camping on |
||
36 | * advertisement of the calling codes of your current "home zone", i.e. a "lower cost short distance" call zone travelling with you as you roam around. |
||
37 | |||
38 | More recently, SMS-CB is seeing some uptake by various desaster warning systems, such as |
||
39 | * CMAS (Commercial Mobile Alert System), later renamed to WEA ("Wireless Emergency Alerts":https://en.wikipedia.org/wiki/Wireless_Emergency_Alerts) in the US. |
||
40 | * EU-Alert in the European union |
||
41 | * Messer Ishi (Rocket Alert) in Israel |
||
42 | * ETWS (Earthquake and Tsunami Warning System) in Japan |
||
43 | * KPAS (Korean Public Alert System) |
||
44 | |||
45 | 10 | laforge | h2. Osmocom Cell Broadcast support |
46 | 1 | laforge | |
47 | 18 | laforge | * [[OsmoBTS:]] implements |
48 | ** the CBCH channel (both BASIC and EXTENDED) in the SDCCH/4 and SDCCH/8 |
||
49 | ** the "SMS BROADCAST COMMAND" Message in RSL according to Section 8.5.8 of 3GPP TS 08.58 |
||
50 | ** the "CBCH LOAD INDICATION" Message in RSL, which allows the BSC to perform flow control of CBCH messages |
||
51 | * [[OsmoNITB:]] and [[OsmoBSC:]] implement a VTY command @bts <0-255> smscb-command <1-4> HEXSTRING@ to send a given hex-formatted cell broadcast message to a specified BTS (this is more a hack for manual testing) |
||
52 | 1 | laforge | ** you (obviously) first need to enable a timeslot/channel combination on the BTS that actually includes a CBCH, i.e. ccch+sdcch4+cbch or sdcch8+cbch |
53 | 18 | laforge | * [[OsmoBSC:]] implements |
54 | ** the scheduling / allocation of CBCH resources in presence of possibly many SMSCB messages, taking into account their message size, repetition period, duration |
||
55 | ** the CBSP protocol according to 3GPP TS 48.049 for interaction with a CBC |
||
56 | ** CBCH flow control based on incoming CBCH LOAD INDICATION via RSL from BTSs |
||
57 | ** transmission of SMSCB using SMS BROADCAST COMMAND via RSL to BTSs |
||
58 | * [[OsmoCBC:]] implements |
||
59 | * FIXME |
||
60 | 19 | laforge | |
61 | 2 | laforge | |
62 | 1 | laforge | |
63 | |||
64 | h3. How to test/use it |
||
65 | |||
66 | 18 | laforge | h4. Using recent OsmoBSC and OsmoCBC |
67 | |||
68 | h5. make sure your related BTS is configured to use a channel combination with CBCH |
||
69 | |||
70 | For using a combined CCCH with SDCCH/4 and CBCH you can use the following example snippet as part of osmo-bsc.cfg: |
||
71 | |||
72 | <pre> |
||
73 | network |
||
74 | bts 0 |
||
75 | trx 0 |
||
76 | timeslot 0 |
||
77 | phys_chan_config CCCH+SDCCH4+CBCH |
||
78 | </pre> |
||
79 | |||
80 | h5. Setting up OsmoCBC |
||
81 | |||
82 | FIXME. |
||
83 | |||
84 | h4. Using the "manual hack" via BSC/NITB VTY command |
||
85 | |||
86 | !osmocom-cbs.png! |
||
87 | |||
88 | This is sufficient for manual transmission of cell-broadcast messages in a lab environment or in small networks. The functionality has been developed and "used at the 31st annual CCC congress (31C3) to deliver spoofed _Presidential Level Alert_ messages":https://twitter.com/2b_as/status/549695235207737344/photo/1 |
||
89 | |||
90 | 10 | laforge | You need to perform two steps: |
91 | |||
92 | 18 | laforge | h5. make sure your related BTS is configured to use a channel combination with CBCH |
93 | 10 | laforge | |
94 | For using a combined CCCH with SDCCH/4 and CBCH you can use the following example snippet as part of osmo-bsc.cfg: |
||
95 | |||
96 | <pre> |
||
97 | network |
||
98 | 1 | laforge | bts 0 |
99 | 10 | laforge | trx 0 |
100 | timeslot 0 |
||
101 | phys_chan_config CCCH+SDCCH4+CBCH |
||
102 | </pre> |
||
103 | |||
104 | 18 | laforge | h5. telnet to osmo-bsc at port 4242, and enter something like |
105 | 1 | laforge | |
106 | <pre> |
||
107 | enable |
||
108 | bts 0 smscb-command 1 001000320f1141660c344dd3cba09a0c |
||
109 | </pre> |
||
110 | 10 | laforge | |
111 | 1 | laforge | where "1" is the number of blocks required (each 22 bytes need one block) |
112 | 10 | laforge | and the hex-dump at the end is the encoded GSM 04.12 message to be broadcast. |
113 | |||
114 | |||
115 | 3 | laforge | |
116 | 2 | laforge | h2. Message Structure |
117 | |||
118 | * Message has maximum 15 pages |
||
119 | * Each page is 82 bytes of data, resulting in 93 characters in GSM 7-bit default alphabet |
||
120 | * Messges are broadcast on logical channels (more like an address) |
||
121 | * Subscribers can activate/deactivate selective addresses |
||
122 | |||
123 | h2. Further Reading |
||
124 | |||
125 | * ITU-T SG2 (Standardization of CB Channels) |
||
126 | * ETSI 102 444 |
||
127 | 9 | laforge | * "3GPP TS 23.041 GSM: Technical realization of Cell Broadcast Service (CBS)":https://www.etsi.org/deliver/etsi_ts/123000_123099/123041/15.02.00_60/ts_123041v150200p.pdf |
128 | * "3GPP TS 48.049 GSM: Baste Station Controller - Cell Broadcast Centre (BSC-CBC) interface specification; Cell Broadcast Service Protocol (CBSP)":https://www.etsi.org/deliver/etsi_ts/148000_148099/148049/15.00.00_60/ts_148049v150000p.pdf |
||
129 | 2 | laforge | * "3GPP TS 22.268 PWS: Public Warning System (PWS) requirements":http://www.etsi.org/deliver/etsi_ts/122200_122299/122268/14.00.00_60/ts_122268v140000p.pdf |
130 | 1 | laforge | * "3GPP TS 44.012 GSM: Short Message Service Cell Broadcast (SMSCB) support on the mobile radio interface":https://www.etsi.org/deliver/etsi_ts/144000_144099/144012/15.00.00_60/ts_144012v150000p.pdf |
131 | 14 | laforge | * "Whitepaper on Displaying Cell Broadcast":https://www.one2many.eu/assets/files/19_displaying-cb-messages.pdf |
132 | 2 | laforge | |
133 | h3. EU-Alert |
||
134 | |||
135 | 13 | laforge | * "ETSI/EMTEL TS 102 900":https://www.etsi.org/deliver/etsi_ts/102900_102999/102900/01.01.01_60/ts_102900v010101p.pdf |
136 | 2 | laforge | |
137 | h3. CMAS |
||
138 | |||
139 | 12 | laforge | * "FCC 08-99: First Report and Order":https://www.one2many.eu/assets/files/16_first-report-and-order.pdf |
140 | * "FCC 08-164: Second Report and Order":https://www.one2many.eu/assets/files/17_second-report-and-order.pdf |
||
141 | * "FCC 08-184: Third Report and Order":https://www.one2many.eu/assets/files/18_third-report-and-order.pdf |
||
142 | 15 | laforge | * "ATIS/TIA Standard J-STD-100 (Mobile Device Behavior)":https://global.ihs.com/doc_detail.cfm?&document_name=TIA%20J-STD-100 |
143 | * "ATIS/TIA Standard J-STD-101 (Federal Alert Gateway to CMSP Gateway Interface Spec)":https://global.ihs.com/doc_detail.cfm?&document_name=TIA%20J-STD-101 |
||
144 | * "ATIS/TIA Standard J-STD-102 (Federal Alert Gateway to CMSP Gateway Interface Test Spec)":https://global.ihs.com/doc_detail.cfm?&document_name=TIA%20J-STD-102 |
||
145 | 14 | laforge | * "ATIS 0700006 eWEA via GSM/UMTS Cell Broadcast Service Spec":https://global.ihs.com/doc_detail.cfm?document_name=ATIS%200700006 |
146 | * "ATIS 0700007 Implementation Guidelines and Best Practises for GSM/UMTS Cell Broadcast Service":https://global.ihs.com/doc_detail.cfm?document_name=ATIS%200700007 |
||
147 | * "ATIS 0700008 Cell Broadcast Entity (CBE)-to-Cell Broadcast Center (CBC) Interface Specification":https://global.ihs.com/doc_detail.cfm?document_name=ATIS%200700008 |
||
148 | * "ATIS 0700010 Enhanced Wireless Emergency Alert (eWEA) via EPS Public Warning System Specification":https://global.ihs.com/doc_detail.cfm?document_name=ATIS%200700010 |
||
149 | 2 | laforge | |
150 | h3. ETWS |
||
151 | 11 | laforge | |
152 | * "3GPP TS 22.168: ETWS Requirements Stage 1":https://www.etsi.org/deliver/etsi_ts/122100_122199/122168/08.03.00_60/ts_122168v080300p.pdf |
||
153 | * various modifications to TS 23.038, 23.401, 25.304, 25.331, see http://www.3gpp.org/DynaReport/WiCr--370051.htm |
||
154 | 17 | laforge | |
155 | h2. Cell Broadcast in 3G/UMTS |
||
156 | |||
157 | See [[Service_Area_Broadcast]] |
||
158 | |||
159 | h3. Cell Broadcast in 4G/LTE |
||
160 | |||
161 | h4. SBc interface between CBC and MME |
||
162 | |||
163 | The interface is based on a ASN.1 based protocol called SBc-AP which is specified in "3GPP TS 29.168":https://www.etsi.org/deliver/etsi_ts/129100_129199/129168/15.01.00_60/ts_129168v150100p.pdf |
||
164 | |||
165 | The protocol operates over SCTP. Connections are initiated by the CBC to the MME, and the MME listens for SBcAP connections on SCTP port 29168. |