Change in osmo-bts[master]: manual: Include QoS chapter and add osmo-bts specific example

laforge gerrit-no-reply at
Wed Apr 28 09:29:15 UTC 2021

laforge has uploaded this change for review. ( )

Change subject: manual: Include QoS chapter and add osmo-bts specific example

manual: Include QoS chapter and add osmo-bts specific example

Change-Id: I8fcd524c550b43a851b3094effc215e5203d28be
Requires: osmo-gsm-manuals.git Id344c29eda2a9b3e36376302b425e9db1f6c0f28
A doc/manuals/chapters/qos-example.adoc
M doc/manuals/osmobts-usermanual.adoc
2 files changed, 54 insertions(+), 0 deletions(-)

  git pull ssh:// refs/changes/27/23927/1

diff --git a/doc/manuals/chapters/qos-example.adoc b/doc/manuals/chapters/qos-example.adoc
new file mode 100644
index 0000000..b8c32df
--- /dev/null
+++ b/doc/manuals/chapters/qos-example.adoc
@@ -0,0 +1,52 @@
+==== Full example of QoS for osmo-bts uplink QoS
+In the below example we will show the full set of configuration required
+for both DSCP and PCP differentiation of uplink Abis traffic by osmo-bts.
+What we want to achieve in this example is the following configuration:
+.DSCP and PCP assignments for osmo-bts uplink traffic in this example
+|Traffic      |DSCP|PCP
+|A-bis RSL    |  56|  7
+|A-bis RTP    |  46|  6
+|A-bis OML    |  34|  5
+. configure the osmocom program to set the DSCP value
+ * osmo-bts.cfg: `rtp ip dscp 46` in `bts` vty node
+ * osmo-bts.cfg: `rsl ip dscp 56` in `bts` vty node
+ * osmo-bts.cfg: `oml ip dscp 34` in `bts` vty node
+. use a packet filter rule to set the priority based on DSCP
+. configure an egrees QoS map to map from priority to PCP
+.Example Step 2: iptables rules to map from DSCP values to priority values
+$ sudo iptables -t mangle -I OUTPUT -m dscp --dscp 56 -j CLASSIFY --set-class 7
+$ sudo iptables -t mangle -I OUTPUT -m dscp --dscp 46 -j CLASSIFY --set-class 6
+$ sudo iptables -t mangle -I OUTPUT -m dscp --dscp 34 -j CLASSIFY --set-class 5
+NOTE:: The above-mentioned `iptables` commands only insert the rules
+into the Linux kernel.  They are volatile and will be gone on next boot.
+It is up to you to ensure they are re-installed at every boot, e.g. by
+some kind of init script, systemd unit file, or packet filter rule
+management software like firewalld, ufw, ...
+.Example Step 3: egress QoS map to map from DSCP values to priority values
+$ sudo ip link set dev eth0.9<1> type vlan egress-qos-map 0:0 1:1 5:5 6:6 7:7 <2>
+<1> make sure to specify your specific VLAN interface name here instead of `eth0.9`.
+<2> create a egress QoS map that maps the priority value 1:1 to the PCP. We also include the
+    mapping 1:1 from the osmo-pcu example (see <<userman-osmopcu>>) here.
+NOTE:: The settings of the `ip` command are volatile and only active until
+the next reboot (or the network device or VLAN is removed).  Please refer to
+the documentation of your specific Linux distribution in order to find out how
+to make such settings persistent by means of an `ifup` hook whenever the interface
+comes up.  For CentOS/RHEL 8 this can e.g. be achieved by means of an `/sbin/ifup-local
+script` (when using `network-scripts` and not NetworkManager).  For Debian or Ubuntu,
+this typically involves adding `up` lines to `/etc/network/interfaces` or a `/etc/network/if-up.d`
diff --git a/doc/manuals/osmobts-usermanual.adoc b/doc/manuals/osmobts-usermanual.adoc
index b1b0747..9ef4960 100644
--- a/doc/manuals/osmobts-usermanual.adoc
+++ b/doc/manuals/osmobts-usermanual.adoc
@@ -30,6 +30,8 @@

To view, visit
To unsubscribe, or for help writing mail filters, visit

Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I8fcd524c550b43a851b3094effc215e5203d28be
Gerrit-Change-Number: 23927
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge at>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the gerrit-log mailing list