Osmocom Packet control Unit (PCU): Network-side GPRS (RLC/MAC); BTS- or BSC-colocated
https://osmocom.org/projects/osmopcu
39645b824a
Currently incoming BSSGP STATUS messages are just logged and apart from that ignored. Since it is possible that the gbproxy can eventually send both valid replies (from the primary SGSN) and STATUS(unknown BVCI) messages (from the secondary SGSN). Since the PCU assumes in this case that the BVC has been successfully reset and unblocked, it will not send a BVC RESET message after receiving an NS_UNBLOCK. This commit changes gprs_bssgp_pcu_rcvmsg to pass BSSGP STATUS messages to bssgp_rcvmsg() which will in turn call bssgp_prim_cb() with primitive NM_STATUS. Then the BVC RESET or UNBLOCK procedure will be started if the IE in the message matches and the PCU assumes that the BVC should have been successfully reset and unblocked respectively while the STATUS message tells otherwise. Note that bssgp_rcvmsg() from libosmocore is otherwise used for the SGSN side only, albeit it generally just decodes messages, does basic protocol handling and eventually invokes PRIM indications. The only exception here is the handling of BVC RESET, which is implemented specifically for the SGSN. Ticket: OW#1414 Sponsored-by: On-Waves ehf |
||
---|---|---|
contrib | ||
examples | ||
src | ||
tests | ||
.gitignore | ||
COPYING | ||
Makefile.am | ||
README | ||
TODO | ||
configure.ac | ||
git-version-gen | ||
osmoappdesc.py |
README
This is an implementation of Packet Control Unit (PCU) according to TS 04.60 The PCU is part of BSS, so it connects directly to SGSN. == Current limitations == * No PFC support * No fixed allocation support * No extended dynamic allocation support * No unacknowledged mode operation * No PCCCH/PBCCH support * Only single slot assignment on uplink direction * No half-duplex class support (only semi-duplex) * No handover support * No measurement support * No TA loop * No power loop * No CS loop * No EGPRS