Pau Espin
9b0e78f877
This patch refactors rcv_resource_request() in several ways: * Move the ID_TYPE=DL/UL_TFI handling at the start of the function, so that the function is split in 2 sections: First section gathers a GprsMS object from the ID_TYPE in the PktResReq. Second section handles the packet for the GprsMS based on the expectd ULC slot. * Initial handling of PktResReq when transmitted by the MS on the UL-TBF as an answer to USF. This case is basically the one where the MS wishes to change some parameters of the currently active UL-TBF. In order to do so, for now simply delete the current TBF and re-create a new one to triger the PktUlAss which is expected by the MS. This behavior is not entirely correct since in this case the MS is expected to keep using actively the old TBF until the PktUlAss is received, so in this case ideally we should be keeping the TBF object and simply upgrading it and using itself to trigger a PktUlAss in its ul_tbf->ul_ass_fsm. Doing this however requires far more work, so it can be done later as an incremental step fix. The current behavior is alreday better than the previous one, since the MS has been tested to be PKT_CTRL_ACKing the PKT_UL_ASS and continuing to use the new TBF. Related: OS#4947 Change-Id: Ie6b1b438d26cd977f88ddb4eff6b3041e0739d92 |
||
---|---|---|
contrib | ||
debian | ||
doc | ||
include | ||
src | ||
tests | ||
.gitignore | ||
.gitreview | ||
COPYING | ||
Makefile.am | ||
README.md | ||
TODO | ||
TODO-RELEASE | ||
configure.ac | ||
git-version-gen | ||
osmoappdesc.py |
README.md
osmo-pcu - Osmocom Packet Control Unit
This repository contains a C/C++-language implementation of a GPRS Packet Control Unit, as specified by ETSI/3GPP. It is part of the Osmocom Open Source Mobile Communications project.
The Packet Control Unit is terminating the Layer 2 (RLC/MAC) of the GPRS radio interface and adapting it to the Gb Interface (BSSGP+NS Protocol) towards the SGSN.
The PCU interfaces with the physical layer of the radio interface. OsmoPCU is typically used co-located with the BTS, specifically OsmoBTS. For legacy BTSs that run proprietary sotware without an interface to OsmoPCU, you may also co-locate it with the BSC, specifically OsmoBSC
Homepage
The official homepage of the project is https://osmocom.org/projects/osmopcu/wiki/OsmoPCU
GIT Repository
You can clone from the official osmo-pcu.git repository using
git clone https://gitea.osmocom.org/cellular-infrastructure/osmo-pcu
There is a web interface at https://gitea.osmocom.org/cellular-infrastructure/osmo-pcu
Documentation
We provide a user manual as well as a vty reference manual
Please note that a lot of the PCU configuration actually happens inside the BSC, which passes this configuration via A-bis OML to the BTS, which then in turn passes it via the PCU socket into OsmoPCU.
Mailing List
Discussions related to osmo-pcu are happening on the osmocom-net-gprs@lists.osmocom.org mailing list, please see https://lists.osmocom.org/mailman/listinfo/osmocom-net-gprs for subscription options and the list archive.
Please observe the Osmocom Mailing List Rules when posting.
Contributing
Our coding standards are described at https://osmocom.org/projects/cellular-infrastructure/wiki/Coding_standards
We us a gerrit based patch submission/review process for managing contributions. Please see https://osmocom.org/projects/cellular-infrastructure/wiki/Gerrit for more details
The current patch queue for osmo-pcu can be seen at https://gerrit.osmocom.org/#/q/project:osmo-pcu+status:open
Current limitations
- No PFC support
- No fixed allocation support (was removed from 3GPP Rel >= 5 anyway)
- No extended dynamic allocation support
- No unacknowledged mode operation
- Only single slot assignment on uplink direction
- No half-duplex class support (only semi-duplex)
- No TA loop
- No power loop
- Multi-BTS support not tested