Yate
SS7M2UA Class Reference

SIGTRAN MTP2 User Adaptation Layer. More...

#include <yatesig.h>

Inheritance diagram for SS7M2UA:
SS7Layer2 SIGAdaptUser SignallingComponent RefObject DebugEnabler GenObject

Public Member Functions

 SS7M2UA (const NamedList &params)
 
virtual bool initialize (const NamedList *config)
 
virtual bool control (Operation oper, NamedList *params=0)
 
virtual unsigned int status () const
 
virtual bool transmitMSU (const SS7MSU &msu)
 
virtual void recoverMSU (int sequence)
 
virtual bool operational () const
 
virtual int getSequence ()
 
virtual void activeChange (bool active)
 
int32_t iid () const
 
- Public Member Functions inherited from SS7Layer2
virtual const char * statusName (unsigned int status, bool brief) const
 
const char * statusName (bool brief=false) const
 
unsigned int upTime () const
 
void attach (SS7L2User *l2user)
 
SS7L2Useruser () const
 
int sls () const
 
void sls (int linkSel)
 
int inhibited () const
 
bool inhibited (int flags) const
 
virtual unsigned int congestion ()
 
virtual bool control (NamedList &params)
 
- Public Member Functions inherited from SignallingComponent
virtual ~SignallingComponent ()
 
virtual const StringtoString () const
 
virtual NamedListcontrolCreate (const char *oper=0)
 
virtual bool controlExecute (NamedList *params)
 
virtual void engine (SignallingEngine *eng)
 
SignallingEngineengine () const
 
int debugLevel (int level)
 
const StringcomponentType () const
 
- Public Member Functions inherited from RefObject
 RefObject ()
 
virtual ~RefObject ()
 
virtual void * getObject (const String &name) const
 
virtual bool alive () const
 
bool ref ()
 
bool deref ()
 
int refcount () const
 
virtual void destruct ()
 
- Public Member Functions inherited from GenObject
 GenObject ()
 
virtual ~GenObject ()
 
virtual const StringtraceId () const
 
NamedCountergetObjCounter () const
 
NamedCountersetObjCounter (NamedCounter *counter)
 
- Public Member Functions inherited from DebugEnabler
 DebugEnabler (int level=TelEngine::debugLevel(), bool enabled=true)
 
int debugLevel () const
 
int debugLevel (int level)
 
bool debugEnabled () const
 
void debugEnabled (bool enable)
 
const char * debugName () const
 
bool debugAt (int level) const
 
bool debugChained () const
 
void debugChain (const DebugEnabler *chain=0)
 
void debugCopy (const DebugEnabler *original=0)
 
- Public Member Functions inherited from SIGAdaptUser
virtual ~SIGAdaptUser ()
 

Protected Types

enum  LinkState {
  LinkDown , LinkReq , LinkReqEmg , LinkUp ,
  LinkUpEmg
}
 

Protected Member Functions

virtual void timerTick (const Time &when)
 
SS7M2UAClientclient () const
 
virtual bool processMGMT (unsigned char msgType, const DataBlock &msg, int streamId)
 
virtual bool processMAUP (unsigned char msgType, const DataBlock &msg, int streamId)
 
void postRetrieve ()
 
- Protected Member Functions inherited from SS7Layer2
 SS7Layer2 ()
 
bool receivedMSU (const SS7MSU &msu)
 
bool recoveredMSU (const SS7MSU &msu)
 
void notify ()
 
bool inhibit (int setFlags, int clrFlags=0)
 
bool getEmergency (NamedList *params=0, bool emg=false) const
 
- Protected Member Functions inherited from SignallingComponent
 SignallingComponent (const char *name=0, const NamedList *params=0, const char *type="unknown")
 
virtual void destroyed ()
 
void insert (SignallingComponent *component)
 
virtual void detach ()
 
void setName (const char *name)
 
void setCompType (const char *type)
 
unsigned long tickSleep (unsigned long usec=1000000) const
 
- Protected Member Functions inherited from RefObject
virtual void zeroRefs ()
 
bool resurrect ()
 
- Protected Member Functions inherited from DebugEnabler
void debugName (const char *name)
 
- Protected Member Functions inherited from SIGAdaptUser
 SIGAdaptUser ()
 
SIGAdaptClientadaptation () const
 
SIGTransporttransport () const
 
void adaptation (SIGAdaptClient *adapt)
 
bool activate ()
 
bool aspUp () const
 
bool aspActive () const
 
unsigned char getStreamId ()
 

Protected Attributes

