Commit Graph

3553 Commits

Author SHA1 Message Date
Pau Espin bfad97fa2b ggsn: Parametrize T3-RESPONSE and N3-REQUESTS
Since osmo-ggsn.git Ia15c1cfd201d7c43e9a1d6ceb6725ddf392d2c65 osmo-ggsn
supports configuration of X3 timer, which should be set to (T3-RESPONSE
* N3-REQUESTS) configured at the peer.
The default values are 5 and 3 respectively, hence X3 is by default
5*3=15 seconds.
Let's use that default value for now.
Once new osmo-ggsn version is released, we can speed up test duration by
decreasing the values of the module parameters introduced in this commit
and configure VTY gtp timers at osmo-ggsn accordingly.

Related: OS#5485
Change-Id: I02c0982674b43317a5fc8f341c03eeeb1efee77f
2022-11-05 00:20:53 +00:00
Oliver Smith a67730465e BSC: extend TC_ho_meas_rep_multi_band for ARFCN=0
Adjust the test to also check the special case ARFCN=0, which is at the
end of each sub list.

Related: OS#5717
Related: osmo-bsc Ic5e4f0531e08685460948b102367825588d839ba
Change-Id: Ia8f94d72651061427afc9e34f678544f89d0149b
2022-11-04 14:17:59 +00:00
Oliver Smith c9a5f53ede BSC: add TC_ho_meas_rep_multi_band
Related: OS#5717
Related: osmo-bsc Ic5e4f0531e08685460948b102367825588d839ba
Change-Id: I4fe6bb9e4b5a69ea6204585ebdf1f157a68a8286
2022-11-04 14:17:59 +00:00
Oliver Smith 39f530751f BSC: reset handover related vty cfg after ho tests
Reset the handover related configuration to what is in osmo-bsc.cfg
after running handover tests.

Change-Id: I8ca6909dec633f0c1f26b5e72a7cfc1931c0ec54
2022-11-04 14:17:59 +00:00
Pau Espin 99e00b480d pcu: Introduce tests TC_ul_tbf_{1,2}phase_while_dl_ass_pch
Related: OS#5700
Change-Id: I6a72c36265bfdc757180cbb466492ad6bbbf16ad
2022-11-04 09:35:37 +00:00
arehbein a084fbe605 Fix missing quotes for possibly unresolved variables in shell test-statements
Related: OS#5736

Change-Id: I7e7f4f95d1a7cc886360c733908c63a2843b0906
2022-11-02 17:36:35 +00:00
Vadim Yanitskiy 6ff06a301b BTS_Tests: fix TC_conn_fail_crit: tune the MS back to BCCH
osmo-bts-trx declares a connection failure when the radio link counter
S reaches 0.  This counter is decreased every time the Viterbi decoder
yields a decoding error on the Uplink SACCH.  For more details, see
3GPP TS 45.008, section 5.2.

The scheduler in osmo-bts-trx expects NOPE indications to be sent by
the transceiver in the absence of valid Uplink bursts.  However, due
to the asynchronous nature of TRXD link, our virtual Um interface
implementation, fake_trx.py, does not generate NOPE indications on
it's own.  Instead, trxcon is sending empty TRXDv0 PDUs (BURST.req),
which are then translated to proper TRXDv1 NOPE.ind by fake_trx.py.

The TC_conn_fail_crit currently sends L1CTL_DM_REL_REQ in order to
simulate connection loss, what makes trxcon disable all active
timeslots and thus stop sending NOPE.req to fake_trx.py.

Let's tune trxcon back to BCCH, in order to ensure that NOPE.req
messages are still being sent, so that osmo-bts-trx will be able
to declare a connection failure over the RSL as expected.

