If you need some example pcap traces generated by any of these tools, just send an email to fasferraz@gmail.com


5/4/11

SGSN Emulator

This is an application that I’ve made in 2010. This application is an emulation of the Gn interface of a SGSN (according to 3GPP 29.060).
It implements GTPv1, mainly the control part GTP-C. In terms of user plane, it accepts GTP-U in the downlink direction, and also implements the echo response mechanism in order to preserve the GTP tunnels.


This app can be used to test every GTP parameter in a CreatePDPContextRequest. I’ve made only options for dynamically setting the QOS Profile, Rat Type and Selection Mode parameters, but other information elements can be easily added (or removed). This way you can test the behaviour of the GGSN in the presence or absence of specific information elements (mandatory or optional), or the presence of specific parameter values in order to reproduce whatever scenarios an operator may want (example: Roaming, interworking between different vendors, reproducing failure scenarios, etc…)


With this application it’s possible to create and delete PDPs dynamically.

It’s possible to define:
  • the rate at which the PDPs are created and deleted (the rates can be different);
  • the APNs that are sent in the CreatePDPContextRequest;
  • the total number of PDPs to create per APN;
  • the duration of each PDP per APN;
  • the GGSN IP address for each APN;
  • the IMSI Range to be used;
  • the GTP-C and GTP-U address of the SGSN;
  • the daily working interval, and weekdays to start the creation and deletion of the PDPs

During running time it’s possible to check how many PDPs are currently active per APN, and access individual PDP Context information like the ChargingID, or the  EndUserAddress for each IMSI/MSISDN/NSAPI.

The application also provides statistical information in real-time and also cumulative counters for GTP messages and causes received in responses:




The main goal of this application it’s to test the GGSN behaviour under harsh conditions, since we can set a very high creation and deletion signalling rates. 

We can also test other signalling components if they are involved in the activation or deactivation of a specific APN/PDP without having to actually be generating real traffic from the network:

- Gx interface (i.e. PCRF)
- Radius
- Gy interface (i.e. OCS)
- Ga interface (i.e. generation/closure of CDRs for offline billing)

I have made a simpler tool that has some of these functionalities. 
Please check it GTP Emulator.

7 comments:

  1. can you please send me an email to discuss exactly what you need?
    fasferraz@gmail.com

    ReplyDelete
    Replies
    1. This comment has been removed by the author.

      Delete
  2. Hi Fabricio,
    Do you have any plan to support GTP V2 also for control plane.
    Regards.

    ReplyDelete
    Replies
    1. Yes. I have a working version for GTPv2 of the GTP Emulator App.
      I didn't have yet the time to show it here. It can behave like an SGW (S5/s8) or MME (S11) or SGSN (S4).

      Delete
    2. Thanks a lot Faricio, i want to simulate SGW and GGSN both. It is fine to use GTP Emulator App to simulate this.

      Delete
  3. hi fabrico,

    kindly reply to my email .

    ReplyDelete