A PCU (Packet Control Unit) is one of the two GPRS elements in the BSS. It implements the RLC and MAC layers of the GPRS Um (radio) interface on the MS-facing side, as well as the Gb Interface (NS,BSSGP) on the SGSN-facing side.
osmo-pcu is the Osmocom implementation of this PCU functionality.
Towards the SGSN, the BSSGP and NS protocols are implemented over UDP/IP, sometimes called "NS over IP". It has been tested with OsmoSGSN? as well as an Ericsson SGSN so far.
osmo-pcu is not fully stable yet, but already performing useful service for a number of users.
The source code is available from git://git.osmocom.org/osmo-pcu.git
You can browse it online via http://cgit.osmocom.org/cgit/osmo-pcu/
The branch to be used with OsmoBTS and sysmoBTS is the 'jolly_merge' branch.
There is a mailing list for (development) discussion regarding the PCU: firstname.lastname@example.org. You can subscribe to it (or manage your subscription) at http://lists.osmocom.org/cgi-bin/mailman/listinfo/osmocom-pcu
Information about testing is available here: GPRS-testing
- GPRS CS1 to CS4
- single-slot and multi-slot operation on downlink
- only single-slot operation on uplink
Shortcomings / Limitations / Restrictions
- Pure GPRS PCU, no EGPRS (EDGE) functionality
- Timeslots have to be assigned dedicated as a PDCH, no dynamic PDCH/TCH switching
- No support for hand-over of any sort yet
- No support of processing measurement reports
- No timing advance loop, i.e. maximum cell radius 2-3 km
- No dynamic link adaption for different coding schemes
- No resource-dependent flow control