Change-Id: I34aee95111eafea90eeeea861682f1b4547d7b03
Related: Ic292d180ba64206fb4d88adb284f9f9d058b4587
2022-11-01 00:02:00 +07:00
Pau Espin 15b2b94883 cosmetic: pcu: Fix typo in several comments
Change-Id: I7a2419514582cb9efd8df126bf449711f78586fe
2022-10-28 15:08:44 +02:00
Pau Espin 0b6b0d0bdb pcu: Introduce test TC_ul_tbf_finished_pkt_dl_ass_pch
Related: OS#5700
Change-Id: Id99b048e7c305fe616bb54437313a1e45449ff57
2022-10-28 15:07:11 +02:00
Neels Hofmeyr e860fc49d9 msc: test auth options, and fall-back to no-auth
Test 12 permutations of
(auth optional,required) x (a5 '0', '0 3', '3') x (hlr has auth info)

In TC_auth_options_2(), expect behavior after implementing OS#4830: if
the HLR fails to return auth info and auth + ciph are configured
optional, fall back to no authentication. This test will start
succeeding starting with commit
I5feda196fa481dd8a46b0e4721c64b7c6600f0d1 in osmo-msc.git.

All other tests yield the current behavior of osmo-msc.

Related: I5feda196fa481dd8a46b0e4721c64b7c6600f0d1 (osmo-msc)
Related: OS#4830
Change-Id: I8e3b02ca83e56ef5349d85f08407509e19fa353c
2022-10-26 15:35:12 +00:00
Pau Espin 262584764f mgw: Introduce test to validate Osmux<->RTP-AMR-BWE
Related: SYS#6161
Change-Id: I974e265938da15639acae7e2c9c589d5784ae5c5
2022-10-26 11:16:14 +02:00
Pau Espin 30f0667a4d osmux: Generate AMR OA payload paddings bits as 0
Some AMR format's payload size doesn't necessarily fit octet boundaries.
When AMR octet-aligned is used, padding bits are appended at the end to
fill the octet.
Until this patch, the padding bits where set with whatever payload fill
pattern was provided. Instead of doing so, better set the padding bits
to 0 to avoid conflicts when checking the received paytload later on,
since those bits are potentially be going to be set to 0 (eg when
converting to bandwidth-efficient).

Related: SYS#6161
Change-Id: I5bc68eb05c2f5500a259f4c73d14b51794f7f078
2022-10-26 11:16:08 +02:00
Vadim Yanitskiy 389d7e061f BSC_Tests: fix TC_mgwpool_pin_bts: do not leave MGW1 configured
For the purpose of testing MGW pooling, test cases TC_mgwpool_*
configure an additional MGW instance by calling f_vty_mgw_enable()
and then remove it by calling f_vty_mgw_disable().

Unlike the other two TC_mgwpool_* test cases, TC_mgwpool_pin_bts
does not call f_vty_mgw_disable() - this breaks LCLS testcases
executed after it.  Add the missing call.

Change-Id: I3157203888d704b25aabd2569035cd95d48c48b2
Fixes: 3f41e321c7
Fixes: OS#5727
2022-10-25 18:17:51 +07:00
Vadim Yanitskiy 382138e84c library: move IA/IAR RO templates to GSM_RestOctets.ttcn
Change-Id: I3d3ad6228c44fd06620e8e97f08b24346f876972
2022-10-21 11:00:35 +00:00
Pau Espin a6d488d551 bts: Log unexpected RSL message
This is useful when doing first look at failed tests in jenkins.

Change-Id: I6cdc53ff038858211b09c0a8eeec19603107ffe4
2022-10-21 10:58:02 +00:00
Vadim Yanitskiy a193def9f8 library: declare enc/dec functions for IA/IAR Rest Octets
Change-Id: I0ea850ab056dae8cd3ad3b12db0f3cc7756b424b
2022-10-21 10:35:27 +00:00
Vadim Yanitskiy 150d6d1bdc library: move IA/IAR Rest Octets to GSM_RestOctets.ttcn
Change-Id: Icd96fc461e37d1346950a4fa158e0421bd7330c5
2022-10-21 10:35:27 +00:00
Vadim Yanitskiy c6c194323b {ns,sgsn,gbproxy}: gen_links.sh: do not link unused modules
Change-Id: I8fddd010e2a3ce88c892887fc571ae54d84e931f
2022-10-21 10:35:10 +00:00
Pau Espin 3f41e321c7 bsc: Introduce test TC_mgwpool_pin_bts
Change-Id: If6e5ab5e5d3478621306e716836a5c7ddd129c0d
Related: SYS#5987
2022-10-21 10:59:59 +02:00
Pau Espin d2355e8f2b bsc: Add tests for MGW pool features
Add a couple tests to validate some MGW pool features, like load
balancing and skip selection blocked MGWs from the pool.

