Commit Graph

2588 Commits

Author SHA1 Message Date
Vadim Yanitskiy 0544e5d625 GPRS_Components: neither TELNET nor VTY API is used in this module
Change-Id: I41813e1e2a8d7c54dffbabee9de4e0706293743e
2020-11-02 19:24:45 +07:00
Vadim Yanitskiy 28a03efa3f BTS_Tests/DTX: eliminate redundant f_TC functions
Change-Id: I4db97d3bea152668c14ce1fb85700364dfdaa575
Related: OS#4801
2020-11-02 09:31:46 +00:00
Vadim Yanitskiy babf1ce4cb BTS_Tests/DTX: remove redundant RSL channel number check
We never launch this test case in DTX mode on anything else than
TCH/F, so it does not make sense to check this all the time.

Change-Id: I6e971d87f26253f4283c47b7f8826d14a2567a9b
Related: OS#4801
2020-11-02 09:31:46 +00:00
Vadim Yanitskiy 76dc4d0073 BTS_Tests/DTX: provide more details in failed verdict message
Change-Id: I15f9303e79750c2864b97697b4378f748a1c7246
Related: OS#4801
2020-11-02 09:31:46 +00:00
Vadim Yanitskiy 080a17d24b BTS_Tests/DTX: SACCH has nothing to do with fill frames
There is no such thing like a fill frame on SACCH:

  - on Downlink, it's always System Information messages;
  - on Uplink, it's always the Measurement Reports.

Yes, osmo-bts-trx does send dummy LAPDm func=UI frames on SACCH,
but this happens because the test suite never feds it with the
associated System Information messages (i.e. Type 5, 5ter, 6).

In the 'alt' statement, restrict matching of L1CTL DATA.ind, so
only DCCH/FACCH blocks are counted.  Ignore DL SACCH blocks.

This change reveals that TC_tch_sign_l2_fill_frame_dtxd actually
fails because no fill frames are received at all from the IUT.

Change-Id: I6c68dd0a7dfa18ae4573a037399b6650feb22f11
Related: OS#4801
2020-11-02 09:31:46 +00:00
Vadim Yanitskiy 3e5f07436a GPRS_Components: generalize both f_pkt_paging_match_{imsi,tmsi}()
Change-Id: Ie0578fa299cdac18e942350b2e879839c9bd9dba
2020-11-01 04:05:33 +07:00
Vadim Yanitskiy 7942580e23 GPRS_Components: ensure cyclic RA in f_init_gprs_ms()
Change-Id: I9896bb6bf1ceb592bae22139bf48c6aa7c0265bd
2020-11-01 02:01:59 +07:00
Vadim Yanitskiy 1cea9fdcb7 GPRS_Components: add RA definition for single block packet access
Change-Id: I8997121f1b1207d4236f5911befc3c29278f37d8
2020-11-01 02:01:59 +07:00
Vadim Yanitskiy e12b2acd95 GPRS_Components: ensure unique IMSI/TLLI in f_init_gprs_ms()
Change-Id: I4beeeac600515458c2aeaf9e0be1cf2546ff0584
2020-11-01 02:01:59 +07:00
Vadim Yanitskiy cff3e1b46c GPRS_Components: rename 'GprsMSArray' to 'GprsMSList'
In TTCN-3, array assumes a fixed number of elements.  A 'record of'
type is more like a 'list' in Python, so let's call it this way.

Change-Id: Ib7df7efaa28a53a45d981d1c99f9eb1ac26fd91c
2020-11-01 02:01:59 +07:00
Vadim Yanitskiy fa6b882657 GPRS_Components: allow arbitrary number of GprsMS instances
Change-Id: Ia118d58fafa50547f109c68829aa869785e0dc9c
2020-11-01 02:01:59 +07:00
Vadim Yanitskiy d5321fbdea library/PCUIF_Types: add f_PCUIF_ver_INFO_PDCHMask_set()
Change-Id: I443bc99d35994dda14cdf9c41609d528368c401f
2020-11-01 02:01:59 +07:00
Vadim Yanitskiy 2a9accef09 library/PCUIF_Types: f_PCUIF_ver_INFO_PDCHMask_get() returns BIT8
Change-Id: Ib8e497b596370d0b48e76e6e86c01f0c1d9c5df5
2020-10-31 20:25:15 +07:00
Vadim Yanitskiy 2f8ee5a0c7 library/PCUIF_Types: add '_get' prefix to f_PCUIF_ver_INFO_PDCHMask()
Change-Id: I0ce8f3fe8cfd47c61199fbbdf0d80d19e6f105e9
2020-10-31 20:25:15 +07:00
Vadim Yanitskiy e94164d22e library: fix Repeated Page Info IE in PacketPagingReq
Change-Id: I39e8e3991cc248602460b7f162a0b57c2925315f
Related: OS#4838
2020-10-31 20:24:44 +07:00
Pau Espin b20b7e59f9 pcu: Parse TS and TRX allocation from Assignment in Ul/DlTbf objects
This will allow tests to use multitrx and multislot scenarios.

