Thread (26 messages) 26 messages, 6 authors, 2017-03-23

Re: [PATCH 1/1] gtp: support SGSN-side tunnels

flat view

From: Pablo Neira Ayuso <pablo@netfilter.org>
Date: 2017-02-06 18:15:21

On Mon, Feb 06, 2017 at 03:16:22PM +0100, Harald Welte wrote:
Hi Jonas,

On Mon, Feb 06, 2017 at 02:33:07PM +0100, Jonas Bonn wrote:
quoted
Fair enough.  The use-case I am looking at involves PGW load-testing where
the simulated load is generated locally on the SGSN so it _is_ seeing IP
packets and the SNDCP is left out altogether.  
Ok, it would have been useful to document that test-only feature in the
changelog and/or code.  Like "support simulated RAN-side tunnels" or
"support SGSN/S-GW simulation".
Right. Please, include this in your follow up v2 patch description.
BTW, please also indicate [PATCH net-next] for new features.
quoted
Perhaps this is too pathological to warrant messing with the upstream
driver... I don't know: the symmetry does not cost much even if it's
of limited use.
There are plenty of features in the mainline kernel related to testing,
see pktgen for example.  So I think if it doesn't impose complexity,
performance issues or stretches the existing architecture, I think
there's no reason to keep it out.

Looking at the code, I think the one conditional on the flags is not
going to kill significant performance of the "normal" use case.  But
that's of course just guessing, without any benchmark to back that up.

Semantically, I'm not sure if the FLAGS and the re-use of the
SGSN_ADDRESS TLV is the best choice.  If suddenly the meaning of the TLV
is "Peer GSN Address" then it should be called that way.  We could have
a #define SGSN_ADDRESS to GSN_PEER_ADDRESS to make old code compile.
I'll let Pablo respond to this as he came up with the netlink interface,
as far as I can remember :)
I agree with Harald that a new netlink TLV, ie. IFLA_GTP_MODE, to
indicate if this is expecting to operate on the GGSN or SGSN side
would be better. See include/uapi/linux/if_link.h.

Flags allows us to combine different features, in this case we won't
combine anything since these two modes are mutually exclusive.
Also, like with any changes to the kernel and netlink interface code, I
think we should always mandate similar changes to be made to libgtpnl so
the feature can actually be used/tested with the standard
tools/utilities available to anyone.
Yes, at least some scripts and short text file example would suffice.

Thanks!
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help