This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
pespin gerrit-no-reply at lists.osmocom.orgpespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/19177 ) Change subject: pcu: Introduce test TC_ul_tbf_reestablish_with_pkt_resource_req ...................................................................... pcu: Introduce test TC_ul_tbf_reestablish_with_pkt_resource_req Related: OS#4657 Change-Id: Ic251339afb9caa23d9a4e7bdb135d42a36a203d5 --- M pcu/GPRS_Components.ttcn M pcu/PCU_Tests.ttcn 2 files changed, 68 insertions(+), 3 deletions(-) Approvals: laforge: Looks good to me, but someone else must approve daniel: Looks good to me, approved Jenkins Builder: Verified diff --git a/pcu/GPRS_Components.ttcn b/pcu/GPRS_Components.ttcn index 6018b7b..bba2c97 100644 --- a/pcu/GPRS_Components.ttcn +++ b/pcu/GPRS_Components.ttcn @@ -647,13 +647,14 @@ } } -function f_rx_rlcmac_dl_block_exp_ack_nack(out RlcmacDlBlock dl_block, out uint32_t poll_fn) +function f_rx_rlcmac_dl_block_exp_ack_nack(out RlcmacDlBlock dl_block, out uint32_t poll_fn, + template RlcmacDlBlock acknack_tmpl := (tr_RLCMAC_UL_ACK_NACK_GPRS(ul_tfi := ?), + tr_RLCMAC_UL_ACK_NACK_EGPRS(ul_tfi := ?))) runs on MS_BTS_IFACE_CT { var uint32_t dl_fn; f_rx_rlcmac_dl_block(dl_block, dl_fn); - if (match(dl_block, tr_RLCMAC_UL_ACK_NACK_GPRS(ul_tfi := ?)) or - match(dl_block, tr_RLCMAC_UL_ACK_NACK_EGPRS(ul_tfi := ?))) { + if (match(dl_block, acknack_tmpl)) { poll_fn := f_rrbp_ack_fn(dl_fn, dl_block.ctrl.mac_hdr.rrbp); return; } diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index 10a9275..42f3f2b 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -1592,6 +1592,70 @@ f_shutdown(__BFILE__, __LINE__, final := true); } +/* Test scenario where MS wants to request a new TBF once the current one is + * ending, by means of sending a Packet Resource Request on ul slot provided by + * last Pkt Ul ACK's RRBP. + * See 3GPP TS 44.060 sec 9.3.2.4.2 "Non-extended uplink TBF mode" */ +testcase TC_ul_tbf_reestablish_with_pkt_resource_req() runs on RAW_PCU_Test_CT { + var CodingScheme exp_cs_mcs := CS_1; + var RlcmacDlBlock dl_block; + var octetstring data := f_rnd_octstring(10); + var uint32_t sched_fn; + var uint32_t dl_fn; + var template RlcmacDlBlock acknack_tmpl; + var GprsMS ms; + + /* Initialize NS/BSSGP side */ + f_init_bssgp(); + /* Initialize GPRS MS side */ + f_init_gprs_ms(); + ms := g_ms[0]; /* We only use first MS in this test */ + + /* Initialize the PCU interface abstraction */ + f_init_raw(testcasename()); + + /* Establish BSSGP connection to the PCU */ + f_bssgp_establish(); + f_bssgp_client_llgmm_assign('FFFFFFFF'O, ms.tlli); + + /* Establish an Uplink TBF */ + f_ms_establish_ul_tbf(ms); + + /* Send one UL block (with TLLI since we are in One-Phase Access + contention resoultion) and make sure it is ACKED fine */ + f_ms_tx_ul_data_block_multi(ms, 1, with_tlli := true); + + /* UL block should be received in SGSN */ + BSSGP[0].receive(tr_BSSGP_UL_UD(ms.tlli, mp_gb_cfg.cell_id)); + + acknack_tmpl := tr_RLCMAC_UL_ACK_NACK_GPRS(ms.ul_tbf.tfi, + tr_UlAckNackGprs(ms.tlli, + tr_AckNackDescription(final_ack := '1'B), + tr_UlAckNackGprsAdditionsRel99(tbf_est := true))) + f_rx_rlcmac_dl_block_exp_ack_nack(dl_block, sched_fn, acknack_tmpl); + + /* TODO: verify TBF_EST and FinalACK are both '1' above */ + + /* Send PACKET RESOURCE REQUEST to request a new UL TBF */ + f_ms_tx_ul_block(ms, ts_RLC_UL_CTRL_ACK(valueof(ts_RlcMacUlCtrl_PKT_RES_REQ(ms.tlli, omit))), sched_fn); + f_ms_rx_imm_ass_pacch(ms, sched_fn, tr_RLCMAC_UL_PACKET_ASS); + /* DL ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */ + f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); + + /* Send one UL block (without TLLI since we are in Second-Phase Access) + and make sure it is ACKED fine */ + f_ms_tx_ul_data_block_multi(ms, 1, with_tlli := false); /* TODO: send using cs_mcs */ + + /* UL block should be received in SGSN */ + BSSGP[0].receive(tr_BSSGP_UL_UD(ms.tlli, mp_gb_cfg.cell_id)); + + f_rx_rlcmac_dl_block_exp_ack_nack(dl_block, sched_fn, acknack_tmpl); + /* ACK the ACK */ + f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); + + f_shutdown(__BFILE__, __LINE__, final := true); +} + private function f_pkt_paging_match_imsi(in PacketPagingReq req, hexstring imsi) runs on RAW_PCU_Test_CT { var MobileIdentityLV_Paging mi_lv := req.repeated_pageinfo.cs.mobile_identity; -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/19177 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Ic251339afb9caa23d9a4e7bdb135d42a36a203d5 Gerrit-Change-Number: 19177 Gerrit-PatchSet: 3 Gerrit-Owner: pespin <pespin at sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel <dwillmann at sysmocom.de> Gerrit-Reviewer: fixeria <vyanitskiy at sysmocom.de> Gerrit-Reviewer: laforge <laforge at osmocom.org> Gerrit-Reviewer: lynxis lazus <lynxis at fe80.eu> Gerrit-Reviewer: pespin <pespin at sysmocom.de> Gerrit-MessageType: merged -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200714/7acbb5d9/attachment.htm>