class SS7SCCP

SS7 SCCP implementation. More...

Full nameTelEngine::SS7SCCP
Definition#include <libs/ysig/yatesig.h>
InheritsTelEngine::Mutex [public ], TelEngine::SCCP [public ], TelEngine::SS7Layer4 [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Types

Public Methods

Protected Methods


Detailed Description

Implementation of SS7 Signalling Connection Control Part

enum ReturnCauses { NoTranslationAddressNature = 0x00, NoTranslationSpecificAddress = 0x01, SubsystemCongestion = 0x02, SubsystemFailure = 0x03, UnequippedUser = 0x04, MtpFailure = 0x05, NetworkCongestion = 0x06, Unqualified = 0x07, ErrorInMessageTransport = 0x08, ErrorInLocalProcessing = 0x09, DestinationCanNotPerformReassembly = 0x0a, SccpFailure = 0x0b, HopCounterViolation = 0x0c, SegmentationNotSupported = 0x0d, SegmentationFailure = 0x0e, MessageChangeFailure = 0xf7, InvalidINSRoutingRequest = 0xf8, InvalidISNIRoutingRequest = 0xf9, UnauthorizedMessage = 0xfa, MessageIncompatibility = 0xfb, NotSupportedISNIRouting = 0xfc, RedundantISNIConstrainedRouting = 0xfd, ISNIIdentificationFailed = 0xfe, }

ReturnCauses

enum Control { Status = 0x01, FullStatus = 0x02, EnableExtendedMonitoring = 0x03, DisableExtendedMonitoring = 0x04, EnablePrintMsg = 0x05, DisablePrintMsg = 0x06, }

Control

 SS7SCCP (const NamedList& config)

SS7SCCP

Constructor

 ~SS7SCCP ()

~SS7SCCP

Destructor

bool  initialize (const NamedList* config)

initialize

[virtual]

Configure and initialize the Signalling connection control part

Parameters:
configOptional configuration parameters override

Returns: True if SCCP was initialized properly

Reimplemented from SS7Layer4.

void  attach (SS7Layer3* network)

attach

[virtual]

Attach a SS7 network or router to this service. Detach itself from the old one

Parameters:
networkPointer to network or router to attach

Reimplemented from SS7Layer4.

int  transmitMessage (SS7MsgSCCP* msg, bool local = false)

transmitMessage

Converts an SCCP message to a Message Signal Unit and push it down the protocol stack. The given message is consumed

Parameters:
msgThe message to send
localTrue if the message is local initiated

Returns: Link the message was successfully queued to, negative for error

bool  managementStatus (Type type, NamedList& params)

managementStatus

[virtual]

Receive management information from attached users.

Parameters:
typeThe type of management message
paramsList of parameters (Affected subsystem [M])

Returns: True if the notification was processed

Reimplemented from SCCP.

int  sendMessage (DataBlock& data, const NamedList& params)

sendMessage

[virtual]

Send a message Reimplemented from SCCP

Parameters:
dataData to be transported trough SCCP protocol
paramsSCCP parameters

Reimplemented from SCCP.

HandledMSU  receivedMSU (const SS7MSU& msu, const SS7Label& label, SS7Layer3* network, int sls)

receivedMSU

[virtual]

Process a MSU received from the Layer 3 component

Parameters:
msuMessage data, starting with Service Indicator Octet
labelRouting label of the received MSU
networkNetwork layer that delivered the MSU
slsSignalling Link the MSU was received from

Returns: Result of MSU processing

Reimplemented from SS7L3User.

void  receivedUPU (SS7PointCode::Type type, const SS7PointCode node, SS7MSU::Services part, unsigned char cause, const SS7Label& label, int sls)

receivedUPU

[virtual]

Notification for receiving User Part Unavailable

Parameters:
typeType of Point Code
nodeNode on which the User Part is unavailable
partUser Part (service) reported unavailable
causeUnavailability cause - Q.704 15.17.5
labelRouting label of the UPU message
slsSignaling link the UPU was received on

Reimplemented from SS7L3User.

bool  control (NamedList& params)

control

[virtual]

Reimplemented from SignallingComponent.

int  segmentMessage (SS7MsgSCCP* origMsg, const SS7Label& label, bool local)

segmentMessage

Message changeover procedure for segmentation purpose

Parameters:
origMsgThe original message
labelMTP3 routing label
localTrue if the origMsg is local initiated

Returns: Negative value if the message failed to be sent

inline const bool  ITU ()

ITU

[const]

Helper method to know if we use ITU or ANSI

inline bool  ignoreUnknownAddrSignals ()

ignoreUnknownAddrSignals

[const]

Check if GT digit parser of should ignore unknown digits encoding

Returns: True if unknown digits are ignored

void  notify (SS7Layer3* link, int sls)

notify

[virtual]

Process a notification generated by the attached network layer

Parameters:
linkNetwork or linkset that generated the notification
slsSignalling Link that generated the notification, negative if none

Reimplemented from SS7L3User.

void  routeStatusChanged (SS7PointCode::Type type, const SS7PointCode& node, SS7Route::State state)

routeStatusChanged

[virtual]

Process route status changed notifications

Parameters:
typeType of Point Code
nodeDestination node witch communication status has changed
stateThe new route state

Reimplemented from SS7L3User.

inline unsigned int  messagesSend ()

messagesSend

Obtain the number of messages send by this SCCP instance

Returns: The number of messages send

inline unsigned int  messagesReceived ()

messagesReceived

Obtain the number of messages received by this SCCP instance

Returns: The number of messsages received

inline unsigned int  errors ()

errors

Obtain the number of errors found by this SCCP instance

Returns: The number of errors found

inline unsigned int  translations ()

translations

Obtain the number of GT translations made by this SCCP instance

Returns: The number of translations made

inline const SS7PointCode*  getLocalPointCode ()

getLocalPointCode

[const]

Obtain the local SCCP point code

Returns: Pointer to local point code or 0 if no pointcode was configured

inline SS7PointCode::Type  getLocalPointCodeType ()

getLocalPointCodeType

Obtain local pointcode type

Returns: Local pointcode type

inline int  getPackedPointCode ()

getPackedPointCode

Helper method to obtain the packed pointcode

Returns: Packed pointcode or 0 if local pointcode is not set

inline bool  isLayer3Up ()

isLayer3Up

Helper method to check if attached layer 3 is up

Returns: True if attached layer3 is up

void  destroyed ()

destroyed

[protected virtual]

This method is called to clean up and destroy the object after the reference counter becomes zero

Reimplemented from SS7Layer4.

inline bool  extendedMonitoring ()

extendedMonitoring

[protected]

Helper method to check if this sccp needs extended monitoring

Returns: True if extended monitoring is needed

void  timerTick (const Time& when)

timerTick

[protected virtual]

Method called periodically to check for timeouts Reimplemented from SignallingComponent

Reimplemented from SignallingComponent.

SS7MsgSccpReassemble::Return  reassembleSegment (SS7MsgSCCP* segment, const SS7Label& label, SS7MsgSCCP*& msg)

reassembleSegment

[protected]

Reassemble a message segment

Parameters:
segmentThe message segment
labelThe MTP routing label
msgPointer to fill with the SS7MsgSccpReassemble who processed the message

Returns: SS7MsgSccpReassemble::Return enum value

bool  isEndpoint ()

isEndpoint

[protected virtual]

Check if this sccp is an endpoint

Returns: True if this sccp is an endpoint

Reimplemented from SCCP.

int  routeLocal (SS7MsgSCCP* msg)

routeLocal

[protected]

Route a SCCP Message to other SCCP component.

Parameters:
msgThe sccp message.

Returns: -1 if the message failed to be routed


Generated by: paulc on bussard on Sun Oct 20 21:06:06 2013, using kdoc 2.0a54.