Related: SYS#5987
Change-Id: I6a8c30309be406e37190dc67b6ee5af13e1b9e68
2022-10-21 10:59:56 +02:00
Pau Espin 3c63053fe8 bsc: Support running several MGW node emulations
Change-Id: Ic84726c09ad3c6bea3ce6f0198db862d7dbb6dd3
2022-10-20 19:00:11 +02:00
Pau Espin 41b0f915c0 bsc: rename MGW component s/VirtMSC/VirtMGW/
Change-Id: Iad5609d691a746104933dacca62c5375063d49de
2022-10-20 16:51:16 +02:00
Pau Espin 36eeaf7478 cosmetic: bsc: Fix typo
Change-Id: Idd572b262561b03732ba825abee412e2fad17714
2022-10-20 16:50:31 +02:00
Pau Espin 1fcd93707b bsc: Update cfg files to use mgw pooling VTY commands
OsmoBSC has supported this VTY interface since more than a year ago.
Let's update the config files to use the new "mgw" node.

The recently submitted VTY commands without the redundant "mgw" prefix
are still not used here in order to have the config file work with
latest release which still doesn't support those.

Related: SYS#5987
Change-Id: I9b869e6bf4a3910f38014d570dce27e67af6e0d6
2022-10-19 13:38:30 +02:00
Pau Espin cec73acdd4 mgw: Update to contain similar config from docker-playground.git
Change-Id: I2aa4d86e548d6644f1dd9358f6b8b48a19c96c3c
2022-10-11 21:22:16 +02:00
Pau Espin f369983975 mgw: Fix f_two_crcx_mdcx_and_rtp_osmux()
Previously the test was starting to count Osmux packets too early.
Now that osmux conn state has been improved in osmo-mgw [1], Osmux
Rx packets are not forwarded until the conn is completely configured
through MGCP, hence first osmux packets snet by our async emulation
are dropped.
So we must start counting the transmitted valid osmux packets according
to what the test says, when the full conn is set up.

[1] osmo-mgw.git Change-Id I7654ddf51d197a4107e55f4e406053b2e4a02f83.

Related: SYS#5987
Change-Id: I7efd87bbbda2ffa8fd0c5a64658d42edd0f30857
2022-10-11 21:22:16 +02:00
Pau Espin 982b979170 mgw: Remove hack in f_two_crcx_mdcx_and_rtp_osmux() no longer needed
Since osmo-mgw.git 2177919edb3bc0dd308be388272486ffd97f4761, osmo-mgw can handle
properly conns containing a different remote and local CID.
Hence this hack can be dropped.

Related: SYS#5987
Change-Id: I531631d716581f68c11d3c0b07fc6755a822a0d3
2022-10-11 21:22:16 +02:00
Pau Espin 787e2e4292 mgw: Introduce test TC_crcx_osmux_257
Related: SYS#5987
Change-Id: I74e6c760e076fe2547b6297a54524255fb8b
2022-10-11 21:22:09 +02:00
Pau Espin e792887fbb mgw: Avoid hardcoding in test the amount of endpoints configured in osmo-mgw
Some tests require to match what's configured in osmo-mgw.
Let's make it possible to change it through a module parameter.
This will be needed for a follow-up patch to test >256 concurrent osmux
conns, which will require increasing the number of configured endpoints
above that value.