Change-Id: Ia2b9dd73f61c7068a729b427c118ae2ef027c30b
2020-10-30 13:23:52 +01:00
Pau Espin 7ebc1124ef pcu: Fix TC_egprs_pkt_chan_req_reject_exhaustion
older versions of osmo-pcu were broken and were only allocating TBFs in
the first TRX available. This is now fixed and hence osmo-pcu tries
better to allocate TBFs across different TRX. That's why the test needs
to be fixed to set up only 1 TRX in order to run into the same scenario.

Change-Id: I3f6633950bb89dde3f87a237359497f5b23e0fee
2020-10-30 08:59:34 +00:00
Neels Hofmeyr bf03705e4d bsc: add TC_no_msc()
Related: OS#4832
Change-Id: I4ffcfd4be551e0647abe00c4eaa8e9c490887190
2020-10-29 21:38:59 +00:00
Pau Espin 25e0f29c46 pcu: Verify TLLI for Dl Assignemnt in f_ms_rx_pkt_ass_pacch()
The same is already done for Ul Assignment. Dl assigment check was a
TODO until now.

Change-Id: Ib44a315d9ce80da05aeee642d033198f4addf6c3
2020-10-29 12:36:43 +01:00
Pau Espin b9b1baae57 pcu: Remove empty lines at end of file
Change-Id: I69e8c2b49c4726078a343fd628b6ddbc9ad0efdc
2020-10-26 17:47:23 +01:00
Pau Espin bfd69f6133 pcu: Introduce test TC_multitrx_multims_alloc
Related: OS#1775
Change-Id: I6b20fded6b2a1896fb7ec47c7c5dcbdcbe27f771
2020-10-26 17:46:44 +01:00
Pau Espin b88f21cc84 pcu: Assign different ARFCN numbers to each PCU TRX
Change-Id: I78f5c1da9e040cd69071e9ce4c99ce5655f0c477
2020-10-26 11:06:13 +01:00
Vadim Yanitskiy 34ed228b0f BTS_Tests/DTX: get rid of f_g_chan_is_{tchf,tchh,sdcch4,sdcch8}
TTCN-3 offers templates and pattern matching, so no need to match
against all possible variants of the RSL channel number.

Change-Id: I104595c4a96617f8000f803d19a890cff0b02744
Related: OS#4801
2020-10-24 23:41:40 +07:00
Vadim Yanitskiy 3bb3b602d0 BTS_Tests: fix both TC_si_sched[_13_2bis_2ter]_2quater
The current definition of the SI2quater Rest Octets is incomplete.
In particular, the missing part is Repeated UTRAN FDD/TDD Neighbour
Cells structure, for which 3GPP came up with a very tricky encoding.

Given that both test cases checking scheduling of the SI messages
and not their content, let's simply use different SI2quater samples
containing E-UTRAN Parameters Description instead.

Change-Id: I3556be33eda17dd6fce347b390a3662d43064897
Fixes: OS#4662, OS#4800
2020-10-24 21:46:35 +07:00
Philipp Maier 149c392f25 BTS_Tests: add FAACH to TC_meas_res_speech_tchX
The current TC_meas_res_speech_tchX tests only test a pure voice
transmission. A voice transmission can be occasionally interrupted by
FACCH transmissions. This should also be tested. Lets ad a _facch
variant for the two speech test variants we already that injects a FACCH
from time to time.

Related: OS#4799
Change-Id: Ie9cd39739d4b972f4e533a7bc90f79e914888aab
2020-10-22 17:33:57 +02:00
Pau Espin d6d69b50fc bts-lapdm: Early termination on f_lapdm_transceive_mo() failure
Change-Id: Ib0db631bc4c203cc1aeaad2640656e3f6942516f
2020-10-21 11:52:23 +00:00
Pau Espin faf97060a5 bts-lapdm: Introduce test TC_normal_reestablishment_state_unacked
Related: OS#4819
Change-Id: I551beaa29b9a1d3af0b1517e06ae1badf7e1bd3f
2020-10-21 11:52:23 +00:00
Pau Espin 820b4746eb bts-lapdm: Introduce test TC_normal_reestablishment
Related: OS#4819
Change-Id: I5eb07a6abf5a260e2f62c177f8c100305d44155a
2020-10-21 11:52:23 +00:00
Vadim Yanitskiy 5fa8561b99 BTS_Tests: introduce TC_speech_no_rtp_{tchf,tchh}
The purpose of these new test cases is to demonstrate a problem
described in OS#4823: the IUT sends *dummy bursts* in absence of
MT RTP frames, so on the MS side it looks like RF failures.

