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
This commit is contained in:
Daniel Willmann 2021-04-22 16:01:53 +02:00
parent fff868526d
commit 5b75f85871
6 changed files with 68 additions and 47 deletions

View File

@ -7,22 +7,25 @@ line vty
! !
gbproxy gbproxy
nri bitlen 4 nri bitlen 4
nri null add 0 4 nri null add 15
sgsn nsei 101 sgsn nsei 101
name main name main
nri add 1 nri add 1
nri add 11
sgsn nsei 102 sgsn nsei 102
nri add 2 nri add 2
nri add 12
ns ns
bind udp local bind udp sgsn-side
listen 127.0.0.100 23000 listen 127.0.0.1 23000
accept-ipaccess
nse 101 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 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 3
timer tns-block-retries 3 timer tns-block-retries 3
timer tns-reset 3 timer tns-reset 3

View File

@ -9,11 +9,15 @@ gbproxy
sgsn nsei 101 sgsn nsei 101
name main name main
ns ns
bind udp local bind udp sgsn-side
listen 127.0.0.100 23000 listen 127.0.0.1 23000
accept-ipaccess
nse 101 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 3
timer tns-block-retries 3 timer tns-block-retries 3
timer tns-reset 3 timer tns-reset 3

View File

@ -5,29 +5,10 @@ configuration of the NS links.
Most config options specific to OsmoGbProxy are related to SGSN pooling and 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). 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 <<libosmogb>>.
The following config snippets assume the SGSN(s) (NSEI 101 and 102) are using 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. 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): === Configure 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
Configuration of a single (non-pooling) SGSN is rather simple. 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> sgsn 101 <1>
name Main SGSN <2> 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) <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. <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

View File

@ -48,26 +48,32 @@ attach, possibly rendering the core network unusable.
==== Connecting Multiple SGSNs ==== Connecting Multiple SGSNs
---- ----
# Configure the Network Service ! Configure the Network Service
ns ns
bind udp sgsn bind udp sgsn
listen 10.0.0.1 23000 listen 10.0.0.1 23000
nse 1 nse 1
ip-sns 10.0.1.1 23000 ip-sns-bind sgsn
ip-sns 10.0.1.1 23001 ip-sns-remote 10.0.1.1 23000
ip-sns-remote 10.0.1.1 23001
nse 2 nse 2
ip-sns 10.0.1.2 23000 ip-sns-bind sgsn
ip-sns-remote 10.0.1.2 23000
nse 3 nse 3
ip-sns 10.0.1.3 23000 ip-sns-bind sgsn
# configure NRI value ranges ip-sns-remote 10.0.1.3 23000
! configure NRI value ranges
gbproxy gbproxy
nri bitlen 10 nri bitlen 10
nri null add 0 nri null add 0
sgsn 1 sgsn nsei 1
name SGSN01
nri add 1 341 nri add 1 341
sgsn 2 sgsn nsei 2
name SGSN02
nri add 342 682 nri add 342 682
sgsn 3 sgsn nsei 3
name SGSN03
nri add 683 1023 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 that are being paged by this SGSN. But OsmoGbProxy will no longer direct new
subscribers to this SGSN. subscribers to this SGSN.
TODO: Is paging response relevant for SGSN?
To re-enable an SGSN for attaching new subscribers: To re-enable an SGSN for attaching new subscribers:
---- ----

View File

@ -21,12 +21,14 @@ include::./common/chapters/logging.adoc[]
include::{srcdir}/chapters/gbproxy-configuration.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::{srcdir}/chapters/gbproxy-sgsnpool.adoc[]
include::./common/chapters/gb-ns2.adoc[] include::./common/chapters/gb-ns2.adoc[]
include::./common/chapters/gb.adoc[]
include::./common/chapters/control_if.adoc[] include::./common/chapters/control_if.adoc[]
include::{srcdir}/chapters/counters_generated.adoc[] include::{srcdir}/chapters/counters_generated.adoc[]

View File

@ -2,10 +2,8 @@ OsmoGbProxy> enable
OsmoGbProxy# show nri all OsmoGbProxy# show nri all
sgsn nsei 101 sgsn nsei 101
nri add 1 nri add 1
nri add 11
sgsn nsei 102 sgsn nsei 102
nri add 2 nri add 2
nri add 12
OsmoGbProxy# configure terminal OsmoGbProxy# configure terminal
OsmoGbProxy(config)# list OsmoGbProxy(config)# list
... ...