blob: 011aec413f543cb765e524fe80ec3158549a7953 [file] [log] [blame]
Harald Welted41b7c72019-06-13 09:41:58 +02001[[smscb]]
2== SMSCB (Cell Broadcast)
3
4OsmoBSC supports SMS Cell Broadcast (SMSCB) services (CBS). This
5includes the CBSP protocol to interact with a CBC (Cell Broadcast
6Centre) such as OsmoCBC, as well as the scheduling of SMSCB messages on
7both the BASIC and EXTENDED CBCH and transmission of related RSL
8messages to the attached BTS.
9
10More high-level information can be found at
11https://en.wikipedia.org/wiki/Cell_Broadcast and the related
12specification is <<3gpp-ts-23-041>>.
13
14In order to use SMSCB with OsmoBSC, you will need to
15
Neels Hofmeyrca979b72020-09-03 13:30:06 +020016* Configure OsmoBSC as either CBSP server or client
Harald Welted41b7c72019-06-13 09:41:58 +020017* Use a channel combination including a CBCH on the BTSs
18
19=== Enabling a CBCH channel combination
20
21On the Um interface, SMSCB are transmitted via the CBCH (Cell Broadcast
22Channel). The CBCH is a separate downlink-only logical channel which
23must be activated on any of the BTSs requiring CBSP support.
24
25The channel combination is configured in the `timeslot` node of each TRX.
26
27The two `phys_chan_config` supporting CBCH are `CCCH+SDCCH4+CBCH` and
28`SDCCH/8+CBCH`. Please note that the CBCH steals one of the SDCCH, so
29a SDCCH/4 will only have three remaining SDCCH, and a SDCCH/8 will
30have only seven remaining SDCCH.
31
32=== Configuring the CBSP connection
33
34CBSP is the protocol between BSC and CBC. It operates over TCP.
35
36According to 3GPP TS 48.049, a BSC typically operates as a TCP server,
37and the CBC connects as TCP client. This would require the CBC to have
38out-of-band knowledge of all the BSCs in the network (and their IP
39addresses).
40
41In order to comply with the specifications, OsmoBSC supports this mode
42of operation as CBSP TCP server. However, to make network operation and
43configuration more simple, it also can operate in TCP client mode,
Neels Hofmeyrca979b72020-09-03 13:30:06 +020044connecting to the CBC. This way the BSCs need to know the CBC IP
Harald Welted41b7c72019-06-13 09:41:58 +020045address, but not vice-versa.
46
Neels Hofmeyrca979b72020-09-03 13:30:06 +020047The BSC can operate in either CBSP TCP server mode or CBSP TCP client mode.
Harald Welted41b7c72019-06-13 09:41:58 +020048
49The CBC related configuration of OsmoBSC can be found in the `cbc` configuration
50node of the VTY interface.
51
Neels Hofmeyrca979b72020-09-03 13:30:06 +020052The default port number for the CBSP server is 48049, according to the CBSP
53specification. Hence it normally suffices to configure only the IP addresses for
54the remote CBC server or the local CBSP server:
55
56.Example: Configure CBSP TCP client to connect to CBC at 1.2.3.4:48049 in osmo-bsc.cfg
Harald Welted41b7c72019-06-13 09:41:58 +020057----
Neels Hofmeyrca979b72020-09-03 13:30:06 +020058cbc
59 mode client
60 client
61 remote-ip 1.2.3.4
Harald Welted41b7c72019-06-13 09:41:58 +020062----
63
Neels Hofmeyrca979b72020-09-03 13:30:06 +020064In server mode, the default configuration is 127.0.0.1:48049, so it suffices to
65set `mode server` to accept CBSP connections from localhost:
66
Harald Welted41b7c72019-06-13 09:41:58 +020067----
Neels Hofmeyrca979b72020-09-03 13:30:06 +020068cbc
69 mode server
Harald Welted41b7c72019-06-13 09:41:58 +020070----
71
Neels Hofmeyrca979b72020-09-03 13:30:06 +020072To also listen for inbound CBSP connections on all interfaces, both IPv4 and
73IPv6:
74
75.Example: Configure CBSP TCP server to listen on all interfaces in osmo-bsc.cfg
76----
77cbc
78 mode server
79 server
80 local-ip ::
81----
82
83Should non-standard port numbers be required, these can be configured with the
84`client` / `local-port` or the `server` / `remote-port` settings.
85
86The `client` config also supports an explicit local bind for connecting to the
87remote CBC, using `client` / `local-ip` and `local-port`.
88
89IP addresses for client and server can remain configured at the same time, and
90the `mode` command can be used to switch between client and server operation.
91The `mode` command takes immediate effect, no restart of OsmoBSC is required.
92After changing `cbc` IP addresses in the telnet VTY, it is required to switch
93`mode` to `disabled` and back to `client` or `server` to take effect.
94
95.Example: Disable the CBSP link in the telnet VTY
Harald Welted41b7c72019-06-13 09:41:58 +020096----
97OsmoBSC> enable
98OsmoBSC# configure terminal
99OsmoBSC(config)# cbc
Neels Hofmeyrca979b72020-09-03 13:30:06 +0200100OsmoBSC(config-cbc)# mode disabled
Harald Welted41b7c72019-06-13 09:41:58 +0200101OsmoBSC(config-cbc)# end
102----
103
104For more details on the available configuration commands, please check the OsmoBSC VTY Reference.