It's not yet clear what needs to be sent by the BTS in this kind
of situation, but at least we can verify that whatever is sent
can be decoded on the MS side without CRC errors.

Change-Id: I620ea84ae92c976a62c1f8334ec14a2a7685aa21
Related: OS#4823
2020-10-21 11:51:18 +00:00
Alexander Couzens 7b1e44f791 PCU: add IPv6 support for SNS
With PCUIF 10 the remote can be IPv4 or IPv6.
Add all missing parts including SNS IPv6 elements,
the support to omit IPv4 elements and a PCU_Tests_SNSv6.cfg
configuration to run all tests with IPv6

Change-Id: I43d64caca600fff78f3fbbb3e8179f447f235d46
2020-10-21 11:49:54 +00:00
Neels Hofmeyr 02ce0b61fd smlc: remove temp dev artifact that skips most tests
Change-Id: I4feb4fe4578e4c15800d7dad82fb1a345241345d
2020-10-21 00:50:26 +02:00
Harald Welte 5ebf798131 bts: Run everything over 127.0.0.1
When the test is executed outside of docker, having to manage all
those different IP addresses while manually starting programs can be
quite cumbersome.  Let's just run everything over localhost, like
we always do with other tests.

Now the only cumbersome command to start is trxcon, as it defaults to
only one TRX and adding additional TRX is rather complicated:

./fake_trx.py --trx TRX1@127.0.0.1:5700/1 --trx TRX2@127.0.0.1:5700/2 --trx TRX3@127.0.0.1:5700/3

Change-Id: Iea8519685da7d73696ce9cc2541e93c45c099828
2020-10-20 18:04:57 +02:00
Harald Welte 629fb2ab68 bts/osmo-bts.cfg: Enable GSMTAP for FACCH on TCH/F and TCH/H
Change-Id: I8aa118b733ea36e9ba591de7b935a31bdbe07129
2020-10-20 18:04:57 +02:00
Harald Welte 96200af9d5 bts/osmo-bsc.cfg: Remove deprecated config directives
Change-Id: Ib3406913a2f7c07b817fd143550be9f46efd4375
2020-10-20 18:04:57 +02:00
Vadim Yanitskiy 780bc07a25 BTS_Tests: introduce TC_meas_res_speech_tchh_toa256()
Change-Id: Ib35e5a1ac0b25e6a1f0f395e4e2693ca99548217
Related: OS#4799
2020-10-20 02:46:13 +07:00
Vadim Yanitskiy 0b65219ec5 BTS_Tests: fix DTE in TC_meas_res_sign_tchh_toa256()
Change-Id: Iecd9dd968ad8ee648bfb8a5c32364f53c7ae0c97
Related: OS#4799
2020-10-20 02:45:13 +07:00
Vadim Yanitskiy 8fc43df69f library/RSL_Types: reorder the arguments of ts_RSL_ChanMode_SIGN
This way it's consistent with ts_RSL_ChanMode, and there is
no need to pass dtx_downlink := false as the first param.

Change-Id: I0b87ef87f8cfff1c96b0beead29d549d5fe0b7c6
2020-10-20 02:24:14 +07:00
Philipp Maier ac693462dd BTS_Tests: fix CHANnel ACTIVation message in TC_meas_res_sign_tchX
The testcase TC_meas_res_sign_tchX activates a traffic channel in
signalling mode and checks the RSL resulting measurement reports.

The CHANnel ACTIVation message sets "SDCCH" as "Channel rate and Type"
value. This is invalid, the "Channel Rate and Type" sould be set to "Half /
Full rate TCH Channel Lm / Bm" (while the speech or data indicator is
still set to "Signalling")

Change-Id: I51887b0d0379fcc1f4483d08dfdd6869e7a9f963
Related: OS#4799
2020-10-19 19:07:44 +00:00
Pau Espin 5fa5b8823c cosmetic: library/LAPDm_Types.ttcn: Fix trailing whitespace
Change-Id: I1fa46a10ca714f63c782004c877f7df96c591fad
2020-10-19 20:19:47 +02:00
Vadim Yanitskiy 652e60eb83 BTS_Tests: add TC_ms_pwr_ctrl_pf_ewma: test EWMA based power filtering
This test case is very similar to TC_ms_pwr_ctrl_constant(), but the
key difference that we simulate sharp UL RSSI changes between -50 dBm
and -100 dBm on each iteration.

