daniel has submitted this change. ( https://gerrit.osmocom.org/c/osmo-gbproxy/+/29719 )
Change subject: Fix obsolete documentation of function
......................................................................
Fix obsolete documentation of function
Change-Id: I9588b237f1ee2979fe4ac7c802f1ff6300573e0a
---
M src/gb_proxy_peer.c
1 file changed, 1 insertion(+), 2 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, approved
laforge: Looks good to me, approved
diff --git a/src/gb_proxy_peer.c b/src/gb_proxy_peer.c
index 1e300ad..e4cb49f 100644
--- a/src/gb_proxy_peer.c
+++ b/src/gb_proxy_peer.c
@@ -137,8 +137,7 @@
}
/*! remove BVCs on NSE specified by NSEI.
- * \param[in] cfg proxy in which we operate
- * \param[in] nsei NS entity in which we should clean up
+ * \param[in] nse NS entity in which we should clean up
* \param[in] bvci if 0: remove all PTP BVCs; if != 0: BVCI of the single BVC to clean up */
int gbproxy_cleanup_bvcs(struct gbproxy_nse *nse, uint16_t bvci)
{
1 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
--
To view, visit https://gerrit.osmocom.org/c/osmo-gbproxy/+/29719
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-gbproxy
Gerrit-Branch: master
Gerrit-Change-Id: I9588b237f1ee2979fe4ac7c802f1ff6300573e0a
Gerrit-Change-Number: 29719
Gerrit-PatchSet: 2
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc/+/29818 )
Change subject: doc: Generalize mgwpool.adoc and move BSC-specific sections to runnning.adoc
......................................................................
doc: Generalize mgwpool.adoc and move BSC-specific sections to runnning.adoc
This is a preparation commit before moving mgwpool.adoc to a share place
(osmo-gsm-manuals.adoc) so that other apps like osmo-msc and osmo-hnbgw
can also include this section.
Related: SYS#5987
Change-Id: Id0d292506e8b2a888c8d7a682a38db80e9d0933a
---
M doc/manuals/chapters/mgwpool.adoc
M doc/manuals/chapters/running.adoc
2 files changed, 79 insertions(+), 82 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/18/29818/1
diff --git a/doc/manuals/chapters/mgwpool.adoc b/doc/manuals/chapters/mgwpool.adoc
index 8904bad..c429159 100644
--- a/doc/manuals/chapters/mgwpool.adoc
+++ b/doc/manuals/chapters/mgwpool.adoc
@@ -1,7 +1,7 @@
[[mgw_pooling]]
== MGW Pooling
-OsmoBSC is able to use a pool of media gateway (MGW) instances since mid 2021.
+{program-name} is able to use a pool of media gateway (MGW) instances.
The aim of MGW pooling is to evenly distribute the RTP voice stream load across
multiple MGW instances. This can help to scale out over multiple VMs or physical
machines. Until osmo-mgw includes multithreading support, it may also be used to
@@ -10,39 +10,23 @@
The load distribution is managed in such a way that when a new call is placed,
the pool will automatically assign the call to the MGW with the lowest load.
-MGW pooling is recommended for larger RAN installations. For small networks and
-lab installations the classic method with one MGW per BSC offers sufficient
+MGW pooling is recommended for larger RAN or CN installations. For small networks
+and lab installations the classic method with one MGW per BSC offers sufficient
performance.
-=== VTY configuration
+=== MGW pool VTY configuration
-In OsmoBSC the MGW is controlled via an MGCP-Client. The VTY commands to
-configure the MGCP-Client are part of the 'msc' node due to historical reasons.
-Unfortunately this concept does not allow to configure multiple MGCP-Client
-instances as required by MGW pooling. In order to support MGW pooling a new
-'mgw' node has been added under the 'network' node.
-
-=== Existing configuration files
-
-Existing OsmoBSC configuration files will continue to work, but as soon as an
-MGW pool is configured the 'mgw' settings under the 'msc' node will be ignored.
-
-Example configuration with only one MGCP-Client under the 'msc' node:
-----
-msc 0
- mgw remote-ip 127.0.0.1
- mgw remote-port 2428
-----
-
-=== MGW pool configuration
+In {program-name} the MGW is controlled via an MGCP-Client. The VTY commands to
+configure the MGCP-Client are part of the several 'mgw' nodes, one per
+MGCP-Client to set up.
To setup an MGW pool, the user must first install multiple OsmoMGW instances, so
that they won’t interfere with each other. This can be done using different
local host IP addresses or different ports. When OsmoMGW is installed from
packages, the systemd configuration may also require adjustment.
-The VTY settings under the 'mgw' node works the same way as the VTY settings for
-the MGW under the 'msc' node.
+By default, MGCP-Client will use whatever source IP address is resolved by the
+kernel routing subsystem, and will also ask the kernel to pick a free UDP port.
Example configuration with two MGCP-Client instances in a pool:
----
@@ -73,15 +57,16 @@
=== MGW pool management
-While it was not possible to change the MGCP-Client configuration under the
-“msc” node at runtime, the pool is fully runtime-manageable. The only limitation
+The MNGW pool is fully runtime-manageable. The only limitation
is that an MGCP-Client can not be restarted or removed as long as it is serving
calls (see also: <<mgw_pooling_blocking>>).
==== MGW pool status
The VTY implements a 'show mgw-pool' command that lists the currently configured
-MGW pool members, their status and call utilization.
+MGW pool members, their status and call utilization. The following snippet shows
+an output example run on OsmoBSC, but it should be also available on other
+applications supporting the MGW pooling VTY featues:
----
OsmoBSC> show mgw-pool
@@ -101,14 +86,16 @@
To add a new MGCP-Client to the pool, the 'mgw' node is used. Like with the
'bts' or the 'msc' node a reference number is used that usually starts at 0.
However it is still possible to assign any number from 0-255. The enumeration
-also may contain gaps.
+also may contain gaps. The following snippet shows an output example run on
+OsmoBSC, but it should be also available on other applications supporting the
+MGW pooling VTY featues:
----
OsmoBSC> enable
OsmoBSC# configure terminal
OsmoBSC(config)# network
OsmoBSC(config-net)# mgw 2
-OsmoBSC(config-mgw)# mgw
+OsmoBSC(config-mgw)# ?
local-ip local bind to connect to MGW from
local-port local port to connect to MGW from
remote-ip remote IP address to reach the MGW at
@@ -184,7 +171,7 @@
----
It is strongly advised to check the activity on the related MGW and to follow
-the log in order to see that the communication between OsmoBSC and the MGW is
+the log in order to see that the communication between {program-name} and the MGW is
working correctly.
[[mgw_pooling_blocking]]
@@ -250,52 +237,3 @@
OsmoBSC(config)# network
OsmoBSC(config-net)# no mgw 2
----
-
-==== Pinning a BTS to a specific MGW
-
-It is sometimes desirable to assign a specific MGW to a given BTS, so that all
-calls where the BTS is involved use the assigned MGW with a higher precedence if
-possible.
-
-This is specially important if the BTS is configured to serve calls using Osmux
-instead of RTP. Osmux features trunking optimizations, which allow transmission
-of audio payload from different concurrent calls inside the same underlaying UDP
-packet, hence reducing the total required throughput and saving costs on the
-required link.
-
-In order for Osmux trunking optimization to work, the source and destination IP
-address of uderlaying UDP packet must be of course the same for all the calls
-involved. That essentially boils down to having all the concurrent calls of the
-BTS be connected to the same MGW so that they can be trunked over the same UDP
-connection.
-
-The pinning to a specific MGW can be configured per BTS, and hence it is
-configured under the `bts` VTY node:
-
-----
-OsmoBSC> enable
-OsmoBSC# configure terminal
-OsmoBSC(config)# network
-OsmoBSC(config-net)# bts 1
-OsmoBSC(config-bts)# mgw pool-target 1 <1>
-OsmoBSC(config-bts)# exit
-OsmoBSC(config-net)# bts 2
-OsmoBSC(config-mgw)# mgw pool-target 7 strict <2>
-OsmoBSC(config-net)# bts 3
-OsmoBSC(config-mgw)# no mgw pool-target <3>
-----
-
-<1> Pin BTS1 to prefer MGW1 (node `mgw 1`). If MGW1 is not configured,
-administrateivly blocked or not connected at the time a new call is to be
-established, then another MGW from the pool is selected following the usual
-procedures. This allows applying pinning in the usual scenario while still
-keeping call service ongoing against another MGW if the preferred MGW is not
-available at a given time.
-
-<2> Pin BTS2 to prefer MGW3 (node `mgw 7`). If MGW7 is not configured,
-administrateivly blocked or not connected at the time a new call is to be
-established, then the MGW assignment will fail and ultimately the call will be
-terminated during establishment.
-
-<3> Apply no pinning at all (default). The MGW with the lowest load is the one
-being selected for each new call.
diff --git a/doc/manuals/chapters/running.adoc b/doc/manuals/chapters/running.adoc
index 930682d..e338dee 100644
--- a/doc/manuals/chapters/running.adoc
+++ b/doc/manuals/chapters/running.adoc
@@ -144,9 +144,68 @@
DLCX to the media gateway. This helps to clear lingering calls from the
media gateway when the OsmoBSC is restarted.
-NOTE: OsmoBSC is also able to handle a pool of media gateways for load
-distribution. See also <<mgw_pooling>>.
+OsmoBSC is also able to handle a pool of media gateways for load
+distribution since mid 2021. See also <<mgw_pooling>>.
+[NOTE]
+====
+Previous versions of OsmoBSC didn't have the 'mgw' VTY node and
+hence didn't support the MGW pooling feature. Therefore, historically the MGW
+related commands where placed under the `msc` VTY node. The MGW related commands
+under the `msc` VTY are still parsed and used but its use is deprecated and
+hence discouraged in favour of the new `mgw` node. Writing the config to a file
+from within OsmoBSC will automatically convert the config to use the new `mgw`
+node.
+====
+
+===== Pinning a BTS to a specific MGW
+
+It is sometimes desirable to assign a specific MGW to a given BTS, so that all
+calls where the BTS is involved use the assigned MGW with a higher precedence if
+possible.
+
+This is specially important if the BTS is configured to serve calls using Osmux
+instead of RTP. Osmux features trunking optimizations, which allow transmission
+of audio payload from different concurrent calls inside the same underlaying UDP
+packet, hence reducing the total required throughput and saving costs on the
+required link.
+
+In order for Osmux trunking optimization to work, the source and destination IP
+address of uderlaying UDP packet must be of course the same for all the calls
+involved. That essentially boils down to having all the concurrent calls of the
+BTS be connected to the same MGW so that they can be trunked over the same UDP
+connection.
+
+The pinning to a specific MGW can be configured per BTS, and hence it is
+configured under the `bts` VTY node:
+
+----
+OsmoBSC> enable
+OsmoBSC# configure terminal
+OsmoBSC(config)# network
+OsmoBSC(config-net)# bts 1
+OsmoBSC(config-bts)# mgw pool-target 1 <1>
+OsmoBSC(config-bts)# exit
+OsmoBSC(config-net)# bts 2
+OsmoBSC(config-mgw)# mgw pool-target 7 strict <2>
+OsmoBSC(config-net)# bts 3
+OsmoBSC(config-mgw)# no mgw pool-target <3>
+----
+
+<1> Pin BTS1 to prefer MGW1 (node `mgw 1`). If MGW1 is not configured,
+administrateivly blocked or not connected at the time a new call is to be
+established, then another MGW from the pool is selected following the usual
+procedures. This allows applying pinning in the usual scenario while still
+keeping call service ongoing against another MGW if the preferred MGW is not
+available at a given time.
+
+<2> Pin BTS2 to prefer MGW3 (node `mgw 7`). If MGW7 is not configured,
+administrateivly blocked or not connected at the time a new call is to be
+established, then the MGW assignment will fail and ultimately the call will be
+terminated during establishment.
+
+<3> Apply no pinning at all (default). The MGW with the lowest load is the one
+being selected for each new call.
==== Configure Lb to connect to an SMLC
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/29818
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: Id0d292506e8b2a888c8d7a682a38db80e9d0933a
Gerrit-Change-Number: 29818
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newchange
Attention is currently required from: lynxis lazus, msuraev.
daniel has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714 )
Change subject: gbproxy_vty: Add commands to list Cell/BVC of an NSE
......................................................................
Patch Set 3: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-gbproxy
Gerrit-Branch: master
Gerrit-Change-Id: I10c6d3f59681ec6dc98f1a3b023af446cc2a1c12
Gerrit-Change-Number: 29714
Gerrit-PatchSet: 3
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: msuraev <msuraev(a)sysmocom.de>
Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Attention: msuraev <msuraev(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 20 Oct 2022 14:10:21 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: lynxis lazus, msuraev.
daniel has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714 )
Change subject: gbproxy_vty: Add commands to list Cell/BVC of an NSE
......................................................................
Patch Set 3:
(3 comments)
Patchset:
PS3:
Re-adding +2 from before
File src/gb_proxy_vty.c:
https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714/comment/d367e82b_d0b85d46
PS2, Line 543: int i;
> I don't completely disagree, but in the macro bkt is initialized to 0 and checked against ARRAY_SIZE […]
Done
https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714/comment/a3aaa1df_e993d9d5
PS2, Line 587: int i;
> Same as above.
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-gbproxy
Gerrit-Branch: master
Gerrit-Change-Id: I10c6d3f59681ec6dc98f1a3b023af446cc2a1c12
Gerrit-Change-Number: 29714
Gerrit-PatchSet: 3
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: msuraev <msuraev(a)sysmocom.de>
Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Attention: msuraev <msuraev(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 20 Oct 2022 14:10:08 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: daniel <dwillmann(a)sysmocom.de>
Comment-In-Reply-To: msuraev <msuraev(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: lynxis lazus, msuraev.
Hello Jenkins Builder, laforge, pespin, lynxis lazus,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714
to look at the new patch set (#3).
Change subject: gbproxy_vty: Add commands to list Cell/BVC of an NSE
......................................................................
gbproxy_vty: Add commands to list Cell/BVC of an NSE
Change-Id: I10c6d3f59681ec6dc98f1a3b023af446cc2a1c12
---
M src/gb_proxy_vty.c
1 file changed, 50 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-gbproxy refs/changes/14/29714/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-gbproxy
Gerrit-Branch: master
Gerrit-Change-Id: I10c6d3f59681ec6dc98f1a3b023af446cc2a1c12
Gerrit-Change-Number: 29714
Gerrit-PatchSet: 3
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: msuraev <msuraev(a)sysmocom.de>
Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Attention: msuraev <msuraev(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: lynxis lazus, msuraev.
daniel has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714 )
Change subject: gbproxy_vty: Add commands to list Cell/BVC of an NSE
......................................................................
Patch Set 3:
(1 comment)
File src/gb_proxy_vty.c:
https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714/comment/6e808811_1c798ef7
PS2, Line 547: vty_out_rate_ctr_group(vty, "", g_cfg->ctrg);
> This isn't filtered for a specific NSEI, right?
Right, it's a global group. I'll just remove it here, doesn't make much sense
--
To view, visit https://gerrit.osmocom.org/c/osmo-gbproxy/+/29714
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-gbproxy
Gerrit-Branch: master
Gerrit-Change-Id: I10c6d3f59681ec6dc98f1a3b023af446cc2a1c12
Gerrit-Change-Number: 29714
Gerrit-PatchSet: 3
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: msuraev <msuraev(a)sysmocom.de>
Gerrit-Attention: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-Attention: msuraev <msuraev(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 20 Oct 2022 13:50:46 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-MessageType: comment
Attention is currently required from: fixeria.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/29817
to look at the new patch set (#3).
Change subject: library: move IA/IAR Rest Octets to GSM_RestOctets.ttcn
......................................................................
library: move IA/IAR Rest Octets to GSM_RestOctets.ttcn
Change-Id: Icd96fc461e37d1346950a4fa158e0421bd7330c5
---
M gbproxy/gen_links.sh
M library/GSM_RR_Types.ttcn
M library/GSM_RestOctets.ttcn
M library/L1CTL_PortType.ttcn
M library/LAPDm_RAW_PT.ttcn
M pcu/GPRS_Components.ttcn
M pcu/PCU_Tests.ttcn
M pcu/gen_links.sh
M selftest/gen_links.sh
M sgsn/gen_links.sh
10 files changed, 273 insertions(+), 250 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/17/29817/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/29817
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Icd96fc461e37d1346950a4fa158e0421bd7330c5
Gerrit-Change-Number: 29817
Gerrit-PatchSet: 3
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset