Osmocom's Base Station Controller for 2G mobile networks https://osmocom.org/projects/osmobsc
Go to file
Pau Espin 1e7dd5c0bb paging: Replace reqs waiting for retransmission with new incoming inital req if queue is full
If queue size (in transmit delay of requests) is too long (above
threshold) when a new initial incoming request arrives, instead of
directly discarding it, see if we can drop a pending retransmission and
insert the new one instead, in order to avoid losing initial requests.

This is done under the assumption that it is more important to transmit
intial requests than to retransmit already transmitted ones. The
rationale is that there's lower chances that an MS which didn't answer
lately will answer now (aka being reachable at the cell), so it's better
to allocate resources for new requests (new MS) which may be available
in the cell.

Change-Id: Idfd93254ae456b1ee08416e05479488299dd063d
Related: OS#5552
2022-11-29 12:44:20 +01:00
contrib Set working directory in systemd service file 2022-09-05 13:04:56 +00:00
debian Bump version: 1.8.0.228-6941-dirty → 1.9.0 2022-06-29 11:18:10 +02:00
doc doc: running.adoc: Fix typo in MGW pinning section 2022-10-20 16:34:29 +02:00
include paging: Split paging queue into 2 queues: initial and retrans 2022-11-28 21:31:58 +01:00
m4 Drop unneeded ax_check_compile_flag.m4 2022-01-11 18:15:20 +01:00
src paging: Replace reqs waiting for retransmission with new incoming inital req if queue is full 2022-11-29 12:44:20 +01:00
tests paging: Split paging queue into 2 queues: initial and retrans 2022-11-28 21:31:58 +01:00
.gitignore .gitignore: remove non-existing files 2022-07-22 03:35:22 +07:00
.gitreview
.mailmap
AUTHORS
COPYING
Makefile.am
README.md convert README to README.md; expand on all fronts 2022-06-18 13:34:46 +02:00
README.vty-tests update git URLs (git -> https; gitea) 2022-06-18 14:04:11 +02:00
TODO-RELEASE vty: Make use of new mgcp_client_pool_config_write() API 2022-10-18 14:37:17 +02:00
configure.ac configure.ac: do not require unused dlopen 2022-08-16 23:31:59 +07:00
git-version-gen
osmoappdesc.py

README.md

osmo-bsc - Osmocom BSC Implementation

This repository contains a C-language implementation of a GSM Base Station Controller (BSC). IT is part of the Osmocom Open Source Mobile Communications project.

OsmoBSC exposes

  • A over IP towards an MSC (e.g. OsmoMSC): 3GPP AoIP or SCCPlite
  • Abis interfaces towards various kinds of BTS (osmo-bts, sysmobts, nanoBTS, Siemens, Nokia, Ericsson)
  • The Osmocom typical telnet VTY and CTRL interfaces.
  • The Osmocom typical statsd exporter.
  • Cell Broadcast Service Protocol (CBSP) towards a CBC (Cell Broadcast Centre, such as osmo-cbc).
  • Lb interface towards a SMLC (Serving Mobile Location Centre, such as osmo-smlc).

Homepage

You can find the OsmoBSC issue tracker and wiki online at https://osmocom.org/projects/osmobsc and https://osmocom.org/projects/osmobsc/wiki.

GIT Repository

You can clone from the official osmo-bsc.git repository using

    git clone https://gitea.osmocom.org/cellular-infrastructure/osmo-bsc

There is a web interface at https://gitea.osmocom.org/cellular-infrastructure/osmo-bsc

Documentation

User Manuals and VTY reference manuals are [optionally] built in PDF form as part of the build process.

Pre-rendered PDF version of the current "master" can be found at User Manual as well as the VTY Reference Manual

There also is an Abis reference Manual describing the OsmoBTS specific A-bis dialect, as well as a CBSP Reference Maunal describing the level of CBSP conformance.

Mailing List

Discussions related to osmo-bsc are happening on the openbsc@lists.osmocom.org mailing list, please see https://lists.osmocom.org/mailman/listinfo/openbsc 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-bsc can be seen at https://gerrit.osmocom.org/#/q/project:osmo-bsc+status:open

History

OsmoBSC originated from the OpenBSC project, which started as a minimalistic all-in-one implementation of the GSM Network. In 2017, OpenBSC had reached maturity and diversity (including M3UA SIGTRAN and 3G support in the form of IuCS and IuPS interfaces) that naturally lead to a separation of the all-in-one approach to fully independent separate programs as in typical GSM networks.

OsmoBSC was one of the parts split off from the old openbsc.git. Before, it worked as a standalone osmo-bsc binary as well as a combination of libbsc and libmsc, i.e. the old OsmoNITB. Since the standalone OsmoMSC with a true A interface (and IuCS for 3G support) is available, OsmoBSC exists only as a separate standalone entity.

OsmoBSC-NAT is a specialized solution to navigating RTP streams through a NAT. (Todo: describe in more detail)