Data throughput issues. Increasing throughput.

Dave Ellis contact at
Wed Apr 4 14:59:07 UTC 2018

Hi Pau,

Thanks for the help so far.  I have tried using the kernel-gtp mode and
only managed to cause crashes in the omso-ggsn program.  I have updated to
the latest git repository for the osmo-ggsn.

I followed the instructions here to load the kernel
gtp module and the 'lsmod | grep gtp' shows the same as the results in the

After that the instructions mention using openggsn.  I'm not sure if there
is further configuration required for the kernel gtp module - do I need to
create a tunnel? Or should this be done by osmo-ggsn as it did for the
gtpu-mode tun setting?

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/".
<0002> ggsn.c:203 APN(S1U): Starting
<0002> ggsn.c:281 APN(S1U): Opening Kernel GTP device gtp0
<0002> gtp-kernel.c:75 Initialized GTP kernel mode (genl ID is 30)

Program received signal SIGSEGV, Segmentation fault.
gtp_kernel_init (gsn=0x0, devname=0x6a6fe0 "gtp0",
    prefix=prefix at entry=0x6a76e0, ipup=0x0) at gtp-kernel.c:94
94 if (gtp_dev_create(-1, devname, gsn->fd0, gsn->fd1u) < 0) {

I have tried, without success, to find a sample config file with the
kernel-gtp mode in for osmo-ggsn. Is there a sample config file for
osmo-ggsn with the kernel-gtp mode selected?

This is my current config file - I have gone through various attempts with
different tun_device names.

! OpenGGSN (0.94.1-adac) configuration saved from vty
! kernel-gtp
log stderr
  logging filter all 1
  logging color 1
  logging print category 0
  logging timestamp 0
  logging level ip info
  logging level tun info
  logging level ggsn info
  logging level sgsn notice
  logging level icmp6 notice
  logging level lglobal notice
  logging level llapd notice
  logging level linp notice
  logging level lmux notice
  logging level lmi notice
  logging level lmib notice
  logging level lsms notice
  logging level lctrl notice
  logging level lgtp info
  logging level lstats notice
  logging level lgsup notice
  logging level loap notice
  logging level lss7 notice
  logging level lsccp notice
  logging level lsua notice
  logging level lm3ua notice
  logging level lmgcp notice
stats interval 5
line vty
 no login
ggsn tun1
 gtp state-dir /tmp
 gtp bind-ip
 apn S1U
  gtpu-mode kernel-gtp
  tun-device gtp0
  type-support v4
  ip prefix dynamic
  ip dns 0
  ip dns 1
  ip ifconfig
  no shutdown
 default-apn S1U
 no shutdown ggsn



On Thu, Mar 29, 2018 at 3:14 PM, Pau Espin Pedrol <pespin at>

> Hi Dave,
> I never personally used it, but as far as I know you should be able to get
> more performance by using "gtpu-mode kernel-gtp" instead of "gtpu-mode tun"
> in your config, to avoid doing all packet processing in userspace. Please
> someone else confirm this. I think you need a capable kernel and libgtpnl
> to be able to use it.
> Also, it would be nice if you could provide a linux "perf" output on
> osmo-ggsn while running your test setup so we can spot possible
> optimizations to improve osmo-ggsn performance.
> --
> - Pau Espin Pedrol <pespin at>
> =======================================================================
> * sysmocom - systems for mobile communications GmbH
> * Alt-Moabit 93
> * 10559 Berlin, Germany
> * Sitz / Registered office: Berlin, HRB 134158 B
> * Geschaeftsfuehrer / Managing Director: Harald Welte
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the osmocom-net-gprs mailing list