Commit Graph

205 Commits

Author SHA1 Message Date
Vadim Yanitskiy ced29cf94c power_control: implement BCCH carrier power reduction operation
The BCCH carrier (sometimes called C0) of a BTS shall maintain
discontinuous Downlink transmission at full power in order to
stay 'visible' to the mobile stations.  Because of that, early
versions of 3GPP TS 45.008 prohibited BS power reduction on C0.

However, starting from version 13.0.0 (2015-11) there is a feature
called 'BCCH carrier power reduction operation'.  This is a special
mode of operation, where the variation of RF level for some
timeslots is relaxed for the purpose of energy saving.

In BCCH carrier power reduction operation, for timeslots on the
C0 carrier, except timeslots carrying BCCH/CCCH, the output power
may be lower than the output power used for timeslots carrying
BCCH/CCCH.  In this case the maximum allowed difference in output
power actually transmitted by the BTS is 6 dB.

Introduce a VTY command to turn on and off the BCCH carrier power
reduction operation.  Also introduce a CTRL command.  On the
A-bis/RSL, abuse the BS POWER CONTROL message by setting
the Channel Number IE to 0x80 (RSL_CHAN_BCCH).

Currently, only osmo-bts-trx is supported.  A value greater than
zero makes it reduce the power on *inactive* timeslots of the
BCCH carrier.  Sending zero disables the BCCH power reduction
mode completely.

For more details, see 3GPP TS 45.008, section 7.1, and 3GPP TR 45.926.

Change-Id: I047fce33d4d3e4c569dd006ba17858467a2f4783
Related: SYS#4919
2021-07-05 12:17:59 +00:00
Philipp Maier 78ad200cf6 control.adoc: add doc for apply-config-file
apply-config-file is not documented in the manual.

Change-Id: I469e3925c1079e45eea246e599bcd50ba3fc9dd3
Related: SYS#5369
2021-06-24 10:15:49 +02:00
Philipp Maier b9930bdf09 bsc_ctrl_commands: add command to write vty config
we recently added control commands to apply vty config files during
runtime using the control interface. However, there is no command that
allows us to store the config file modifications.

Change-Id: If17095bb86f82dd8feb86eb72c4133ea3aa1c3b3
Related: SYS#5369
2021-06-24 10:15:49 +02:00
Neels Hofmeyr d86529acb4 handover dot charts: fix wrong transitions regarding MGW
Related: SYS#5315 OS#4940 OS#3277
Change-Id: I2ed9b3ca7fe145a930ca509e6b3943f5abf3aa62
2021-05-27 17:06:21 +02:00
Neels Hofmeyr d5cb0eb8fd lchan and assignment FSMs: make Channel Mode Modify more sane
The Channel Mode Modify procedure is currently implemented for changing
a TCH lchan from signalling to voice mode. For that, however, it is
re-using (abusing) the channel activation structs and state transitions,
and thus always implies activating a voice stream when the mode
modification is done.

I will add a Channel Mode Modify to enable VAMOS mode soon, so I require
separate structs and state transitions which also work on an lchan that
already has a voice stream established: a struct lchan_modify_info and
LCHAN_EV_REQUEST_MODE_MODIFY, and dedicated assignment FSM state
ASSIGNMENT_ST_WAIT_LCHAN_MODIFIED.

For the part where a Channel Mode Modify enables a voice stream after
switching from signalling to speech mode, still use the channel
activation code path, but only once the mode modification is done.

General improvements:
- To ask for a mode modification, emit an FSM event that ensures a mode
  modify only happens when the lchan state allows it.
- The new lchan_modify_info struct reflects only those parts that have
  an effect during a mode modification (before the lchan_activate_info
  was fully populated, many values not having an effect).
- More accurate logging, indicating "Mode Modify" instead of "Channel
  Activation"

A TTCN3 test for the Channel Mode Modify procedure is added in
Idf4efaed986de0bbd2b663313e837352cc139f0f, and the test passes both
before and after this patch is applied.

Related: SYS#4895
Change-Id: I4986844f839b1c9672c61d916eb3d33d0042d747
2021-05-21 15:43:30 +02:00
Neels Hofmeyr 794e1281d8 cosmetic: rename FOR_* to ACTIVATE_FOR_*
Soon, there will also be enums with ASSIGNMENT_FOR_* and MODIFY_FOR_*
naming. Add the ACTIVATE_ prefix to the existing enum to clarify.

Change-Id: I12190d4d154a1da6a9ebc9a755ccc2fe382ff188
2021-05-21 15:43:30 +02:00
Philipp Maier 85e660b370 bts.adoc: fix typo BGSGP -> BSSGP
Change-Id: I4387b516c5c116cd7179611dc34a90b0a744cb6c
2021-05-21 10:10:06 +00:00
Harald Welte 858401b04e manual: Include QoS chapter and add osmo-bsc specific example
Change-Id: I3b1d44fc545725172142b903190a3ff5094805dd
Requires: osmo-gsm-manuals.git Id344c29eda2a9b3e36376302b425e9db1f6c0f28
Requires: libosmo-abis.git I8991dd6eb406a5b9a70498974fc1ad339452f871
2021-05-01 17:36:09 +00:00
Neels Hofmeyr aa01d326ff manual: Location Services: clarify BSC side address
A clarification that I promised a while back but forgot to submit.

