Osmocom Media Gateway (RTP proxy and RTP/E1 gateway) https://osmocom.org/projects/osmo-mgw
Go to file
Neels Hofmeyr a729db62a9 generate shorter 'I:' conn IDs
Reduce the number of hex chars generated as Connection Identifier from 32 to 8.

According to RFC3435 2.1.3.2 "Names of Connections", the maximum length is
indeed 32 characters, but there isn't really a benefit of using IDs of that
size. That, and:

A specific SCCPlite MSC is seen to be able to store conn IDs of up to 8 hex
characters of length. If given more than that, it will later send 'ffffffff' as
ID, e.g. in the DLCX message, causing mismatches and rejected DLCX.

Conn IDs need to be unique only within the context of one endpoint, so
producing 32 characters of ID is far beyond overkill, especially if we
currently expect exactly two IDs per endpoint.

Notice that the maximum length of conn ID that can be handled by the message
parsing and composition doesn't change, only the length that an osmo-mgw will
generate upon CRCX does.

Related: OS#3507
Change-Id: Ia290c22a91fca0e5aa44515fca6df00064aff100
2018-09-03 23:12:23 +02:00
contrib jenkins.sh: add --enable-werror to configure flags 2018-03-13 15:39:32 +01:00
debian debian/rules: Don't overwrite .tarball-version 2018-09-03 14:57:14 +02:00
doc doc: update sample config file 2017-11-12 14:22:23 +00:00
include mgcp_common: rename to MGCP_CONN_ID_MAXLEN 2018-09-03 22:26:14 +02:00
m4 move openbsc/* to repos root 2017-08-27 17:44:55 +02:00
src generate shorter 'I:' conn IDs 2018-09-03 23:12:23 +02:00
tests fix mgcp_verify_ci(): off-by-one in max len check 2018-09-03 23:08:08 +02:00
.gitignore gitignore: Filter *.pc 2018-07-27 19:23:34 +02:00
.gitreview .gitreview: update repo url to new location 2017-08-08 17:15:31 +02:00
.mailmap add .mailmap file for mapping git author name/mail in shortlog 2016-08-08 17:40:28 +00:00
AUTHORS move openbsc/* to repos root 2017-08-27 17:44:55 +02:00
COPYING move openbsc/* to repos root 2017-08-27 17:44:55 +02:00
Makefile.am Turn libosmo-mgcp into local, non-installed library 2018-02-05 22:41:32 +00:00
README rewrite README 2017-09-04 02:36:56 +02:00
README.vty-tests move openbsc/* to repos root 2017-08-27 17:44:55 +02:00
TODO-RELEASE Bump version: 1.2.0.109-8d064-dirty → 1.3.0 2018-05-03 17:40:35 +02:00
configure.ac configure: Find correct libgsm's gsm.h header 2018-07-28 02:48:04 +02:00
git-version-gen git-version-gen: Don't check for .git directory 2018-07-24 18:06:54 +02:00
libosmo-legacy-mgcp.pc.in split off osmo-mgw: remove files, apply build, rename 2017-08-30 15:04:52 +02:00
libosmo-mgcp-client.pc.in separate libosmo-mgcp-client from mgcp server code 2017-09-05 20:56:27 +00:00
osmoappdesc.py Initially implement the new osmo-mgw and libosmo-mgcp 2017-10-05 01:40:43 +00:00

README

About OsmoMGW
=============

OsmoMGW 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.

OsmoMGW was one of the parts split off from the old openbsc.git. It originated
as a solution to merely navigate RTP streams through a NAT, but has since
matured to a Media Gateway implementation that is capable of streaming RTP for
2G (AoIP) and 3G (IuCS) GSM networks as well as (still not implemented at time
of writing) transcoding between TRAU, various RTP payloads and IuUP.

The OsmoMGW program exposes an MGCP interface towards clients like OsmoMSC and
OsmoBSC, and receives and sends RTP streams as configured via MGCP.

The libosmo-mgcp-client library exposes utilities used by e.g. OsmoMSC (found
in osmo-msc.git) to instruct OsmoMGW via its MGCP service.

The libosmo-mgcp library exposes MGCP server utilities used by e.g. OsmoBSC-NAT
(found in osmo-bsc.git) to navigate RTP streams through a NAT.
(At time of writing, this is still called libosmo-legacy-mgcp.)

Find OsmoMGW issue tracker and wiki online at
https://osmocom.org/projects/osmo-mgw
https://osmocom.org/projects/osmo-mgw/wiki