Change-Id: Ia1e5a0b59ba7c49e97c2cf7ee7a009f3827cf36d
2022-10-07 12:45:18 +02:00
Pau Espin db1e068161 mgw: Log osmux stats in f_two_crcx_mdcx_and_rtp_osmux()
Change-Id: I2122e086f828a44ddf1c285e11a1eb79759ae989
2022-10-07 12:45:18 +02:00
Pau Espin 779e4a79af mgw: Rename osmux RtpFlowData fields to clarify them
Change-Id: I64b4060706a321bc1f5e46d791035e6d85fa8e1e
2022-10-07 12:44:42 +02:00
Vadim Yanitskiy 7031893cf5 pcu: fix coding style in f_ms_handle_pkt_neighbor_cell_data()
Change-Id: Ie30c2e031c17c8a6173499635cf10656c33b7e7f
2022-10-05 09:10:36 +00:00
Vadim Yanitskiy 1160284ba6 pcu: cosmetic: fix coding style in f_ms_rx_pkt_ass_pacch()
Change-Id: I901a540e4461eed6019a8e3288ea0bb1f5c4d57d
2022-10-05 09:10:36 +00:00
Vadim Yanitskiy 1030b7ab99 pcu: cosmetic: fix coding style in f_tx_data_ind_fn()
Change-Id: Ib7ffed5573281b343c7691ff218458a0641ee8b0
2022-10-05 09:10:36 +00:00
Vadim Yanitskiy 58f9de2dae library: add send template for PACKET_UL_DUMMY_CTRL
Change-Id: I2e1a0a0523d3e6f7ba8a270ff21fbe17a90a61d0
2022-10-05 09:09:28 +00:00
Vadim Yanitskiy 4f034b147b library: add missing '(value)' specifier to ts_RLCMAC_CTRL_ACK
Change-Id: Ia3176d0443255cba909ec571cda93875704b08b3
2022-10-05 09:09:28 +00:00
Vadim Yanitskiy 7179d3e8d2 library: s/tr_RLCMAC_DUMMY_CTRL/tr_RLCMAC_DL_DUMMY_CTRL/
There also exists UL equivalent of this message, for which I am
planning to add a template.  Let's clarify direction in the name.

Change-Id: I3b19c6679eb432b062e28aee9dd1220dbf33ee31
2022-10-05 09:09:28 +00:00
Pau Espin a990b1bb60 mgw: Set osmux bind-ip(-v6) VTY configs
Until now we forgot to properly configure the osmux socket local ip, but
that was fine because 0.0.0.0 was taken as a default.
With addition of IPv6, this changed, and the socket is not bound unless
an IP address is set (to allow conditional use of IPv4, IPv6 or both).

Depends: osmo-mgw.git Change-Id I446cd7da217e9f4a74995d7784ae55dcc60a29b7
Change-Id: I4e0ea11ae7e55da600aec56bebf694f3ba0f7b72
2022-10-04 18:21:47 +02:00
Pau Espin 5fa8f781c3 ggsn: Fix TC_gy_charging_volume_quota_threshold expectations
in Diameter, the CC-Input/Output direction is defined as follows in
RFC4006:
"""
8.24.  CC-Input-Octets AVP

The CC-Input-Octets AVP (AVP Code 412) is of type Unsigned64 and
contains the number of requested, granted, or used octets that can
be/have been received from the end user.

8.25.  CC-Output-Octets AVP

The CC-Output-Octets AVP (AVP Code 414) is of type Unsigned64 and
contains the number of requested, granted, or used octets that can
be/have been sent to the end user.
"""

So:
* 3GPP uplink is from end user to PGW, and hence 'CC-Input-Octets'
* 3GPP downlink is to end user to PGW, and hence 'CC-Output-Octets'

This test started failing a few days ago since a bug was recently
fixed in open5gs which was swapping the counters in open5gs-upfd:
https://github.com/open5gs/open5gs/pull/1793
f72a1edc6e