Related: SYS#4876
Change-Id: I9b06ac7a2f2cb34cabfcec10af761322b8e962fb
2021-04-27 13:39:01 +00:00
Vadim Yanitskiy 3fd19268ae vty: deprecate BTS type 'sysmobts' in favor of 'osmo-bts'
Change-Id: I60d5ff887a7c830180088904c2458f7e73ce3893
2021-04-12 18:54:40 +00:00
Harald Welte f5d0733e44 CBSP: document rate counters and their mapping to basic/extended CBCH
Change-Id: Id298d547a90bb5d8e40f2cd300b7e1303bb43fdc
2021-02-22 13:44:32 +00:00
Philipp Maier ff5dcf7fd3 bts.adoc: describe ACCH repetition settings
The manual currently does not mention ACCH repetition yet. Lets
add some info on how to set up ACCH repetition correctly.

Change-Id: I1e27ac955882497bbeefac0c830708dd18ad46b3
Related: SYS#5114
2021-02-11 23:16:50 +01:00
Vadim Yanitskiy ea8d6939e6 power_control: make P_CON_INTERVAL parameter configurable
Change-Id: I6e0fae81cc60f708e49d5eb8dfc0bbcad926b18f
Related: SYS#4918
2021-02-07 19:20:12 +01:00
Vadim Yanitskiy e1d2691e69 power_control: enable Uplink DPC by default if format is known
So far osmo-bsc would enable Uplink DPC (Dynamic Power Control) only
for osmo-bts, and the 'static' mode for all other BTS models.  This
decision dates back to the time when ip.access specific encoding for
dynamic power control parameters was not implemented, and the MS
Power Parameters IE was sent empty in the RSL messages.

Let's make a step forward by enabling Uplink DPC by default for
all BTS models which declare the API for vendor-specific encoding
of the power control parameters.  Currently this includes osmo-bts
and nanoBTS, both supporting ip.access specific format.