The 'uplink-power-target' (-75 dBm) is right in the middle of the
change range, so with EWMA filtering and 80% smoothing it's expected
that all averaged UL RSSI values would be around -75 dBm.

It's expected that the Uplink power level remains constant, however
this test case fails at the moment.  The problem is that the IUT is
still quite sensitive to small deviations from 'uplink-power-target',
so ideally we should introduce a 'hysteresis' defining a range:

  ['target' - 'hysteresis' ... 'target' + 'hysteresis']

in which the MS power loop should not trigger any power changes.

For example, let's say:

  'uplink-power-target' is -75 dBm (default), and
  'hysteresis' is 8 dBm,

so then the range would be: -83 dBm ... -67 dBm.

Change-Id: I3be1a4a4a0ab7eebb9a930eee7039295c045a791
Depends: Iacedbd4d69d3d74e2499af5622a07a8af0423da0
Related: SYS#4916
2020-10-19 18:08:32 +00:00
Vadim Yanitskiy ceb1f9888f PCU_Tests: fix readability of code using t_RLCMAC_UL_DATA_TLLI
Change-Id: I175f8ce2606050c6b4ea54eae4e00846291d462f
2020-10-19 18:02:15 +00:00
Vadim Yanitskiy 8e6df0c811 PCU_Tests: add missing f_shutdown(final := true) statements
Otherwise those test cases may sporadically fail due to DTE:

  Sending data on the connection of port CLCK to 8:CLCK failed. (Broken pipe)

Change-Id: Ia8c934697a4e7bc39e762bf81587fea3bbe11b17
2020-10-19 18:02:01 +00:00
Vadim Yanitskiy 204b98c5a7 BTS_Tests: introduce TC_meas_res_speech_tch{f,h}
The new test cases are similar to TC_meas_res_sign_tch{f,h}, with
the only difference that TCH channels are activated in speech mode.

Change-Id: I8455e3749ab72a463c00dd0ed28b69ef6f389aa1
Related: OS#4799
2020-10-19 17:36:19 +00:00
Vadim Yanitskiy dc00811b7f BTS_Tests: introduce and use TCH loop - as_l1_tch_loop()
Change-Id: Icd4c86e04a5f7a88ff8874a6be194fe13bb9e80c
Related: OS#4799
2020-10-19 17:36:19 +00:00
Vadim Yanitskiy a4f88c6949 BTS_Tests: cosmetic: rename 'as_l1_dcch' to 'as_l1_dcch_loop'
Change-Id: I06083e2352408f5832603fa88232d2008bce218d
Related: OS#4799
2020-10-19 17:36:19 +00:00
Vadim Yanitskiy 161858372a library/L1CTL_Types: use traffic forwarding mode by default
Calypso PHY (unlike trxcon) needs to be explicitly configured to
enable forwarding of the TCH traffic.  Otherwise it's handled
internally by the DSP and routed to/from the built-in speaker/mic.

Change-Id: I5b9ca5683627716868e85dc33f91d8ca4824cd61
Related: OS#4799
2020-10-19 17:36:19 +00:00
Vadim Yanitskiy 52787bf97f BTS_Tests: indicate TCH mode to the L1 in f_est_dchan()
Otherwise the L1 (trxcon or Calypso PHY) would 'think' that we're
in signalling mode, and would not send us Bad Frame Indications.

Change-Id: I0ade3bd63f604c7f0665124b182a023d50030d0b
Depends: I6f403ed0506b4b1872361d9976d3186bfe514b52
Related: OS#4799
2020-10-19 17:36:19 +00:00
Pau Espin d0ec1490c6 bts-oml: Verify BTS obj becomes Enabled durig OPSTART ACK
Change-Id: Iabe2677a458e169e646eb5a105ec9897c48eecc4
2020-10-19 17:33:37 +00:00
Pau Espin d431248f67 bts: Drop duplicated f_establish_dcch
A private copy of the function already exists in LAPDm_RAW_PT.ttcn where
it is used.

Change-Id: I141269b432d85b18b273992419b5ae3470569cde
2020-10-19 18:42:00 +02:00
Daniel Willmann 44940c0459 gbproxy: Fix config formatting, disable handle_sns explicitly
Related: SYS#5002
Change-Id: I23bac78a6b96e72752ceb1702179bcb46a10d988
2020-10-19 14:57:18 +00:00