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