Skip to content

Changes

Started 15 min ago
Queued 8.3 sec
Took 1 min 35 sec on built-in
doc/manuals: update MmeItem related info

The osmo-s1gw-cli documentation was not properly updated in 63ce2c9:

* default local/bind address for an MME is "any", not "::"
* allowed TACs (--tac) was missing in help and examples

Change-Id: I0b8115fe6342a80bf1eb99bd6ad210492a013947
Fixes: 63ce2c9 ("[REST] Add MmeList, MmeAdd, MmeInfo, MmeDelete")
Related: OS#6671, SYS#7066, SYS#7052
Vadim Yanitskiy at
contrib: add jenkins_manuals.sh

Change-Id: I54f0774575534519a2c40e0588f136c8a5e706f8
Related: osmo-ci.git Id62d806a648c8f3480cb4f162adf65f77c552848
Related: OS#6671
Vadim Yanitskiy at
rebar.lock: bump exometer_report_statsd version

The new version is using ETS instead of dict for counter lookups.
This significantly reduces performance impact when multiple eNBs
are registered, since the ETS provides O(1) average-case hash
lookups and in-place mutation.

Change-Id: I931321a831215012aa8186d851d9a8d38908a4bf
Vadim Yanitskiy at
config/sys.config: increase StatsD reporter interval to 10s

When running ttcn3-s1gw-test locally, I noticed OsmoS1GW consuming
30-40% of a CPU core while idle (not serving any eNBs).  Profiling
with etop pointed to `exometer_report_statsd` as the culprit: with
~1720 metrics registered, it was sending ~1720 datagrams per second.

A 1-second reporting interval causes noticeable CPU overhead as the
number of active metrics grows.  With per-eNB and per-MME counters,
the metric set scales with the number of connected eNBs/MMEs.

Increase the default StatsD reporting interval from 1s to 10s to
reduce that overhead.  Update the documentation accordingly.

Change-Id: Icd5e1a43d1df4a4909fe742aec67cc51a01bb857
Vadim Yanitskiy at
pfcp_peer: define ?PFCP_ASSOC_SETUP_TIMEOUT

Change-Id: I0b7299d9f3eaa8c0a3c7e4a4d6331d1ec5a1c779
Vadim Yanitskiy at
enb_proxy: signal mme_info() to the enb_registry

When an MME is selected from the pool, pass the mme_registry:mme_info()
to the enb_registry via notify_mme_connecting/2 (replacing /1).  This
makes all MME configuration details (name, address, port, TAC list)
available to consumers such as the REST server, without having to
look them up separately from the mme_registry.

Change-Id: I22e705b8196c9dcf436ed3c4d91c5c5a912e7282
Related: SYS#7052
Vadim Yanitskiy at
enb_proxy: obtain sctp_client sockopts from the env directly

Instead of passing the MmeConnCfg (sctp_client:cfg()) all the way
from osmo_s1gw_sup through sctp_server (as priv) into enb_proxy
(as state), read the sctp_client configuration in-place via
osmo_s1gw:get_env/2 when it is actually needed (connecting/enter).

This works because osmo_s1gw_sup already normalizes and writes back
the complete sctp_client config to the application env (set_env/2)
before starting the supervision tree.

As a result, mme_conn_cfg is removed from enb_proxy's state record,
start_link/2 no longer uses its Priv argument, and server_cfg/1 is
simplified to server_cfg/0.

Change-Id: Ic77d3eb3351c8981c87fa4b6febcdeb814b9187b
Vadim Yanitskiy at
[REST] Add GET /config endpoint (ConfigRead)

This endpoint returns the effective runtime configuration that
OsmoS1GW is currently using, with all defaults applied.  This
reflects the values read via `osmo_s1gw:get_env/2` at startup.

Change-Id: Ic6c9562a541e4a0728257538887537aac6b99b97
Related: SYS#7066
Vadim Yanitskiy at
[REST] Implement eNB/MME selection by addr-port

Add support for selecting an MME or eNB by remote address and port
in the REST API and CLI.  The selector format is `addr:IP:PORT` for
MMEs and `enb-conn:IP:PORT` for eNBs, where IP can be an IPv4 or
IPv6 address.  The colon is used as the address/port separator.

Change-Id: If02c8de1e1b7214bba868eee35233a79d0704dc5
Related: SYS#7066
Vadim Yanitskiy at
[REST] Implement PfcpAssoc{Setup,Release}

Change-Id: I2e24544563e4c4d23bb3d8a4a7b5434191b482d8
Related: SYS#7066
Vadim Yanitskiy at
[REST] EnbItem: expose name of the selected MME

For each eNB connection, include the name of the MME that was selected
from the pool.  Update the OpenAPI spec, CLI (enb_list/enb_info tables),
and user manual accordingly.

Change-Id: I4839275efa5d3545e84d684ad1b8b989214ef76a
Related: SYS#7066, SYS#7052
Vadim Yanitskiy at