Bug #2406

CS-PAGING not implemented

Added by laforge over 2 years ago. Updated 8 days ago.

Target version:
Start date:
Due date:
% Done:


Spec Reference:


BSSGP PAGING CS is used to deliver a circuit-switched paging request to a MS while it is engaged in transferring GPRS data. The related paging request is not sent via Broadcast/PCH, but via PACCH to that MS.

Related issues

Related to OsmoPCU - Bug #3927: Missing PCU_Tests.ttcn Paging testsResolved04/15/2019

Related to OsmoPCU - Bug #2403: PS-PAGING and CS-PAGING not implemented on PTP-BVCIResolved07/29/2017


#1 Updated by laforge over 2 years ago

  • Priority changed from Normal to Low

#2 Updated by laforge over 1 year ago

#3 Updated by laforge over 1 year ago

  • Assignee changed from laforge to msuraev

#4 Updated by laforge 10 months ago

  • Assignee changed from msuraev to lynxis

#5 Updated by laforge 5 months ago

  • Assignee changed from lynxis to osmith

Please note this is mostly relevant with other core networks than osmocom. In osmcoom, the MSC pages the BSC and the BSC pages the BTS, which then passes it to the PCU for transmission. This works.

However, when using a non-osmocom core with Gs interface between MSC and SGSN for paging coordination, the SGSN will likely send us CS-PAGING and we have to implement it in the PCU for interoperability.

#6 Updated by osmith 4 months ago

  • Status changed from New to In Progress

#7 Updated by pespin about 2 months ago

  • Related to Bug #3927: Missing PCU_Tests.ttcn Paging tests added

#8 Updated by pespin about 2 months ago

While developing some TTCN3 PCU tests (#3927) I also tried to understand better this scenario. Some references I could fine:
TS 23.060 sec 6.3.3 CS Paging (A/Gb mode)
TS 48-008 sec 3.1.10 Paging
TS 24.008 sec 4.7.9 Paging procedure
TS 44.018 sec paging
TS 48.018 sec 5.2.4, 7.1
PAGING-PS: TS 48.018 10.3.1
PAGING-CS: TS 48.018 10.3.2

Specially important are the last 2, where the SGSN->PCU PDUs requesting the paging are described.

As far as I understand, we already implement paging (not sure if correctly) in the SGSN: it uses libosmocore's bssgp_tx_paging().
In libosmocore, we also have a symbol which afaiu we should use in osmo-pcu and which I think is not yet use by anybody:

/* Parse a single GMM-PAGING.req to a given NSEI/NS-BVCI */
int bssgp_rx_paging(struct bssgp_paging_info *pinfo,
            struct msgb *msg)

It seems PS-PAGING is already supported by osmo-pcu, while CS-PAGING is not:

        gprs_bssgp_pcu_rx_paging_ps(msg, tp);
        LOGP(DBSSGP, LOGL_INFO, "Rx BSSGP BVCI=%d (SIGN) PDU type %s not implemented\n",
             bvci, bssgp_pdu_str(pdu_type));

If I understand correctly, what's missing here is to do something similar to what we do when PCU receives a struct gsm_pcu_if_pag_req with type PCU_IF_MSG_PAG_REQ on pcu_rx_pag_req() from BTS. That path is already covered by PCU_Tests_RAW.TC_paging_cs_from_bts, where a DL_PACKET_PAGING_REQUEST is sent over PACCH. The only difference in this scenario is that the PAGING_REQUEST must be retriggered on reception of the CS-PAGING message from SGSN in gprs_bssgp_pcu.cpp.

So mainly calling libosmocore's bssgp_rx_paging() and then calling similar to what pcu_rx_pag_req() does:

    return BTS::main_bts()->add_paging(pag_req->chan_needed,

#9 Updated by pespin about 2 months ago

  • Related to Bug #2403: PS-PAGING and CS-PAGING not implemented on PTP-BVCI added

#10 Updated by pespin about 2 months ago

  • Status changed from In Progress to Feedback
  • % Done changed from 0 to 90

Done so far:
remote: Allow Gb PAGING-PS without P-TMSI
remote: Support Gb PAGING-CS

Can be tested with TTCN3 PCU test TC_paging_cs_from_sgsn.

#11 Updated by pespin about 1 month ago

  • Assignee changed from osmith to pespin

Testing is done here: pcu: Introduce tests for CS and PS paging from SGSN/Gb

#12 Updated by pespin 8 days ago

  • Status changed from Feedback to Resolved
  • % Done changed from 90 to 100

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)