Osmo-uecups » History » Revision 4
« Previous |
Revision 4/6
(diff)
| Next »
laforge, 04/27/2020 02:52 PM
osmo-uecups¶
osmo-uecups (for UE Control/User Plane Separation) is a special-purpose project which emulates the UE/MME/SGW/SGSN side of GTP tunnels. This can be used in a variety of test use cases where a P-GW or GGSN (or GTP roaming hub) should be tested with a variety of GTP sessions/tunnels/bearers.
This project is currently under development, hence there's no documentation yet.
An initial announcment can be found in the Eclipse TITAN Forum at https://www.eclipse.org/forums/index.php/t/1103391/
Usage in PGW testing¶
The diagram below illustrates how the osmo-uecups-daemon
is used in testing of a PGW:
osmo-uecups-daemon¶
osmo-uecups-daemon
has the following functionality
- receives instructions from the Test Suite via a JSON based "UECUPS" protcol
- create_tun creates a tunnel and an associaed network namespace with tun device inside
- destroy_tun destroys a previously created tunnel
- start_program executes a specified command/program within the network namespace of the tunnel
- reset_all_state deletes all tunnels, tun devices, network namespaces and kills all started programs
- encapsulates packets arriving on the tun devices into GTP1U and sends them to the PGW
- decapsulates GTP1u received from the PGW and passses them via the respective tun device [in the respective netns]
TTCN3 integration¶
There are the following TTCN3 modules for integration into TTCN3 test suites, specifically using Eclipse TITAN:
- UECUPS_Types.ttcn contains abstract types used for the UECUPS protocol with the daemon (encoding/decoding of JSON performed automatically/implicitly by TITAN)
- UECUPS_CodecPort.ttcn contains the definition of a transcoding port on top of the IPL4asp_PT (SCTP)
- UECUPS_CodecPort_CtrlFunct.ttcn and UECUPS_CodecPort_CtrlFunctDef.cc are related helpers
For an example using all of the above, see the code in
http://git.osmocom.org/osmo-ttcn3-hacks/tree/pgw/PGW_Tests.ttcn
Source Code¶
Source code can be found in git at https://git.osmocom.org/osmo-uecups/
Updated by laforge about 4 years ago · 4 revisions