SignallingTimer m_retrieve
 
int32_t m_iid
 
int m_linkState
 
bool m_rpo
 
bool m_longSeq
 
- Protected Attributes inherited from SS7Layer2
bool m_autoEmergency
 
int m_lastSeqRx
 
unsigned int m_congestion
 
- Protected Attributes inherited from SIGAdaptUser
bool m_autostart
 
unsigned char m_streamId
 

Friends

class SS7M2UAClient
 

Additional Inherited Members

- Public Types inherited from SS7Layer2
enum  LinkStatus {
  OutOfAlignment = 0 , NormalAlignment = 1 , EmergencyAlignment = 2 , OutOfService = 3 ,
  ProcessorOutage = 4 , Busy = 5 , O = OutOfAlignment , N = NormalAlignment ,
  E = EmergencyAlignment , OS = OutOfService , PO = ProcessorOutage , B = Busy
}
 
enum  Operation { Pause = 0x100 , Resume = 0x200 , Align = 0x300 , Status = 0x400 }
 
enum  Inhibitions { Unchecked = 0x01 , Inactive = 0x02 , Local = 0x04 , Remote = 0x08 }
 
- Static Public Member Functions inherited from SignallingComponent
static bool resolveConfig (const String &cmpName, NamedList &params, const NamedList *config)
 
- Static Public Member Functions inherited from RefObject
static bool alive (const RefObject *obj)
 
static bool efficientIncDec ()
 
- Static Public Member Functions inherited from GenObject
static void * getObject (const String &name, const GenObject *obj)
 
static bool getObjCounting ()
 
static void setObjCounting (bool enable)
 
static NamedCountergetObjCounter (const String &name, bool create=true)
 
static ObjListgetObjCounters ()
 

Detailed Description

SIGTRAN MTP2 User Adaptation Layer.

RFC3331 SS7 Layer 2 implementation over SCTP/IP. M2UA is intended to be used as a Provider-User where real MTP2 runs on a Signalling Gateway and MTP3 runs on an Application Server.

Constructor & Destructor Documentation

◆ SS7M2UA()

SS7M2UA ( const NamedList & params)

Constructor

Parameters
paramsList of construction parameters

Member Function Documentation

◆ activeChange()

virtual void activeChange ( bool active)
virtual

Traffic activity state change notification

Parameters
activeTrue if the ASP is active and traffic is allowed

Implements SIGAdaptUser.

◆ control()

virtual bool control ( Operation oper,
NamedList * params = 0 )
virtual

Execute a control operation. Operations can change the link status or can query the aligned status.

Parameters
operOperation to execute
paramsOptional parameters for the operation
Returns
True if the command completed successfully, for query operations also indicates the data link is aligned and operational

Reimplemented from SS7Layer2.

◆ getSequence()

virtual int getSequence ( )
virtual

Get the sequence number of the last MSU received, request if not available

Returns
Last FSN received, negative if not available

Reimplemented from SS7Layer2.

◆ iid()

int32_t iid ( ) const
inline

Retrieve the numeric Interface Identifier (if any)

Returns
IID value, -1 if not set

◆ initialize()

virtual bool initialize ( const NamedList * config)
virtual

Configure and initialize M2UA and its transport

Parameters
configOptional configuration parameters override
Returns
True if M2UA and the transport were initialized properly

Reimplemented from SignallingComponent.

◆ operational()

virtual bool operational ( ) const
virtual

Check if the link is fully operational

Returns
True if the link is aligned and operational

Implements SS7Layer2.

◆ recoverMSU()

virtual void recoverMSU ( int sequence)
virtual

Remove the MSUs waiting in the transmit queue and return them

Parameters
sequenceFirst sequence number to recover, flush earlier packets

Reimplemented from SS7Layer2.

◆ status()

virtual unsigned int status ( ) const
virtual

Retrieve the current link status indications

Returns
Link status indication bits

Reimplemented from SS7Layer2.

◆ timerTick()

virtual void timerTick ( const Time & when)
protectedvirtual

Periodical timer tick used to perform alignment and housekeeping

Parameters
whenTime to use as computing base for events and timeouts

Reimplemented from SS7Layer2.

References SIGAdaptUser::adaptation().

◆ transmitMSU()

virtual bool transmitMSU ( const SS7MSU & msu)
virtual

Push a Message Signal Unit down the protocol stack

Parameters
msuMessage data, starting with Service Indicator Octet
Returns
True if message was successfully queued

Implements SS7Layer2.


The documentation for this class was generated from the following file: