| [[smscb]] |
| == SMSCB (Cell Broadcast) |
| |
| OsmoBSC supports SMS Cell Broadcast (SMSCB) services (CBS). This |
| includes the CBSP protocol to interact with a CBC (Cell Broadcast |
| Centre) such as OsmoCBC, as well as the scheduling of SMSCB messages on |
| both the BASIC and EXTENDED CBCH and transmission of related RSL |
| messages to the attached BTS. |
| |
| More high-level information can be found at |
| https://en.wikipedia.org/wiki/Cell_Broadcast and the related |
| specification is <<3gpp-ts-23-041>>. |
| |
| In order to use SMSCB with OsmoBSC, you will need to |
| |
| * Configure OsmoBSC as either CBSP server or client |
| * Use a channel combination including a CBCH on the BTSs |
| |
| === Enabling a CBCH channel combination |
| |
| On the Um interface, SMSCB are transmitted via the CBCH (Cell Broadcast |
| Channel). The CBCH is a separate downlink-only logical channel which |
| must be activated on any of the BTSs requiring CBSP support. |
| |
| The channel combination is configured in the `timeslot` node of each TRX. |
| |
| The two `phys_chan_config` supporting CBCH are `CCCH+SDCCH4+CBCH` and |
| `SDCCH/8+CBCH`. Please note that the CBCH steals one of the SDCCH, so |
| a SDCCH/4 will only have three remaining SDCCH, and a SDCCH/8 will |
| have only seven remaining SDCCH. |
| |
| === Configuring the CBSP connection |
| |
| CBSP is the protocol between BSC and CBC. It operates over TCP. |
| |
| According to 3GPP TS 48.049, a BSC typically operates as a TCP server, |
| and the CBC connects as TCP client. This would require the CBC to have |
| out-of-band knowledge of all the BSCs in the network (and their IP |
| addresses). |
| |
| In order to comply with the specifications, OsmoBSC supports this mode |
| of operation as CBSP TCP server. However, to make network operation and |
| configuration more simple, it also can operate in TCP client mode, |
| connecting to the CBC. This way the BSCs need to know the CBC IP |
| address, but not vice-versa. |
| |
| The BSC can operate in either CBSP TCP server mode or CBSP TCP client mode. |
| |
| The CBC related configuration of OsmoBSC can be found in the `cbc` configuration |
| node of the VTY interface. |
| |
| The default port number for the CBSP server is 48049, according to the CBSP |
| specification. Hence it normally suffices to configure only the IP addresses for |
| the remote CBC server or the local CBSP server: |
| |
| .Example: Configure CBSP TCP client to connect to CBC at 1.2.3.4:48049 in osmo-bsc.cfg |
| ---- |
| cbc |
| mode client |
| client |
| remote-ip 1.2.3.4 |
| ---- |
| |
| In server mode, the default configuration is 127.0.0.1:48049, so it suffices to |
| set `mode server` to accept CBSP connections from localhost: |
| |
| ---- |
| cbc |
| mode server |
| ---- |
| |
| To also listen for inbound CBSP connections on all interfaces, both IPv4 and |
| IPv6: |
| |
| .Example: Configure CBSP TCP server to listen on all interfaces in osmo-bsc.cfg |
| ---- |
| cbc |
| mode server |
| server |
| local-ip :: |
| ---- |
| |
| Should non-standard port numbers be required, these can be configured with the |
| `client` / `local-port` or the `server` / `remote-port` settings. |
| |
| The `client` config also supports an explicit local bind for connecting to the |
| remote CBC, using `client` / `local-ip` and `local-port`. |
| |
| IP addresses for client and server can remain configured at the same time, and |
| the `mode` command can be used to switch between client and server operation. |
| The `mode` command takes immediate effect, no restart of OsmoBSC is required. |
| After changing `cbc` IP addresses in the telnet VTY, it is required to switch |
| `mode` to `disabled` and back to `client` or `server` to take effect. |
| |
| .Example: Disable the CBSP link in the telnet VTY |
| ---- |
| OsmoBSC> enable |
| OsmoBSC# configure terminal |
| OsmoBSC(config)# cbc |
| OsmoBSC(config-cbc)# mode disabled |
| OsmoBSC(config-cbc)# end |
| ---- |
| |
| For more details on the available configuration commands, please check the OsmoBSC VTY Reference. |