Change-Id: If86d27d4332af3d82f862737340d061e42e34eba
Related: SYS#4918
2021-02-07 04:38:15 +01:00
Pau Espin f93f1dfec2 cosmetic: doc: wrap line too long
Change-Id: I2da6f58d84521289f86840b1da191a9faf76a1a8
2021-01-29 16:01:23 +01:00
Neels Hofmeyr 8e830dd136 hodec2: to balance congestion, use overload percent
For balancing load across congested cells and across congested TCH/*
kinds, instead of comparing the number of lchans above the configured
congestion threshold, compare the percent of lchans of overload.

In short, using a percentage prevents cells with less min-free-slots to
fill up 100% while neighbor cells still may have several free lchans
available.

An obvious example of why this is desirable is illustrated by
test_balance_congestion_by_percentage.ho_vty:

Cell A has min-free-slots 2, and has all slots occupied.
Cell B has min-free-slots 4, and has 2 slots remaining free.

If we count congested lchans as in current master: cell A has a
congestion count of 2: two more lchans in use than "allowed". If we move
one lchan over to cell B, it ends up with a congestion count of 3, which
is worse than 2. So when counting lchans, we decide that cell A should
remain full.

Instead, when comparing percentage of remaining lchans, we would see
that cell A is loaded 100% above congestion (2 of 2 remaining lchans in
use), but when moving one lchan to cell B, that would only be 75% loaded
above its treshold (3 of 4 remaining lchans in use). So a percentage
comparison would cause a handover to cell B.

Related: SYS#5259
Change-Id: I55234c6c99eb02ceee52be0d7388bea14304930f
2021-01-14 06:24:57 +00:00
Pau Espin Pedrol 55a015dddf Introduce Neighbor Resolution Service
This new CTRL interface allows users of this BSC (such as attached PCU)
to gather neighbor information.

This interface is needed for PCU to translate ARFCN+BSIC keys provided
by MS in the Um side into CGI + RAC keys used to identify target cells
in RIM procedures against SGSNs on the Gb interface.

This patch extends the already existing neighbor information storage in
the VTY by allowing storage of CGI + RAC (RAC couldn't be stored
beforehand).

Related: SYS#4909
Depends: libosmocore.git Change-Id If48f412c32e8e5a3e604a78d12b74787a4786374
Change-Id: Ib07c9d23026332a207d4b7a0f7b4e76c0094e379
2021-01-13 17:14:09 +01:00
Pau Espin 63f98f22a0 doc: handover: Fix malformed table
Change-Id: I197598e8dba719ef7e0f5a1727aa3cc82b5b5c9a
2021-01-13 17:08:05 +01:00
Vadim Yanitskiy 0a2541c3c3 power_control: add increase / reduce step size recommendations
Change-Id: I82e762c0c2b5e0dd739850ee494ab0a798e353de
Related: SYS#4918
2021-01-12 08:27:52 +00:00
Vadim Yanitskiy c52a1b7d80 power_control: cosmetic changes and fixes to the documentation
Change-Id: I744d09fb22d8b07ed433a34a958ef384fd3d62da
Related: SYS#4918
2021-01-11 19:17:36 +00:00
Vadim Yanitskiy 7f6a69e25e manuals: fix a typo: s/DTS/DTX/
Change-Id: I5bef0eca101859e4f757e17ce3e4e3cd56b0b5eb
2021-01-11 16:02:50 +01:00
Vadim Yanitskiy f7c5859aa3 manuals: fix a duplicate line in the description of DTXu
Change-Id: Iedb7c2b7cc1dc3833271eb94f7eafc79cea3fd06
2021-01-11 15:53:54 +01:00
Vadim Yanitskiy f447c4f3e3 power_control: add documentation on available configuration params
Change-Id: Ib65d33f0f1dd24d39e3be581e4e072a310bc906a
Related: SYS#4918
2021-01-11 13:42:19 +00:00
Harald Welte 3731302e90 osmobsc-usermanual: Add Chapter with AoIP message flow examples
Change-Id: I001d5f85c95098269b5f129b0c53c3544b96ffb0
2020-12-21 16:50:18 +01:00
Harald Welte baa25b0d80 update aoip-mgw-options document with reality of 2020
This was started in 2017 before the NITB split.  Let's align it with
reality, mostly in terms of naming and making explicit what was
implemented.

Change-Id: Ib4e66b565a1edfc5ea8c1446f911011bfd4b1642
2020-11-20 20:58:54 +01:00
Neels Hofmeyr 88a0789a8e manual: describe LCS and Lb interface
Change-Id: I7ba432706759433987fabbc674bfc8cd55f2ce62
2020-10-28 03:24:27 +01:00
Neels Hofmeyr af3252cc71 add doc/location_services_ta.msc
Change-Id: I9372c588bf8ee68a3995102b295198f35e32eec8
2020-10-10 16:23:52 +02:00
Neels Hofmeyr 638eb99286 clean up timer definitions: introduce groups, move some T to X
Backwards compatibly, introduce timer groups in OsmoBSC, and move some
non-specified T timers to new X timers:

T993111 -> X3111
T993210 -> X3210
T999 -> X4

Why X4? because there already is an X3 used elsewhere in Osmocom, and I find
it less confusing if X-numbers don't repeat across programs. See
https://osmocom.org/projects/cellular-infrastructure/wiki/List_of_Timer_numbers

Drop unused timers from g_mgw_tdefs. Only X2427 has an actual effect.
(libosmo-mgcp-client recently moved T2427001 to X2427.)

Put libosmo-mgcp-client related timers to the 'mgw' group, like in osmo-msc.
This makes the MGCP timeout configurable for the first time.

Keep previous timer commands as DEFUN_HIDDEN, and also translate the moved T
timers to X timers on-the-fly. All previous VTY commands still work, and new
'timer [(net|mgw)] ...' commands are added. timer.vty shows this.

Remove the "_OPTIONAL" from the legacy "timer" and "show timer" commands, so
that they don't ambiguously overload the new "timer [(net|mgw)] ..." commands.

Related: OS#4539
Related: If097f52701fd81f29bcca1d252f4fb4fca8a04f7 (osmo-mgw)
Change-Id: I4beec47502afa193dee343869c4be55dc6a4b536
2020-09-18 08:47:49 +00:00
Pau Espin f087c1ebd4 lchan_rtp_fsm: Deferr IPACC MDCX after BTS side MGCP MDCX
This is needed to be able to force MGW to provide an IPv4 address during
MDCX, since IPACC protocol on the BTS side only supports IPv4, but one
may need IPv6 side at the same time on the core side.
By moving the IPACC MDCX request to a later step, the BSC gains
knowledge of the local address on each side (BTS, MGW), and if they
don't match (ie. BTS uses IPv4 and MGW uses IPv6), it can then get MGW
to offer an IPv4 address during MGCP MDCX containing the BTS IPv4
address. At that point, the MGW can see the mismatch and provide an IPv4
address in the MGCP MDCX ACK, which can then finally be communicated to
the BTS during IPACC MDCX phase.

Previous order:
BSC -> MGW: CRCX
BSC <- MGW: CRCX ACK		(get MGW local IP addr)
BSC -> BTS: IPACC CRCX
BSC <- BTS: IPACC CRCX ACK 	(get BTS local IP addr)
BSC -> BTS: IPACC MDCX 		(set MGW IP addr)
BSC <- BTS: IPACC MDCX ACK
BSC -> MGW: MDCX 		(set BTS IP addr)
BSC <- MGW: MDCX ACK

New order:
BSC -> MGW: CRCX
BSC <- MGW: CRCX ACK 		(get MGCP local IPv6 addr)
BSC -> BTS: IPACC CRCX
BSC <- BTS: IPACC CRCX ACK 	(get BTS local IPv4 addr)
BSC -> MGW: MDCX 		(set BTS IPv4 addr)
BSC <- MGW: MDCX ACK 		(here MGW changes its local addr to IPv4)
BSC -> BTS: IPACC MDCX 		(set MGW IPv4 addr)
BSC <- BTS: IPACC MDCX ACK

Change-Id: I4de5ea5c94c1482c9cb0b6386997a942edc60e32
2020-09-09 12:39:14 +02:00
Philipp Maier 92eed41a99 lchan_fsm: make rsl mode-modify working again
osmo-nitb supports the modification of an lchan if the lchan is
compatible but in the wrong mode. This feature was dropped in the
transition to AoIP/bsc-split. However, osmo-bsc still has code to
generate and parse the messeages, but the FSMs do not support a mode
modify yetm

Lets add handling for mode-modify to the lchan_fsm and assignment_fsm in
order to support mode modify again

Change-Id: I2c5a283b1ee33745cc1fcfcc09a0f9382224e2eb
Related: OS#4549
2020-09-03 21:35:25 +02:00
Neels Hofmeyr ca979b7857 CBSP: adjust manual to reflect new 'cbc' VTY config
Related: OS#4702
Change-Id: I101144dc4ebf151fa23d05743398aeea4a26834b
2020-09-03 14:34:49 +02:00
Pau Espin da5b2f8094 Support setting rt-prio and cpu-affinity mask through VTY
Depends: libosmocore.git Change-Id If76a4bd2cc7b3c7adf5d84790a944d78be70e10a
Depends: osmo-gsm-masnuals.git Change-Id Icd75769ef630c3fa985fc5e2154d5521689cdd3c
Related: SYS#4986
Change-Id: Ie68883666657fc8faa76e2422335c0ceb98c5a88
2020-08-20 08:40:17 +00:00
Harald Welte 981a7cc6a9 Add example config files for Ericsson DUG20 based BTS
The files have been used successfully in the past weeks to bring up a
variety of different combinations of Ericsson DUG20 + RUS.

Change-Id: I046f786d68f7cd3fd21693142bd1315bf40696f5
2020-07-30 08:38:56 +02:00
Pau Espin deaa6fd624 Introduce support for ACC subset rotation
See updated documentation section in manuals/chapters/bts.adoc regarding
an explanation on how the system works.

Related: SYS#4911
Change-Id: I952c9eeae02809c7184078c655574ec817902e06
2020-07-29 20:09:47 +00:00
Pau Espin 5487387345 {bts,bsc}.adoc: Drop deprecated OsmoNITB references
dyn_ts_allow_tch_f is also deprecated and should not be used, so drop
that too.

Change-Id: Icc91dd41a237531cb512fa36d8b18d4d8d5ca8ed
2020-07-20 14:05:01 +02:00
Pau Espin 1db53c868a doc: Copy {bsc,bts}.adoc from osmo-gsm-manuals
Those adoc files are only used by osmo-bsc.git and openbsc.git
(osmo-nitb), and the later is deprecated and no longer maintained, which
means new features are only added to BSC. Hence it makes no sense to
keep the doc shared between both.

Change-Id: I20aa60d2f4111d66e922f3e2a73a20352ec1f7e4
2020-07-20 13:12:10 +02:00
Harald Welte d4abe7c676 remove examples/osmo-bsc/ericsson/osmo-bsc.cfg
This was an accidential copy of osmo-bsc.rbs2308.cfg

Change-Id: I89c6c0fc2b9ec0054e71827118ddaa85fe3e9318
2020-07-17 13:26:44 +02:00
Harald Welte bb79f123cc Add example configuration files for E1 BTS
This adds osmo-bsc config files for Ericsson RBS2308, Siemens BS-11 and
Nokia InSite which were working in July 2020 to get the BTS initialized,
recognized by MS and up to signalling.

Voice/TRAU support is still missing in OsmoBSC, but should be added
relatively soon.

Change-Id: I1fe15cc3654025e52fc1110ac3052fb1f7a009a0
Depends: osmo-python-tests I896b99032d94ba0cdd340a8eed7c7b625661ad69
Closes: OS4651
2020-07-16 11:51:53 +00:00
Vadim Yanitskiy 9f7e288482 doc/examples: remove deprecated 'dyn_ts_allow_tch_f'
This option has been deprecated back in 2018 [1], but for some
reason we still have it in the configuration examples, so it
prevents osmo-bsc to allocate TCH/F on dynamic timeslots.

[1] Ib2335d02ea545aff837aadd49f15b2fdb418c46e

Change-Id: Icc82f6178d18dccc7207485b25dc3bdad91a0052
Related: SYS#5014
2020-07-15 20:05:35 +00:00
Neels Hofmeyr 73a6803111 mscpool: add user manual chapter
Change-Id: Ia60afc8a91189c9de0d8e8065781ed463bf18d7e
2020-06-17 00:14:01 +02:00
Neels Hofmeyr 10983f206b manuals: generate vty reference xml at build time
Move 'doc' subdir further down to "make sure" the osmo-bsc binary is built
before the docs.

Remove bsc_vty_reference.xml from the source tree.

In manuals/Makefile.am use the new BUILT_REFERENCE_XML feature recently added
to osmo-gsm-manuals, and add a build target to generate the XML using the new
osmo-bsc --vty-ref-xml cmdline switch.

Depends: I613d692328050a036d05b49a436ab495fc2087ba (osmo-gsm-manuals)
Change-Id: I5dc872149154e1a949bb6a2b9bbc1461e0fc51f6
2020-06-16 10:16:30 +00:00
Vadim Yanitskiy 8519d50081 doc/manuals: regenerate the VTY reference file
Change-Id: I4f7bf671b7948d8c3771d33d40ab5e8cf209e2b2
2020-05-31 02:14:28 +07:00
Neels Hofmeyr 39a0af3bf4 doc/examples: remove deprecated ussd text config
Change-Id: I7c0b615bbb0a5c50341968a748612448ad9d18e4
2020-05-29 20:16:40 +00:00
Neels Hofmeyr 6a8955b741 drop all BSC originated USSD notification features
The BSC is the wrong network component to originate USSD messaging, as can be
seen in the hacks in the USSD code: for example, the BSC would send a CM
Service Accept message as if an MSC had accepted the connection, dispatch a
USSD and directly send some RR release message (without proper tear down
messaging like the lchan_fsm does these days). This made sense in the osmo-nitb
world, but by now we are aiming for solid 3GPP compliance. The BSC shall not
originate USSD messages.

Deprecate all VTY and CTRL commands related to USSD:
VTY
 [no] bsc-welcome-text
 [no] bsc-msc-lost-text
 [no] bsc-grace-text
 [no] missing-msc-text
 (the commands with 'no' are ignored, without 'no' lead to an error)
CTRL
 ussd-notify-v1

Drop (already unused) ussd.h.
Drop gsm_04_80.h, gsm_04_80_utils.c, and all calling code.

Drop "RF grace" notification, where osmo-bsc was able to notify active
subscribers that the RF was being turned off.

Change-Id: Iaef6f2e01b4dbf2bff0a0bb50d6851f50ae79f6a
2020-05-29 20:16:40 +00:00
Neels Hofmeyr c8f432a849 deprecate 'msc' / 'ip.access rtp-base <port>'
The bsc_msc_data->rtp_base has been unused ever since we introduced the exernal
MGW in osmo-bsc [1]. The vty command also still exists. Deprecate the vty
command, remove the member.

[1] "mgcp: use osmo-mgw to switch RTP streams"
    commit 39c609b7c9
    Change-Id Ia2882b7ca31a3219c676986e85045fa08a425d7a

Change-Id: Id14fa3066ca5d472a817593074a6222f159168a8
2020-05-19 20:31:29 +00:00
Neels Hofmeyr 7a4172fbc6 manuals: update bsc_vty_reference.xml
I notice that some merges seem to have missed updating the
bsc_vty_reference.xml file. Re-generating it from current master yields these
changes.

Change-Id: I75269cbed8dd62be23293fd2c1470af6f61e6ad2
2020-05-18 14:21:23 +02:00
Neels Hofmeyr 6e06bd3915 manual: fix config example typo 'msc-addr'
Change-Id: Ifb84d7ceddc772e3e1ae59c8d5859b6be6f1b4eb
2020-05-13 19:18:13 +02:00
Vadim Yanitskiy e981f17200 vty: clarify EGPRS Packet Channel Request message support
According to 3GPP TS 44.060, section 12.24, GPRS Cell Options IE
contains two parameters related to 11 bit Access Burst support:

  - ACCESS_BURST_TYPE - whether the 8 or 11 bit format shall be
    used in the PACKET CHANNEL REQUEST message, the PTCCH/U block,
    PACKET CONTROL ACKNOWLEDGMENT and the PS HANDOVER ACCESS
    messages on the PRACH (if present).

  - EGPRS_PACKET_CHANNEL_REQUEST - whether EGPRS capable MSs shall
    use EGPRS PACKET CHANNEL REQUEST message for Uplink TBF
    establishment on the RACH or on the PRACH (if present).

The VTY option 'gprs 11bit_rach_support_for_egprs' actually controls
the second parameter - EGPRS_PACKET_CHANNEL_REQUEST, though it may
be hard to understand this from its name and description.

This patch is actually a group of tightly related changes:

  - deprecate 'gprs 11bit_rach_support_for_egprs (0|1)':
    - update its description to avoid any possible confusion,
    - print a warning if it's used in non-EGPRS mode,
    - print a warning if it's still used;

  - introduce '[no] gprs egprs-packet-channel-request':
    - ensure that it can only set / printed in the EGPRS mode;

  - take a chance to clean-up / rename the related struct members:
    - 'supports_egprs_11bit_rach' -> bool 'egprs_pkt_chan_request',
    - remove 'supports_egprs_11bit_rach' from 'gprs_cell_options'
      because we already have 'ext_info.use_egprs_p_ch_req' there.

Change-Id: Ied5bd10a806aeeac65ef32339d4ab0e3700e5da9
2020-04-14 15:50:10 +00:00
Vadim Yanitskiy f06b9bf1c6 doc/manuals: remove deprecated DNAT from the VTY reference
Change-Id: Ib21c30041508a9ec9afda56bda95bddf4d665bc8
2020-04-05 00:39:45 +07:00
Neels Hofmeyr 6ab7a52b67 manual: add SCCPlite section
Change-Id: I8eddc47353d6afd756865321a9e97f6cee4ce2d7
2020-03-30 15:57:57 +00:00
Neels Hofmeyr b5a25b0137 manual: add SCCP/M3UA section from common chapters
Link to the osmo-gsm-manuals/common/cs7-config.adoc chapter to fully explain
the 'cs7' client configuration.

Related: OS#2767
Depends: Ia2508d4c7b0fef9cdc57e7e122799a480e340bf7 (osmo-gsm-manuals)
Change-Id: I5b4973901f02046322b852fd9862517982d21bd9
2020-03-30 15:57:57 +00:00
Oliver Smith b5bfa71aa2 VTY: regenerate bsc_vty_reference.xml
Change-Id: I27bcde8d36dcf8daa9d24b4b581c9526b73cb35e
2020-03-27 10:29:51 +01:00
Neels Hofmeyr 21a2c81da4 manual: add "Multiple Instances" section, akin to other manuals
Related: OS#2767
Change-Id: Ideb137f19d19144d35b05eb036098045bbb18d64
2020-03-22 19:23:55 +00:00
Oliver Smith 5edae5d203 osmo-bsc-minimal.cfg: fix codec-list
All timeslots are configured for full rate, so the codec list must also
have a full rate codec. Fix this error on startup:
"Configuration contains mutually exclusive codec settings -- check configuration!"

All other example configs don't have mutually exclusive codec settings.

Related: OS#3739
Change-Id: Iddac13c7d644ed57b6d9e6a57d23d88c01bd8b8e
2020-03-17 14:40:05 +01:00
Oliver Smith f659f5e5b0 doc: osmux: use generated svg instead of pychart
Replace python 2 code using pychart to draw a graph in
osmux-reference.adoc with the generated svg file. The upstream of
pychart is dead, there is no python 3 version, and python 2 is EOL at
the end of 2019.

This is the only time we ever made use of pychart in osmo-gsm-manuals,
so with this change, we can just drop the dependency.

I've generated the chart by saving the python code in chart.py, then:
$ ./chart.py --format=svg --font-size=3 > chart.svg

Related: OS#2819, OS#4193
Depends: osmo-ci I754b133d77743582bd84c33c74ecc9eb9ca4c0ef
Change-Id: I36b721f895caee9766528e14d854b6aa2a2fac85
2019-12-05 17:53:52 +01:00
Harald Welte 16c8910c71 manual: Fix copy+paste error
Change-Id: I787c4bd4b30a6620a987efed4fd8b46e14a7ea64
2019-12-01 14:23:34 +01:00
Martin Hauke a29affda98 Fix some typos
Fix typos and common misspellings in code comments and in the manual.

Change-Id: I46fc9d424620c77ae9ccf78b58081bd303386d7c
2019-11-13 22:10:41 +01:00
Harald Welte d102832d9f manual: Update statements regarding SCCPlite
SCCPlite is long supported (again) by osmo-bsc, let's remove the
outdated pointers to osmo-bsc-sccplite.

Change-Id: Ia3d831aca7c3c7ef9f257e974faf6e8e360c59f5
2019-09-04 12:45:35 +02:00
Harald Welte 7104ed2e58 doc: update bsc_vty_reference.xml
Change-Id: I6244a0de8802f437b5b291c76b4fc7bd4262baf8
2019-09-02 12:06:25 +02:00
Harald Welte d41b7c7f83 Cell Broadcast: CBSP and CBCH scheduling support
This adds code to handle CBSP (Cell Broadcast Service Protocol)
from the CBC (Cell Broadcast Centre), as well as BSC-internal data
structures for scheduling the various SMSCB on the CBCH of each BTS.

There are currently one known shortcoming in the code: We don't yet
verify if keepalives are received within repetition period.

Change-Id: Ia0a0de862a104d0f447a5d6e56c7c83981b825c7
2019-09-02 12:06:25 +02:00
Oliver Smith 8610e6b2c2 osmo-bsc.cfg: work with osmo-bts example cfg
Change cell_identity and unit-id to match osmo-bts-virtual.cfg.

Related: OS#3369
Change-Id: Ie8001611756b661ff1871508c6248b2e990ba1d7
2019-07-24 19:31:24 +00:00
Pau Espin 3fb2359172 doc: Add Osmux documentation to User Manual
Depends: osmo-gsm-manuals.git f3a734e6777a902abfb03257277454c7a879aeb7
Change-Id: I75dcdddc713b0dc43e2ba577ca377c20fc511f38
2019-07-22 10:34:24 +02:00
Harald Welte 7fbcc2eb2c vty: Fix typo in VTY command descrption -> description
Let's add deprecated aliases for backwards compatibility

Change-Id: I0e5da9d702910cf2571486e22a56f3ec17d0d67b
2019-07-19 07:04:50 +02:00
Ruben Undheim 06e6f8a95e Fix some spelling errors found by lintian
Change-Id: I63a733f8bea69f355a6686d99c3aa194c8ac9012
2019-07-16 20:15:53 +00:00
Neels Hofmeyr 08371ecc01 doc/manuals, vty doc: more handover doc clarifications
Related: OS#3487
Change-Id: I1639efb2dbcca4f0e9c33a74f3067606ce5f4209
2019-07-09 15:42:38 +00:00
Neels Hofmeyr ad5b8ce326 doc/manuals: review and tweak handover docs
Change-Id: Ib25cee8fd8c243881b99173a9a3036ad19d0f8af
2019-06-18 23:39:14 +02:00
Daniel Willmann 6057632172 manuals: Add script to update vtr/counter documentation from docker
Run it like this:
COMMIT=master DOCKER_PLAYGROUND=~/scm/osmo/docker-playground OSMO_INTERACT_VTY=~/scm/osmo/osmo-python-tests/scripts/osmo_interact_vty.py ./regen_doc.sh

COMMIT will default to current HEAD.
Change-Id: Iedd1f55d021231d86c19b6f14ff296e3a55148c8
Related: OS#1700
2019-06-17 16:37:48 +02:00
Eric Wild 10def2cf1e vty: adjust config name for unit-id
Having different names for the same config setting is misleading, so
let's stick to the one used by osmo-bts.

Change-Id: Ide5ceb5db7403a70313405752579e30d7bb94eac
2019-06-06 19:46:20 +00:00
Daniel Willmann f450f442f3 manuals: Update generated VTY reference and counters
Change-Id: I9f75edf2e5b88ef8f4592fa89548f32e0a7df8d8
Related: OS#1700
2019-06-06 17:53:50 +02:00
Oliver Smith 3f1f857378 debian: create -doc subpackage with pdf manuals
I have verified, that the resulting debian packages build in my own OBS
namespace (see the -doc packages):
https://download.opensuse.org/repositories/home:/osmith42/Debian_9.0/all/
https://build.opensuse.org/project/show/home:osmith42

Depends: Ib7251cca9116151e473798879375cd5eb48ff3ad (osmo-ci)
Related: OS#3899
Change-Id: I8dfb5658e567978aa8fe82f45d8287dbd1df969c
2019-05-29 12:14:07 +02:00
Daniel Willmann 803a4dc76c manuals: Fix example config to reflect OsmoBSC commands
Change-Id: Ic38eec67a2cbbef57d1d6349f08249ec20ff7e8c
Related: OS#2299
2019-04-17 16:01:11 +00:00
Daniel Willmann f2572c4ff4 doc: Add generic counter chapter in manual
Depends: I01b8529136450cb50e48b0fb5c17cb2daa5e24c3 (osmo-gsm-manuals)
Change-Id: Ida53d79787aedc5b37a68e6795a863cb0b4a343a
2019-04-17 16:01:11 +00:00
Harald Welte d6e57e3471 manual: Remove bogus "Control interface" sub-section in overview
We meanwhile have chapters about the CTRL interface protocol as well
as the auto-generated list of CTRL interface commands/values, so
let's remove the somewhat redundant information.

Change-Id: I062d7eec3b3fc53c31726be3b3a407a2dd3b8b56
2019-02-05 14:45:29 +00:00
Harald Welte bec10b0938 manual: s/OsmoNITB/OsmoBSC/ in examples; remove E1 based BTSs
We still haven't re-introduced support for E1 based BTSs, so let's
remove the relevant chapters from the manuals.  Also, make sure
we don't call anything OsmoNITB in this manual anymore.

Change-Id: I834d65836731958b6be823a18e35407183398715
2019-02-05 14:45:29 +00:00
Harald Welte e26f0130e2 manual: Re-order chapters in more logical order
It makes a lot of sense to first describe the VTY interface before
going on using it to configure something.  Also, configuration related
topics relevant to operators/sysadmins should precede other content
only relevant to developers, like the details of the CTRL or Abis/IP
protocol.

Change-Id: I0872d072bbb06f9409a72b93133d136167f03b38
2019-02-05 14:45:26 +00:00
Harald Welte 9e437a746a manual: Add sections on 3G/4G neighbor cells
This adds some instructions on how to configure 3G/4G neighbor
cells within osmo-bsc.   I didn't want to add a new top-level
chapter but instead chose to add it to the handover section which
describes also the configuration of 2G neighbors.

Change-Id: I81df1a453858b6fca80c8adf234b1d5b8bf5283d
2019-02-05 14:45:26 +00:00
Harald Welte 9e276081db manual: It's not "A over SCCP" but "BSSAP over SCCP"
In GSM specs, the entire interface between two elements is designated
with some letter, like the A interface between BSC and MSC.  The
interface uses a variety of protocols stacked on each other.

In the specific case of A, there is no "A" on top of SCCP, but
there's "BSSAP" on top of SCCP.

This is followed somewhat un-orthodox by 3GPP, as "A over IP" is
a violation of that principle.  It should have been called "A utilizing
IP", "A based on IP", "A with IP" or something the like.

In any case, at no point do the specs ever claim that "A" is stacked
on top of SCCP, so let's fix this.

Change-Id: Ieb0d8f6c71debe1234aff343a994c2096326da1b
2019-02-05 14:45:26 +00:00
Oliver Smith 686deafa48 build manuals included from osmo-gsm-manuals.git
Moved to doc/manuals/, with full commit history, in preceding merge commit.
Now incorporate in local the build system.

Build with:

$ autoreconf -fi
$ ./configure --enable-manuals
$ make

Shared files from osmo-gsm-manuals.git are found automatically if
- the repository is checked out in ../osmo-gsm-manuals; or
- if it osmo-gsm-manuals was installed with "make install"; or
- OSMO_GSM_MANUALS_DIR is set.

Related: OS#3385
Change-Id: I92c0f771d4ffc2b0401d26e25cb0b3817e6f95ea
2018-11-27 17:33:29 +01:00
Neels Hofmeyr 5c55d4933d Merge history from osmo-gsm-manuals.git
Change-Id: I9ff481784ba8c6334b1e57b1f64dfc9262e6d0e2
2018-11-27 17:32:17 +01:00
Oliver Smith 27683cbe13 copy NITB's osmobsc-usermanual.adoc to OsmoBSC
Includes from other projects don't work anymore when moving project
specific manuals into other repositories.

Related: OS#3385
Change-Id: I96933dd4dd6cac159847647f1c642215051a9aad
2018-11-27 17:12:40 +01:00
Neels Hofmeyr 39e1215cbc OsmoBSC: update VTY reference
Re-generate bsc_vty_reference.xml from osmo-bsc, including updates to:
- handover and neighbor config
- SCCP timers
- logging

Change-Id: Ia9ba8d5eba531b1156de57573ab42517e0c1ca15
2018-11-27 17:12:40 +01:00
Daniel Willmann 5397326b40 OsmoBSC/HLR/MSC: Fix default config file name
Mention that the default is not openbsc.cfg, but osmo-*.cfg

Change-Id: I139e6004e28d6f918f31792e634214a6153edd0e
2018-11-27 17:12:40 +01:00
Neels Hofmeyr c3d839390a author info: add "former" to Holger's job title
It doesn't seem to have an effect on the generated PDFs though.

Change-Id: I0556a3f8dafc051f20a3854fc9006edf4ec1a0d3
2018-11-27 17:12:40 +01:00
Neels Hofmeyr aa4a3e7259 bsc: handover: mention the need to resend SI for telnet neighbor cfg
Change-Id: I305ef558b75697015e2532aa7c135f7995662e0d
2018-11-27 17:12:40 +01:00
Neels Hofmeyr 4875848853 bsc: handover: clarify default of all-cells-are-neighbors
Change-Id: I61f877c7a60419132bdd27c1b4e64150c0520751
2018-11-27 17:12:40 +01:00
Neels Hofmeyr 8c14a942d2 bsc: document handover
Add chapter "Handover", explaining:
- intra- and
- inter-BSC handover,
- HO algorithm 1 and
- algorithm 2
- new neighbor configuration

Adjust copyright, add revision and add me as author.

Change-Id: I7afb3f66c98abda07fc8acc76e00c46091fe55e2
2018-11-27 17:12:40 +01:00
Harald Welte 8a357681d2 vty-ref: Update URI of docbook 5.0 schema
... to match the /etc/xml/catalog file on debian (no "www" in hostname)

Change-Id: Id9f3579c7f2bc3af13fe30b5268f249b6f59ed0d
2018-11-27 17:12:40 +01:00
Neels Hofmeyr 9f157571ad OsmoBSC: update VTY reference
This is the first update since the libosmocore changes to the 'show
online-help' generated output. Hence the produced document now benefits from
the structural improvements:
- not repeating common commands for every node;
- using section names that match the VTY prompt.

Update bsc_vty_additions.xml to match the new node ID scheme.

Change-Id: I0d856563eee88527fda4c6940aa6cea779175aaa
2018-11-27 17:12:40 +01:00
Harald Welte 3a6ad2a2a2 add message sequence chart MS/BTS/BSC/MSC for 3GPP aoIP MO call
Change-Id: I7e41234cfe1483bb73589dc959851a54f9aafa36
2018-11-27 17:12:40 +01:00
Neels Hofmeyr d22e31fc9b common / OsmoBSC: drop unused alink.adoc
Change-Id: Ia3219359be891c161d20eccb7bbcb65af35ef42b
2018-11-27 17:12:40 +01:00
Neels Hofmeyr 9d0e3a7f2d OsmoBSC: update overview to explain both SCCPlite and SCCP/M3UA
Change-Id: I1f105b3febd4f99f4491e217ff1b1d0b28912980
2018-11-27 17:12:40 +01:00
Alexander Couzens b4045a0c69 OsmoBSC: add rate counter documentation
Change-Id: Ia8711dd4bc9db36a7121552dc067c7afb1051b0a
2018-11-27 17:12:40 +01:00
Max cef1d72ba8 OsmoBSC: update CTRL docs
* use proper naming scheme for BTS-specific CTRL commands
* add/update oml-* commands

Change-Id: I5b2cd940b4d84c140fce871f236aeab091b27360
Related: OS#2486
2018-11-27 17:12:40 +01:00
Neels Hofmeyr ea9a44dade refactor Makefile build rules, don't use the FORCE
The initial goal was to make sure we don't have overall FORCE rules causing
unnecessary rebuilds -- annoying while writing documentation. As I looked
through possible dependencies, I finally understood what's going on here.

Remove code dup and nicely sort which belongs where in build/Makefile.*.inc. In
each, describe in a top comment how to use it, and also unify how they are
used:

- Rename Makefile.inc to Makefile.docbook.inc and refactor
- Add Makefile.vty-reference.inc
- Add Makefile.common.inc

Make sure that we accurately pick up all dependencies.

Drop use of the macro called 'command', that silenced the actual command lines
invoked and replaced them with short strings: it obscures what is actually
going on and makes the Makefiles hard to read and understand.

Each manual's makefile is greatly reduced to few definitions and a Makefile
include, e.g. one for asciidoc, one for VTY reference.

Move common/bsc_vty_additions.xml to OsmoBSC/vty/libbsc_vty_additions.xml, link
from OsmoNITB. It applies only to OsmoBSC and OsmoNITB.

Add a script that combines a VTY reference file with *all* additions files
found in a manual's vty/ dir. Call this from Makefile.vty-reference.inc.

Change-Id: I9758e04162a480e28c7dc83475b514cf7fd25ec0
2018-11-27 17:12:40 +01:00
Pau Espin 88faeefdc9 Allow easily disabling GFDL references
All parts referencing GFDL can be easily disabled by removing the
'gfdl-enabled' attribute from the document.

Change-Id: I2489726ad2e90301bceadfada926e31ae0f85986
2018-11-27 17:12:40 +01:00
Harald Welte f77da129a8 MGW: Include MGCP endpoint naming scheme of old IPA/SCCPlite approach
Change-Id: Ib1fe96f0041534fa027b70ee67978cb7c6bc5207
2018-11-27 17:12:40 +01:00
Harald Welte d9400a977f mgw: Fix endpoint names for new MGW
According to RFC3435, an RTP bridge forrwarding packets, transcoding
or otherwise, is a single endpoint with two connections.  Let's treat
it as such.  We introduce the "rtpbridge/" prefix to identify such
special RTP endpoints.

Change-Id: Id1f079307225faf05d298dcb12aa1c421bfa680a
2018-11-27 17:12:40 +01:00
Pau Espin 1293ee10ba osmux: Fix description for Dummy frames FT field
Change-Id: Ia421655bd1be45101da3db2a0af44fbb3cc111c1
2018-11-27 17:12:40 +01:00
Pau Espin 9980b4aa1c osmux-reference-docinfo: Add latest changes to revhistory
Change-Id: I01e513a71a3f830d393c57c43678d7e4c8d2d151
2018-11-27 17:12:40 +01:00
Pau Espin 53ce68f977 osmux-reference: Add traffic saving plot
Change-Id: I8fa60c1f95436c39fd1ff9424a907876d367484e
2018-11-27 17:12:40 +01:00