Hi Neels,
I'm trying to understand how you handle a PDP Create Context message where
the SGSN Address for control plane and an SGSN address for user traffic differ
from the sender IP?
Background:
3GPP TS 29.060 version 12.9.0 Release 12, Section 7.3.2 Create PDP Context
Request has this to say about the SGSN Addresses:
The SGSN shall include an SGSN Address for control
plane and an SGSN address
for user traffic, which may differ from that provided by the underlying network
service (e.g. IP).
To me the implies that a maximum of four IP's need to handled per PDP Context.
Those are the two GTP-C/U sender IP's the SGSN uses to talk to us and the two
GTP-C/U IP's we are supposed to use when talking to the SGSN.
The same applies to the GGSN connection.
Any thoughts on this?
Andreas
On 11/04/2015 02:56 AM, Neels Hofmeyr wrote:
I can talk all day about atomic commits, but chunks of
gtphub have transformed
twice over (that's me figuring out how to map and resolve GTP data elements),
so that half the patches are obsoleted by later ones, in a hard-to-rebase way.
So here is a joint patch of gtphub for review. If anyone requests it, I will
gladly separate it into a handful of patches adding each subsection / family of
API at a time, to better show where each part reaches. Just ask...
Many thanks for any reviews!
~Neels
Neels Hofmeyr (1):
Add GTP hub (code bomb).
openbsc/.gitignore | 2 +
openbsc/configure.ac | 1 +
openbsc/include/openbsc/Makefile.am | 1 +
openbsc/include/openbsc/debug.h | 1 +
openbsc/include/openbsc/gtphub.h | 345 +++++
openbsc/include/openbsc/vty.h | 1 +
openbsc/src/gprs/Makefile.am | 6 +
openbsc/src/gprs/gtphub.c | 1794 +++++++++++++++++++++++
openbsc/src/gprs/gtphub_main.c | 283 ++++
openbsc/src/gprs/gtphub_sep.c | 26 +
openbsc/src/gprs/gtphub_vty.c | 258 ++++
openbsc/tests/Makefile.am | 2 +-
openbsc/tests/gtphub/Makefile.am | 20 +
openbsc/tests/gtphub/gtphub_nc_test.gtphub.conf | 5 +
openbsc/tests/gtphub/gtphub_nc_test.ok | 7 +
openbsc/tests/gtphub/gtphub_nc_test.sh | 85 ++
openbsc/tests/gtphub/gtphub_test.c | 675 +++++++++
openbsc/tests/gtphub/gtphub_test.ok | 3 +
openbsc/tests/gtphub/hex2bin.py | 13 +
openbsc/tests/testsuite.at | 12 +
20 files changed, 3539 insertions(+), 1 deletion(-)
create mode 100644 openbsc/include/openbsc/gtphub.h
create mode 100644 openbsc/src/gprs/gtphub.c
create mode 100644 openbsc/src/gprs/gtphub_main.c
create mode 100644 openbsc/src/gprs/gtphub_sep.c
create mode 100644 openbsc/src/gprs/gtphub_vty.c
create mode 100644 openbsc/tests/gtphub/Makefile.am
create mode 100644 openbsc/tests/gtphub/gtphub_nc_test.gtphub.conf
create mode 100644 openbsc/tests/gtphub/gtphub_nc_test.ok
create mode 100755 openbsc/tests/gtphub/gtphub_nc_test.sh
create mode 100644 openbsc/tests/gtphub/gtphub_test.c
create mode 100644 openbsc/tests/gtphub/gtphub_test.ok
create mode 100755 openbsc/tests/gtphub/hex2bin.py