Project

General

Profile

Actions

Feature #6223

open

TTCN3 unit test[s] for GTPv1U with extension headers

Added by laforge 6 months ago. Updated 3 months ago.

Status:
In Progress
Priority:
High
Assignee:
Category:
-
Target version:
-
Start date:
10/18/2023
Due date:
% Done:

30%

Spec Reference:

Description

Let's generate GTPv1U trffic with one or even multiple extension headers and see if osmo-ggsn (in both kernel and userspace case) pass the user data as normally expected.


Files


Related issues

Related to Linux Kernel GTP-U - Bug #6212: GTP extension headersIn Progresspespin10/06/2023

Actions
Actions #1

Updated by laforge 6 months ago

  • Related to Bug #6212: GTP extension headers added
Actions #2

Updated by laforge 3 months ago

would be great to get this small task implemented in the near future. It's been 3 months already.

Actions #3

Updated by osmith 3 months ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 30

I've started writing a test in osmo-ttcn3-hacks.git, osmith/wip branch. After spending some time to figure out the right syntax to pass the extension headers from the test to the code that encodes the GTP frames, I have the test almost working.

The current obstacle is, the GTP encoder seems to ignore the lengthfield inside the GTPU_ExtensionHeader. For example, I set it to 4, and in wireshark I see it is at 1 (in the hexdump) and the packet shows up as malformed packet.

Actions #4

Updated by laforge 3 months ago

On Wed, Jan 31, 2024 at 01:52:26PM +0000, osmith wrote:

The current obstacle is, the GTP encoder seems to ignore the lengthfield inside the GTPU_ExtensionHeader. For example, I set it to 4, and in wireshark I see it is at 1 (in the hexdump) and the packet shows up as malformed packet.

best to submita bug report upstream to ECLIPSE titan with a related reproducer.

Actions #5

Updated by pablo 3 months ago

For the record, I made these scripts with containers, they need a bit of work, I would like to integrate them into kernel/selftests infrastructure under the Linux kernel tree. I think these can be complementary each other.

There is a new centralized dashboard (courtesy of Jakub Kicinski) which provides CI for the Linux NetDev tree since a few weeks. I can request Jakub to include these tests to be monitored there.

I guess there is a degree of overlap with Oliver's work, but I needed this to validate my development work at basic level and, coindentally, I just learnt recently that you never have sufficient tests for the work you do :)

Attached the sketches for reference, generalizing them for kernel/selftest should take 1-2 hours maximum.

They even cover GTP tunnel dualstack which is something that was not actually in the requirements, but I realised it came for free with the recent work that has been done.

Let me know if you agree, otherwise, I will just keep them as sketch scripts locally.

Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)