Project

General

Profile

OsmoPCU » History » Revision 26

Revision 25 (laforge, 05/11/2018 11:03 AM) → Revision 26/32 (msuraev, 03/14/2019 02:55 PM)

h1. osmo-pcu 

 {{>toc}} 

 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. 

 It implements a custom L1 interface that can be used with [[OsmoBTS:]] (specifically its 
 "sysmoBTS":http://www.sysmocom.de/products/sysmobts back-end), and also with 
 [[OsmoTRX:]]. 

 The interface between OsmoPCU and OsmoBTS runs over UNIX socket of SOCK_SEQPACKET type. One of the ways to debug it would be via socat: 
 <pre> 
 socat -t30 -x -v UNIX-LISTEN:/tmp/pcu_bts.socat,mode=755,type=5 UNIX-CONNECT:/tmp/pcu_bts,type=5 
 </pre> 
 One might even forward it over network: 
 <pre> 
 socat -t30 -x -v UDP-LISTEN:1666,reuseaddr,fork UNIX-CONNECT:/tmp/pcu_bts,type=5 
 socat -t30 -x -v UNIX-LISTEN:/tmp/pcu_bts.socat,mode=755,type=5 UDP-CONNECT:127.0.0.1:1666 
 </pre> 
 Note: in the examples above OsmoBTS (listening side) uses default @/tmp/pcu_bts@ socket while OsmoPCU (connecting side) is configured to use @/tmp/pcu_bts.socat@ via @pcu-socket /tmp/pcu_bts.socat@ config option. It's not recommeded to use outside of TTCN-3 test environment due to amount of traffic over the socket. 

 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 now considered stable and already performing useful service for a number of users, but as one 
 of the more recent additions to the Osmocom family, there still is plenty of area for improvement. 

 h2. Position in a typical Osmocom network 

 {{graphviz_link() 
 digraph G { 
     rankdir = LR; 
     OsmoBTS -> OsmoBSC [label="Abis/IP"]; 
     OsmoBSC -> OsmoMSC [label="3GPP AoIP"]; 
     OsmoBTS -> OsmoPCU [label="pcu_sock"]; 
     OsmoPCU -> OsmoSGSN [label="Gb/IP"]; 
     OsmoMSC -> OsmoHLR [label="GSUP"]; 
     OsmoSGSN -> OsmoHLR [label="GSUP"]; 
     OsmoSGSN -> OsmoGGSN [label="Gp"]; 
     OsmoGGSN -> Internet [label="Gi"]; 
     OsmoPCU [color=red]; 
 } 
 }} 


 h2. Manuals 

 * User Manual: http://ftp.osmocom.org/docs/latest/osmopcu-usermanual.pdf 
 * VTY Reference: http://ftp.osmocom.org/docs/latest/osmopcu-vty-reference.pdf 
 * Gb/IP Manual: http://ftp.osmocom.org/docs/latest/osmopcu-gb.pdf 

 h2. Source Code 

 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/ 

 h2. Test Suite 

 We have a TTCN-3 test suite as part of our [[cellular-infrastructure:Titan_TTCN3_Testsuites]] 
 * source code: http://git.osmocom.org/osmo-ttcn3-hacks/tree/pcu 
 * results: https://jenkins.osmocom.org/jenkins/view/TTCN3/job/ttcn3-pcu-test/ 

 h2. Mailing List 

 There is a mailing list for (development) discussion regarding the PCU: osmocom-net-gprs@lists.osmocom.org 
 You can subscribe to it (or manage your subscription) at http://lists.osmocom.org/cgi-bin/mailman/listinfo/osmocom-net-gprs 

 Please make sure to read our [[cellular-infrastructure:MailingListRules]] before posting. 

 h3. Supported 

 * GPRS CS1 to CS4 with dynamic link/rate adaption 
 * EDGE MCS1-MCS9 with dynamic link/rate adaption 
 * Single-slot and multi-slot operation on downlink 
 * Single-slot operation on uplink 
 * Independent TFI/USF per PDCH in single-slot allocation mode 
 * Automatic or fixed PDCH allocation algorithm selection 
 * Delayed release of downlink TBF 
 * Active queue management for downlink TBF (!CoDel) 
 * Initial setting of timing advance based on RACH 
 * BSSGP BVC flow control support 
 * Using pchan types of @TCH/F_TCH/H_PDCH@ or @TCH/F_PDCH@, OsmoBTS supports 
   dynamic PDCH/TCH switching (implemented entirely in osmo-bts) 


 h3. Shortcomings / Limitations / Restrictions 

 _Note: this list may be outdated_ 

 * No GPRS/EGPRS mixed mode (yet) 
 * No support for hand-over of any sort yet 
 * No support of processing measurement reports 
 * No timing advance loop, i.e. radial movement is limited 
 * No support for power control 
 * No Packet Access Reject message on congestion, access is just ignored 
 * No PCCCH support 
 * Only "Dynamic allocation RLC data block transfer" is supported 
 * No network controlled measurement/cell reselection order supported 
 * No PTCCH support 
 * No support for Packet Flow Contexts (PFC) 
 * No support for MS or PFC flow control 
 * No support for RLC unacknowledged mode operation 
 * No support for MBMS 

 h2. Authors / Credits 


 osmo-pcu was originally developed by Ivan Kluchnikov and Andreas Everberg. 

 Today it is maintaned by Sysmocom.
Add picture from clipboard (Maximum size: 48.8 MB)