From 5b75f85871c97ecfcc640dfd39ff90aaf9482aee Mon Sep 17 00:00:00 2001 From: Daniel Willmann Date: Thu, 22 Apr 2021 16:01:53 +0200 Subject: [PATCH] examples/manuals: Improve/update ns-related documentation * example config files with current libosmogb options * Include NS2-related configuration chapters in manual Closes: SYS#5115 Change-Id: I57cf5dc4ee686352252086917f5f63d5a69dddd7 --- .../osmo-gbproxy/osmo-gbproxy-pool.cfg | 19 ++++--- doc/examples/osmo-gbproxy/osmo-gbproxy.cfg | 12 +++-- .../chapters/gbproxy-configuration.adoc | 50 +++++++++++-------- doc/manuals/chapters/gbproxy-sgsnpool.adoc | 26 ++++++---- doc/manuals/osmogbproxy-usermanual.adoc | 6 ++- tests/osmo-gbproxy-pool_test-nodes.vty | 2 - 6 files changed, 68 insertions(+), 47 deletions(-) diff --git a/doc/examples/osmo-gbproxy/osmo-gbproxy-pool.cfg b/doc/examples/osmo-gbproxy/osmo-gbproxy-pool.cfg index bbc8a1b7..7457ee88 100644 --- a/doc/examples/osmo-gbproxy/osmo-gbproxy-pool.cfg +++ b/doc/examples/osmo-gbproxy/osmo-gbproxy-pool.cfg @@ -7,22 +7,25 @@ line vty ! gbproxy nri bitlen 4 - nri null add 0 4 + nri null add 15 sgsn nsei 101 name main nri add 1 - nri add 11 sgsn nsei 102 nri add 2 - nri add 12 ns - bind udp local - listen 127.0.0.100 23000 - accept-ipaccess + bind udp sgsn-side + listen 127.0.0.1 23000 nse 101 - nsvc ipa local 192.168.100.239 7777 nsvci 101 + ip-sns-bind sgsn-side + ip-sns-remote 127.0.1.1 23000 nse 102 - nsvc ipa local 192.168.100.239 7778 nsvci 102 + ip-sns-bind sgsn-side + ip-sns-remote 127.0.1.2 23000 + bind udp bss-side + listen 127.0.0.100 23000 + accept-dynamic-ip-sns + ip-sns-default bind bss-side timer tns-block 3 timer tns-block-retries 3 timer tns-reset 3 diff --git a/doc/examples/osmo-gbproxy/osmo-gbproxy.cfg b/doc/examples/osmo-gbproxy/osmo-gbproxy.cfg index 777d0b0f..3ab0d7ad 100644 --- a/doc/examples/osmo-gbproxy/osmo-gbproxy.cfg +++ b/doc/examples/osmo-gbproxy/osmo-gbproxy.cfg @@ -9,11 +9,15 @@ gbproxy sgsn nsei 101 name main ns - bind udp local - listen 127.0.0.100 23000 - accept-ipaccess + bind udp sgsn-side + listen 127.0.0.1 23000 nse 101 - nsvc ipa local 192.168.100.239 7777 nsvci 101 + ip-sns-bind sgsn-side + ip-sns-remote 127.0.1.1 23000 + bind udp bss-side + listen 127.0.0.100 23000 + accept-dynamic-ip-sns + ip-sns-default bind bss-side timer tns-block 3 timer tns-block-retries 3 timer tns-reset 3 diff --git a/doc/manuals/chapters/gbproxy-configuration.adoc b/doc/manuals/chapters/gbproxy-configuration.adoc index 87da471f..79a508b4 100644 --- a/doc/manuals/chapters/gbproxy-configuration.adoc +++ b/doc/manuals/chapters/gbproxy-configuration.adoc @@ -5,29 +5,10 @@ configuration of the NS links. Most config options specific to OsmoGbProxy are related to SGSN pooling and telling the proxy which NSE(s) it should use to talk to the SGSN(s). -=== Configure the Network Service (NS) - -A detailed description of the NS configuration can be found in <>. The following config snippets assume the SGSN(s) (NSEI 101 and 102) are using IP-SNS and listen on 10.0.1.1:23000 and 10.0.1.2:23000 respectively. -This would be the NS config for the SGSN(s): - -.Example: NS configuration example (SGSN) ----- -ns - bind udp local - listen 10.0.0.1 23000 <1> - nse 101 <2> - ip-sns 10.0.1.1 23000 <3> - nse 102 - ip-sns 10.0.1.2 23000 ----- -<1> Define the local IP/port from which to connect -<2> Define an NSE with NSEI -<3> Use IP-SNS to connect to the SGSN - -=== Configure an SGSN +=== Configure SGSN(s) Configuration of a single (non-pooling) SGSN is rather simple. @@ -35,7 +16,36 @@ Configuration of a single (non-pooling) SGSN is rather simple. ---- sgsn 101 <1> name Main SGSN <2> +sgsn 102 +ns + bind udp sgsn-side + listen 10.0.0.1 23000 <3> + nse 101 <4> + ip-sns-bind sgsn-side <5> + ip-sns-remote 10.0.1.1 23000 <6> + nse 102 + ip-sns-bind sgsn-side + ip-sns-remote 10.0.1.2 23000 ---- <1> Each SGSN is identified by its NSEI (same as in the NS configuration) <2> An SGSN can optionally have a name. If none is set a default name will be used. +<3> Define IP/port from which to connect +<4> Define an NSE with NSEI +<5> Use this bind to connect from +<6> Use IP-SNS to connect to the SGSN +=== Configure a socket for BSS + +The following configuration shows how to accept arbitrary BSS-NSE + +.Example: NS configuration example (NS) +---- +ns + bind udp bss-side <1> + listen 10.0.0.100 23000 + accept-dynamic-ip-sns <2> + ip-sns-default bind bss-side <3> +---- +<1> Define bind with IP/port for the BSS +<2> Allow BSS with dynamic NSE to connect to this bind +<3> Use this bind as default for dynamic NSE \ No newline at end of file diff --git a/doc/manuals/chapters/gbproxy-sgsnpool.adoc b/doc/manuals/chapters/gbproxy-sgsnpool.adoc index 61806af8..cc305153 100644 --- a/doc/manuals/chapters/gbproxy-sgsnpool.adoc +++ b/doc/manuals/chapters/gbproxy-sgsnpool.adoc @@ -48,26 +48,32 @@ attach, possibly rendering the core network unusable. ==== Connecting Multiple SGSNs ---- -# Configure the Network Service +! Configure the Network Service ns bind udp sgsn listen 10.0.0.1 23000 nse 1 - ip-sns 10.0.1.1 23000 - ip-sns 10.0.1.1 23001 + ip-sns-bind sgsn + ip-sns-remote 10.0.1.1 23000 + ip-sns-remote 10.0.1.1 23001 nse 2 - ip-sns 10.0.1.2 23000 + ip-sns-bind sgsn + ip-sns-remote 10.0.1.2 23000 nse 3 - ip-sns 10.0.1.3 23000 -# configure NRI value ranges + ip-sns-bind sgsn + ip-sns-remote 10.0.1.3 23000 +! configure NRI value ranges gbproxy nri bitlen 10 nri null add 0 -sgsn 1 +sgsn nsei 1 + name SGSN01 nri add 1 341 -sgsn 2 +sgsn nsei 2 + name SGSN02 nri add 342 682 -sgsn 3 +sgsn nsei 3 + name SGSN03 nri add 683 1023 ---- @@ -184,8 +190,6 @@ already attached to it: those that yield an NRI matching this SGSN, and those that are being paged by this SGSN. But OsmoGbProxy will no longer direct new subscribers to this SGSN. -TODO: Is paging response relevant for SGSN? - To re-enable an SGSN for attaching new subscribers: ---- diff --git a/doc/manuals/osmogbproxy-usermanual.adoc b/doc/manuals/osmogbproxy-usermanual.adoc index 454cf69a..193b6a42 100644 --- a/doc/manuals/osmogbproxy-usermanual.adoc +++ b/doc/manuals/osmogbproxy-usermanual.adoc @@ -21,12 +21,14 @@ include::./common/chapters/logging.adoc[] include::{srcdir}/chapters/gbproxy-configuration.adoc[] +include::./common/chapters/gb-ns2-configuration.adoc[] + +include::./common/chapters/gb-ns2-configuration-timer.adoc[] + include::{srcdir}/chapters/gbproxy-sgsnpool.adoc[] include::./common/chapters/gb-ns2.adoc[] -include::./common/chapters/gb.adoc[] - include::./common/chapters/control_if.adoc[] include::{srcdir}/chapters/counters_generated.adoc[] diff --git a/tests/osmo-gbproxy-pool_test-nodes.vty b/tests/osmo-gbproxy-pool_test-nodes.vty index a741e483..84c267f6 100644 --- a/tests/osmo-gbproxy-pool_test-nodes.vty +++ b/tests/osmo-gbproxy-pool_test-nodes.vty @@ -2,10 +2,8 @@ OsmoGbProxy> enable OsmoGbProxy# show nri all sgsn nsei 101 nri add 1 - nri add 11 sgsn nsei 102 nri add 2 - nri add 12 OsmoGbProxy# configure terminal OsmoGbProxy(config)# list ...