Change-Id: I2f64649ce70d85634f14b84eff98731f7711cbad
2022-10-03 14:00:02 +02:00
Vadim Yanitskiy b34f5a9c37 pcu: osmo-pcu.cfg: update GSMTAP Um logging configuration
Change-Id: Ia53f59da04fd30f055ee3a6a46e9afb5ecd48162
2022-10-02 14:48:57 +07:00
Pau Espin 581e1062f1 hnbgw: Add missing results to expected-results.xml
Change-Id: I26ccbaa2b071af981bf707b41bc26fb86de62d77
2022-09-27 15:59:54 +02:00
Pau Espin acf4f225bd hnbgw: Introduce test TC_hnb_register_duplicate_reuse_sctp_assoc
Change-Id: I09ce08917b590ecd6fdf93f8b564a0d53900c871
2022-09-27 14:33:40 +02:00
Neels Hofmeyr 2d29274f32 add upf/ to test osmo-upf
So far testing only PFCP interaction without real GTP traffic.

Related: SYS#5599
Change-Id: If67819dea785597841f21d8c444cb4866cfde571
2022-09-20 13:32:16 +02:00
Pau Espin cd6077f538 bsc: Test assignment of non-AMR codec with Osmux enabled
Change-Id: I31ea10963bdf61b2e070ed6ac3257b872245f724
2022-09-19 20:53:43 +02:00
Vadim Yanitskiy 3998c03df3 BSC_Tests: fix AMR tests matching RSL MultiRate configuration IE
The RSL_IE_MultirateCfg was implemented and added to union RSL_IE_Body
in [1].  Before this change, this IE was decoded as RSL_LV (basically
an octetstring).  Now this IE is decoded as RSL_IE_MultirateCfg, while
some AMR tests still expect RSL_LV.  Let them use RSL_IE_MultirateCfg.

Change-Id: I40dab41d5dc5d14e358ba5a070ce174e7d8d4a4b
Fixes: [1] I0a5ddce570c0fd70f096d897b0b609d20b552ff7
2022-09-14 18:19:28 +07:00
Vadim Yanitskiy 8b18937eef BSC_Tests: f_assignment_codec(): log the actual value on mismatch
Change-Id: I437c1e796b00bfae41620f05ef8f15c8db8ca3d9
2022-09-14 17:48:38 +07:00
Vadim Yanitskiy 9e0139ba6d library/RSL_Types: account lengthof params in ts_RSL_MultirateCfg
In TTCN-3 it's not possible to store templates in records, so in
f_assignment_codec() we match received RSL_IE_MR_CONFIG against the
value (not template!) stored in g_pars.expect_mr_conf_ie.

Because of that, the length field is not being calculated by TITAN
for us, so we need to calculate it in ts_RSL_MultirateCfg ourselves.
Automatic length calculation only works during encoding/decoding
and when matching against a receive template.

Change-Id: I595be86d69913ba25e965a5a5c6977e00c342e60
2022-09-14 17:48:38 +07:00
Neels Hofmeyr bacb74f241 hnbgw: test PS RAB Ass both with and without PFCP
Add mp_enable_pfcp_tests. When true, osmo-hnbgw-with-pfcp.cfg needs to
be used.

Related: I39b9632f8524a9f3455c1a2d7611bfe8ba07c2fd (osmo-hnbgw)
Related: I02b60941343000a4618e95f56326bec170c32bfe (docker-playground)
Related: SYS#6093
Change-Id: I511e758807e0512c18f3f9e0a8c4699b9a3f5992
2022-09-14 10:42:36 +00:00
Vadim Yanitskiy 0345d20778 library/RSL_Types: add params argument to ts_RSL_MultirateCfg
Change-Id: Ia85339a9c268abc84f9b4228f8d418f1dac786e6
2022-09-14 16:47:18 +07:00
Vadim Yanitskiy b9bf00f96a BSC_Tests: fix TC_assignment_osmux_cn: use c_mr_conf_5_90
Currently this testcase fails:

  RSL MR CONFIG IE does not match expectation.
  Expected: { other := { len := 2, payload := '2804'O } }

Change-Id: Icc5381eccb924803b1117b46d2b4c47cee6dabd7
2022-09-14 16:47:18 +07:00