Project

General

Profile

Bug #2856

No automatic testing of IuCS interface

Added by laforge over 1 year ago. Updated 3 days ago.

Status:
In Progress
Priority:
Normal
Assignee:
Category:
IuCS support
Target version:
-
Start date:
01/22/2018
Due date:
% Done:

60%

Resolution:
Tags:

Description

While we start to have some decent tests in our TTCN-3 based test suites for MGCP, BSSAP, MNCC, GSUP, etc., this all is 2G related testing so far.

In order to test the 3G side of things, we should start with tests for IuCS in OsmoMSC.

As TITAN can not speak APER (aligned packed encoding rules) directly, we will have to do some kind of external transcoding. The process roughly looks like this:
  • TITAN parses the RANAP asn1 syntax and generates its own structured data types from it
  • TITAN can generate BER (or XER?) encoder/decoder from this
  • we need to hook up some transcoder that bidirectionally converts BER<->APER. This could be either an external program, or we could link it as a library via C++ code into TITAN

See https://www.eclipse.org/forums/index.php/t/1070344/ for a description of the problem and the usual approach to solve it. I'm attaching the key source file which contains the encoder/decoder functions.

The converter could be generated either using our hacked version of asn1c (which we use in osmi-iuh), or even using other (free or non-free) tools.

CAM_EncDec.cc CAM_EncDec.cc 6.28 KB example source file using the TTCN->BER->PER approach laforge, 01/22/2018 01:33 AM
iucs-auth-ttcn.pcap iucs-auth-ttcn.pcap 1.1 KB laforge, 04/20/2019 08:50 PM

Related issues

Precedes OsmoSGSN - Bug #2857: No automatic testing of IuPS interfaceStalled2018-01-232018-01-23

Precedes OsmoHNBGW - Bug #2858: No automatic testing of Iuh interfaceNew2018-01-232018-01-23

History

#1 Updated by laforge over 1 year ago

  • Precedes Bug #2857: No automatic testing of IuPS interface added

#2 Updated by laforge over 1 year ago

  • Precedes Bug #2858: No automatic testing of Iuh interface added

#3 Updated by laforge about 1 year ago

  • % Done changed from 0 to 10

I've done some initial investigation + trials, and I could successfully compile the RANAP, RUA and HNBAP asn sources (taken from wireshark.git/dissectors/epan/asn/) using ttcn3_makefilegen. The result is some rather large C++ and even larger object files.

What's missing to complete the chain now is to link this code against libosmo-iu and the glue code for the BER<->APER transcoding

#4 Updated by laforge 11 months ago

  • Tags set to TTCN3, 3G

#5 Updated by laforge 11 days ago

  • Category set to IuCS support
  • Status changed from New to In Progress
  • % Done changed from 10 to 20

I have RANAP encoding/decoding now working in TTCN-3, and I've also created a set of RANAP templates to use. Integration into the MSC test suite via RAN_Emulation.ttcn is currently ongoing.

#6 Updated by laforge 10 days ago

  • Status changed from In Progress to Stalled

The core RANAP integration, the templates etc. appear to be working. The problem is that due to bugs in the proprietary asn1 compiler we're not able to reliably transcode between BER and APER at this point. setting to stalled again.

#7 Updated by laforge 5 days ago

an update including related fixes of the asn1 compiler was released. I'm at the point where withe very little hacks to MSC_Tests.ttcn I can get LU/auth dialogue between simulated RNC and OSmoMSC going, see attached pcap file.

It seems any fundamental ASN.1 related issues have been resolved, and libfftranscode is working as expected.

I'll clean up the code and work on more test integration shortly.

#8 Updated by laforge 5 days ago

#9 Updated by laforge 5 days ago

There are now packages of a working APER <-> BER tranascoder available from http://ftp.osmocom.org/binaries/libfftranscode/ - the packages are for debian9 x86_64, which is what we use in or docker containers.

#10 Updated by laforge 3 days ago

  • % Done changed from 30 to 60

libfftranscode is integrated in our docker builds. On my system locally I've already been running a number of IuCS TTCN3 tests. Will push them to gerrit once they have received more testing.

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)