OpenSS7 |
© Copyright 1997-2001, OpenSS7, All Rights Reserved. |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
The Signalling Link Set (SLS) Interface design is explained in the following sections:
Overview | - A brief overview of the Signalling Link Set driver. |
Model | - The model of a Signalling Link Set. |
Services | - Services provided by the Signalling Link Set provider. |
Primitives | - Primitives described at the Signalling Link Set Interface. |
Sequences | - Allowed sequences of primitives and interface state transitions |
Implementation | - Considerations for implementation of drivers using the Signalling Link Set Interface. |
Header File | - A header file which provides definitions for the Signalling Link Set Interface. |
The Signalling Link Set module is a multiplexor which is used to group streams associated with signalling links into a signalling link set. Signalling link sets can consist of one or upwards of 16 signalling links. Signalling Link Set modules fan-out downstream and fan-in upstream. Each signalling link set multiplexor is associated with a single Message Transfer Part multiplexor.
The Signalling Link Set module completes the OSI Layer 2 capabilities and, as
such, presents a DLPI interface upwards. The DLPI interface has been extended
to permit configuration and SS7 protocol specific information to be exchanged
between the Network Layer (MTP) and the link set. The details of the DLPI
mapping and the extensions for the SS7 protocol are provided in the section on
Signalling Link Sets.
Model
Services
Primitives
/***************************************************************************** @(#) $Id: streams04.html,v 0.7.2.7 2001/01/09 10:37:14 brian Exp $ ----------------------------------------------------------------------------- Copyright (C) 1997-2001 Brian Bidulock. All Rights Reserved. PUBLIC LICENSE This license is provided without fee, provided that the above copy- right notice and this public license must be retained on all copies, extracts, compilations and derivative works. Use or distribution of this work in a manner that restricts its use except as provided here will render this license void. The author(s) hereby waive any and all other restrictions in respect of their copyright in this software and its associated documentation. The authors(s) of this software place in the public domain any novel methods or processes which are embodied in this software. The author(s) undertook to write it for the sake of the advancement of the Arts and Sciences, but it is provided as is, and the author(s) will not take any responsibility in it. ----------------------------------------------------------------------------- Last modified: $Date: 2001/01/09 10:37:14 $ by $Author: brian $ *****************************************************************************/ #ident "@(#) $Id: streams04.html,v 0.7.2.7 2001/01/09 10:37:14 brian Exp $" #ifndef __SS7_SLSI_H__ #define __SS7_SLSI_H__ typedef lmi_long ls_long; typedef lmi_ulong ls_ulong; typedef lmi_ushort ls_ushort; typedef lmi_uchar ls_uchar; typedef lmi_long lk_long; typedef lmi_ulong lk_ulong; typedef lmi_ushort lk_ushort; typedef lmi_uchar lk_uchar; #define LS_PROTO_BASE 80L #define LS_DSTR_FIRST ( 1L + LS_PROTO_BASE) #define LS_SIGNAL_UNIT_REQ ( 2L + LS_PROTO_BASE) #define LS_STOP_REQ ( 3L + LS_PROTO_BASE) #define LS_START_REQ ( 4L + LS_PROTO_BASE) #define LS_RESTART_REQ ( 5L + LS_PROTO_BASE) #define LS_INHIBIT_REQ ( 6L + LS_PROTO_BASE) #define LS_UNINHIBIT_REQ ( 7L + LS_PROTO_BASE) #define LS_EMERGENCY_REQ ( 8L + LS_PROTO_BASE) #define LS_NORMAL_REQ ( 9L + LS_PROTO_BASE) #define LS_DSTR_LAST ( 9L + LS_PROTO_BASE) #define LS_USTR_FIRST (-1L - LS_PROTO_BASE) #define LS_SIGNAL_UNIT_IND (-2L - LS_PROTO_BASE) #define LS_FAILURE_IND (-3L - LS_PROTO_BASE) #define LS_RESTORED_IND (-4L - LS_PROTO_BASE) #define LS_INHIBITED_IND (-5L - LS_PROTO_BASE) #define LS_CONGESTED_IND (-6L - LS_PROTO_BASE) #define LS_OUTAGE_IND (-7L - LS_PROTO_BASE) #define LS_RECOVERED_IND (-8L - LS_PROTO_BASE) #define LS_USTR_LAST (-9L - LS_PROTO_BASE) /* * LS_SIGNAL_UNIT_REQ, M_PROTO or M_PCPROTO (M_DATA) */ typedef struct { ls_ulong ls_primitive; ls_ulong ls_slc; } ls_signal_unit_req_t; /* * LS_STOP_REQ, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_stop_req_t; /* * LS_START_REQ, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_start_req_t; /* * LS_RESTART_REQ, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_restart_req_t; /* * LS_INHIBIT_REQ, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_inhibit_req_t; /* * LS_UNINHIBIT_REQ, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_unihibit_req_t; /* * LS_EMERGENCY_REQ, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_emergency_req_t; /* * LS_NORMAL_REQ, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_normal_req_t; /* * LS_SIGNAL_UNIT_IND, M_PROTO or M_PCPROTO (M_DATA) */ typedef struct { ls_ulong ls_primitive; ls_ulong ls_slc; } ls_signal_unit_ind_t; /* * LS_FAILURE_IND, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; ls_ulong ls_reason; } ls_failure_ind_t; /* * LS_RESTORED_IND, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_restored_ind_t; /* * LS_INHIBITED_IND, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_inhibited_ind_t; /* * LS_CONGESTED_IND, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; ls_ulong ls_cong_level; ls_ulong ls_disc_level; } ls_congested_ind_t; /* * LS_OUTAGE_IND, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_outage_ind_t; /* * LS_RECOVERED_IND, M_PROTO or M_PCPROTO */ typedef struct { ls_ulong ls_primitive; } ls_recovered_ind_t; union LS_primitives { ls_long ls_primitive; ls_signal_unit_req_t signal_unit_req; ls_stop_req_t stop_req; ls_start_req_t start_req; ls_restart_req_t restart_req; ls_inhibit_req_t inhibit_req; ls_unihibit_req_t unihibit_req; ls_emergency_req_t emergency_req; ls_normal_req_t normal_req; ls_signal_unit_ind_t signal_unit_ind; ls_failure_ind_t failure_ind; ls_restored_ind_t restored_ind; ls_inhibited_ind_t inhibited_ind; ls_congested_ind_t congested_ind; ls_outage_ind_t outage_ind; ls_recovered_ind_t recovered_ind; }; #define LS_PRIMITIVE_MAX_SIZE sizeof(union LS_primitives); #define LS_SIGNAL_UNIT_REQ_SIZE sizeof(ls_signal_unit_req_t) #define LS_STOP_REQ_SIZE sizeof(ls_stop_req_t) #define LS_START_REQ_SIZE sizeof(ls_start_req_t) #define LS_RESTART_REQ_SIZE sizeof(ls_restart_req_t) #define LS_INHIBIT_REQ_SIZE sizeof(ls_inhibit_req_t) #define LS_UNIHIBIT_REQ_SIZE sizeof(ls_unihibit_req_t) #define LS_EMERGENCY_REQ_SIZE sizeof(ls_emergency_req_t) #define LS_NORMAL_REQ_SIZE sizeof(ls_normal_req_t) #define LS_SIGNAL_UNIT_IND_SIZE sizeof(ls_signal_unit_ind_t) #define LS_FAILURE_IND_SIZE sizeof(ls_failure_ind_t) #define LS_RESTORED_IND_SIZE sizeof(ls_restored_ind_t) #define LS_INHIBITED_IND_SIZE sizeof(ls_inhibited_ind_t) #define LS_CONGESTED_IND_SIZE sizeof(ls_congested_ind_t) #define LS_OUTAGE_IND_SIZE sizeof(ls_outage_ind_t) #define LS_RECOVERED_IND_SIZE sizeof(ls_recovered_ind_t) #endif __SS7_SLSI_H__
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
OpenSS7 |
© Copyright 1997-2001, OpenSS7, All Rights Reserved. Last modified: $Date: 2014/10/10 10:45:02 $ |