..

HELP! INAP SS7 (DTC/DTS) how to handle Congestion

..

Developer Group

Developer Group
Connect with thousands of other developers to brainstorm ideas, share best practices and tips - or just chat about the latest emerging technologies making noise in the field. And of course, get the most up-to-date service and support news from Dialogic.
Dialogic SS7 and SIGTRAN Signalling

HELP! INAP SS7 (DTC/DTS) how to handle Congestion

  • I'm running on a windows system using INAP/SS7/DTC/DTS (host)  with dual SIU's

    So I'm using GCTLOAD -m4000  but what I've seen if my application gets too slow (or the CPU on the computer slows down) the number of allocated messages gets to high the application can't keep up and the buffer will run out.

    I would like to either

    1. somehow query the gctload message buffer - if greater then X - I will not accept any more INAP calls and continue to process all the current messages.

    or

    2. configure the congestion to somehow help with this?  How does the congestion work.

     

    Is there anyway to query the gctload message buffer in 'code' (instead of running gctload -t1)

    Thanks for your help!

    Paul

  • Hi,

    You can nominate your application as congestion module id (use of GCTLOAD -Ci option) , this will cause the congestion onset notifications to be sent to your application, should GCT congestion occur . it is then up to your application to process it AND make sure your application will forward the congestion messages (onset , abbate) to RSI (0xb0)

    GCT congestion indications are provided with the following message:

    SYS_MSG_CONGESTION (0x0001)
    You can also set the congestion onset and abatte thresholds: Reffer to software environment programmer's manual for details:
    The congestion state can also be determine by using the  GCT_partition_congestion( ) function
    B.
  • Thank you!

    I'll give that a try - but I'm using Septel 401 - which looks like has these functions:

      int  GCT_cong_status(unsigned int partition_id);
      int  GCT_partition_congestion(int cclass);

    I assume I should use the GCT_cong_status (because the argument is partition_id)

    Does that sound right?

    Thanks

    Paul

  • If you're looking in the sysgct.h then the prototype for GCT_partition_congestion is misleading. It does expect to get the partition id. I'd recommend you use that one.

  • Ok thank you! I found the GCT_cong_status function would not compile - so I'm using the GCT_partition_congestion instead. NOTE: I did try using the option to have the RSI link get the congestion message - but that overloaded the SIU -so I've since reverted back to rejected the calls during peak time - we are going to increase the number of Hosts to assist with this issue)