| Intelligent Network (800/CMS/CLASS/CNAM/LIDB)Description: OpenSS7 Project Status Applications INAP.The IN (800/CMS/CLASS/CNAM/LIDB) product provides an IN interface library which provides a framework and applications for 800, CMS, CLAS, CNAM, LIDB services. These applications are intended to run stand-alone, or in conjunction with the switch-based applications below (OpenSwitch, Asterisk). This product focuses on the SCCP and TCAP capabilities of the OpenSS7 stack. It utilizes SUA and TUA for redunancy and reliability and supports TALI integration to Tekelec IP7 and other TALI compliant products. A PDF version of this document is available here. OpenSS7 CNAM Query PlatformOpenSS7 CNAM Query Platform High-Level DesignAbout This ManualThis is Edition 7.20141001, last updated 2014-10-25, of The OpenSS7 CNAM Query Platform High-Level Design, for Version 1.1 release 7.20141001 of the OpenSS7 package. Executive OverviewThis document provides a High-Level Design for the OpenSS7 CNAM Query Platform. The initial an primary purpose of this equipment is to provide legacy a local SS7 compatible CNAM Query Platform that interfaces with existing switching equipment, yet queries a remote CNAM database over the Internet. Because the solution attempts to avoid excessive costs for long haul graded SS7 links, the platform would benefit from using low cost commodity hardware and open source software. The OpenSS7 ProjectThe OpenSS7 Project is an open source software project that has developed many protocol components within the SS7, SIGTRAN, ISDN and VoIP protocol stacks. Intellectual property rights for the OpenSS7 Project are held by OpenSS7 Corporation. All OpenSS7 Project software is eventually licensed under the GNU Affero General Public License. OpenSS7 Corporation also provide commercial licensing of OpenSS7 Project software under terms less restrictive than the AGPL. CNAM Query PlatformOpenSS7 can provide CNAM Query Platform capabilities in a high-performance, low-cost, small-footprint platform leveraging the GNU/Linux operating system distributions and tools, and utilizing low-cost commodity hardware. For details on platform applications, see Application Architecture, Network Architecture, Optional Application Support, and Optional Network Support. Open Source SoftwareThe OpenSS7 Project leverages the widespread use of GNU/Linux operation systems, distributions, and FSF tools such as ‘autoconf’ and open source software such as RPM. For example, this document was formatted for PDF, HTML, info and plain text using the GNU texinfo system, ‘autoconf’, and the TeX formatting system. The open source model avoids proprietary lock-in and permits in-house or outsourced development. All source code is available for use and modification by the end customer. All build tools, documentation and associated resources are generally available. The availability of the source code and complete documentation eases problem resolution and can offer upgrades and fixes even in advance of client problem reports. For details on software solutions, see Protocol Architecture, Software Architecture, Optional Protocol Support, and Optional Software Support. Commodity HardwareBy best utilizing commodity PC or standardized CompactPCI and AdvancedTCA hardware, OpenSS7 makes available the highest performance platforms available on the market at back-to-school prices. When carrier-grade is not essential, 3GHz Pentium or Xeon class servers in hardened rack mount chassis can be used at a fraction of the cost, and yet outperform, other solutions. Where carrier-grade is necessary, embedded Linux on standardized CompactPCI and AdvanceTCA NEBS compliant chassis make for a higher cost, but more reliable alternative. For details on hardware solutions, see Platform Architecture, Hardware Architecture, and Optional Hardware Support. Rapid DevelopmentThe OpenSS7 Project has already developed protocol components completing the SS7 and SIGTRAN signalling stacks including MTP Level 2 and Level 3, ISUP, SCCP, TCAP; and SCTP, M2PA, M2UA, M3UA, SUA and TUA. Development of a CNAM Query Platform to meet low scale deployment requirements needs only the development of a query capability between the OpenSS7 platform and the utlimate CNAM database. For details on scheduling, see Logistics. An Evolving SolutionThe OpenSS7 Project is evolving to support more protocol stacks including ISDN and VoIP. Support for an ever expanding capability is demonstrated by the additional options available as described in Optional Application Support, Optional Network Support, Optional Protocol Support, Optional Software Support, and Optional Hardware Support. ConclusionsIn summary, a CNAM Query Platform for small scale deployments is an excellent application of the OpenSS7 SS7 and SIGTRAN stacks and can be provided at a affordable price on short time-lines, while offering an evolution path for future deployment applications. Brian Bidulock The OpenSS7 Project PrefaceDocument InformationAbstractThis document provides a High-Level Design for the OpenSS7 CNAM Query Platform. ObjectiveThe objective of this document is to provide a High-Level Design for the development of a low cost, high-performance, CNAM Query Platform using OpenSS7 SS7 stack components, software, and compatible systems and hardware. IntentThe intent of this document is to act as a High-Level Design for a project for an High-Level Design As a High-Level Design, this document discusses components and systems which are not necessarily complete. OpenSS7 Corporation is under no obligation to provide any software, system or feature listed herein. AudienceThis document is intended for a technical audience. The reader should be familiar with most ETSI, ITU-T and ANSI, Signalling System No. 7 recommendations, as well as IETF drafts and RFCs for SIGTRAN protocols. Because much of the focus of a CNAM Query Platform is on SS7 signalling, the reader should be familiar with ITU-T, ETSI and ANSI standards regarding Signalling System No. 7 as applied to Calling Name Delivery. RevisionsTake care that you are working with a current version of this document: you will not be notified of updates. To ensure that you are working with a current version, contact the Author, or check The OpenSS7 Project website for a current version. Version Control$Log: cnam.texi,v $ Revision 1.1.2.4 2011-08-07 11:14:28 brian - mostly mandriva and ubuntu build updates Revision 1.1.2.3 2011-07-27 07:52:14 brian - work to support Mageia/Mandriva compressed kernel modules and URPMI repo Revision 1.1.2.2 2011-02-07 02:21:34 brian - updated manuals Revision 1.1.2.1 2009-06-21 10:45:50 brian - added files to new distro ISO 9000 ComplianceOnly the TeX, texinfo, or roff source for this document is controlled. An opaque (printed or postscript) version of this document is an UNCONTROLLED VERSION. DisclaimerOpenSS7 Corporation disclaims all warranties with regard to this documentation including all implied warranties of merchantability, fitness for a particular purpose, non-infringement, or title; that the contents of the document are suitable for any purpose, or that the implementation of such contents will not infringe on any third party patents, copyrights, trademarks or other rights.. In no event shall OpenSS7 Corporation be liable for any direct, indirect, special or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of contract, negligence or other tortious action, arising out of or in connection with any use of this document or the performance or implementation of the contents thereof. OpenSS7 Corporation reserves the right to revise this software and documentation for any reason, including but not limited to, conformity with standards promulgated by various agencies, utilization of advances in the state of the technical arts, or the reflection of changes in the design of any techniques, or procedures embodied, described, or referred to herein. OpenSS7 Corporation is under no obligation to provide any feature listed herein. Document OrganizationThis document is organized as follows:
1 IntroductionThis document provides a High-Level Design for a platform to provide the OpenSS7 CNAM Query Platform capabilities. The primary driver for this CNAM platform is to provide a system that avoid the use of expensive graded long haul SS7 facilities. The document provides a high-level design and proposal for a production system to provide this capability. The proposal utilizes, where possible, existing OpenSS7 SS7 and SIGTRAN stack components and provides a development plan for components that are specific to the OpenSS7 CNAM Query Platform requirements. This document discusses the resulting software configuration that will be put in place on the production system, the platform configuration for the production system, and a lab network configuration for evaluation. Also discussed is an overview of the project management logistics for successful completion over the course of this development project. It is intended that this document be a “living” document, that is updated over the course of this development project. 1.1 CNAM Query PlatformThis project provides an OpenSS7 CNAM Query Platform that accepts and responds locally to low volume SS7 CNAM queries over traditional SS7 links, but across the CO floor, and passes the queries to a remove system using the Internet Protocol suite. 1.2 Project DriversThe lead purpose of the OpenSS7 CNAM Query Platform is to provide a cost-effective solution to existing CNAM query services that utilize high-cost long haul graded SS7 link facilities. 1.3 ScopeBecause of the focus on low cost and the need for low scale deployment, the OpenSS7 CNAM Query Platform is constructed using commodity computing platforms and PCI based hardware cards. This will initially result in a non-carrier grade system for low deployment cost. For production platforms, carrier grade options are available but are not pursued until completion of the initial phases. 1.3.1 PhasesThe longer term project is broken into the following phases:
Although some reference is made to capabilities supporting other phases, Phase 1 and Phase 2 are the focus of this document. 1.3.2 GatesEach phase of the project consists of seven gates. The seven gates are defined as follows:
For more details on Gate scheduling for Phase 1 and Phase 2 of the project, see Schedule. 2 Application ArchitectureThe OpenSS7 CNAM Query Platform is intended to provide a low scale, low cost CNAM query service. 2.1 Application BackgroundTraditionally, Calling and Called Name Delivery service has been provided over the SS7 Signalling Network using GR-1188-CORE (formerly TR-NWT-001188). GR-1188 provides for two approaches to providing the Calling and Called names:
Both approaches can coexist: that is, if there is no GN in the appropriate ISUP message, a query of the CNAM database can be performed. The traditional architecture for providing CNAM database access is to provide SS7 network connectivity between SSPs (local and terminating exchanges) requiring CNAM query capability and a centrally located CNAM/LIDB database. A number of clearing house style services have appeared which provide a single database access to an array of CNAM/LIDB databases operated by various incumbent and competitive service providers. Typicall low-speed narrowband SS7 signalling links have the capacity of providing about 100 queries per second at 1 Erlang. Provisioned at 0.40 Erlang, 80 queries per second can be accomodated by a pair of low-speed narrowband SS7 signalling links. A rather sizeable originating and terminating exchange with 50,000 subscriber lines, each generating an average 4CCS of traffic or approximately 2 call per hour during the busy hour, generates approximately 28 transactions per second for each name. If both originating and terminating names are queried, that is as many as 56 tansactions per second. Calling and called name delivery services do not typically represent a 100% penetration in the switching center, but even given 80% penetration, that would represent about 40 queries per second, or the capacity of an entire low-speed SS7 signalling link per sizeable local switch. Graded SS7 links are expensive. Thousands of dollars per month are required to provide the graded facility for a single SS7 signalling link. Typical incumbent query costs for CNAM queries are 0.5 cents per query. Following the 80-20 rule, 80% of the calls within a local switching exchange are intra-switch calls, and 20% are inter-switch calls. 90-95% of the calls are typically local calls and 5-10% are long distance calls. Of the 80% of the calls that are inter-switch, when both calling and called numbers are queried, an additional $0.01 per call is added for local calls for which the numbers and names belong to subscribers within the same switching center (not to mention subscribers of the same service provider). 80% of the costs associated with CNAM queries (the $0.01 per call and the capacity cost of the graded SS7 signalling links) can be avoided if a local, collocated CNAM database is provided at low cost. $0.32 per second plus 80% of the cost of the graded signalling link can be avoided. A switch with 100% penetration of both calling and called name delivery could avoid hundreds of thousands of dollars in cost per month. 2.2 Application ObjectivesThe objective of the CNAM application is to avoid the graded SS7 link costs and incumbent query costs associated with CNAM database queries.
2.3 Application RequirementsThe platform has the following application requirements: 2.3.1 Phase 1 Requirements
Phase 1 will provide an Application Gateway that can be interconnected with Service Switching Point (SSP) or Signalling Transfer Point (STP) using F-links or A/E-links, and that will provide the capabilities to receive CNAM queries and generate CNAM responses. It will provide memory/disk cacheing and integrated database capbilities. 2.3.2 Phase 2 Requirements
Phase 2 will provide the Application Gateway of Phase 1 integrated with a SIGTRAN TUA, SR-3511 (TA1129+), SR-3389 (GDI), ONC RPC, SOAP, TCAP over SIP or other query capability for accessing locally attached or remote databases using Internet Protocol over local area network, wide area network or the public Internet. 2.3.3 Phase 3 Requirements
Phase 3 will provide a fully integrated and tested Application Gateway. 2.4 Solution ArchitectureAll solutions consist of a narrow-band TDM based SS7 front-end. To meet client solution objectives, however, a range of back-end architectures are possible:
In all of the possible deployment arrangements, except the last two, the OpenSS7 CNAM Platform behaves as a SIGTRAN Signalling Gateway with various functional placement arragements between the front-end and back-end. These configurations are dealt with in the OpenSS7 Signalling Gateway project documentation and will not be discussed further here. In the last two arragements, the OpenSS7 CNAM Platform has an entire SS7 stack on the platform and only communicates with the back-end via a specialized database query mechanism. These two arrangments will be the focus of this document. 2.4.1 CNAM Application GatewayIn the focal solution architecture, illustrated in Figure 2.6, the CNAM Application Gateway platform supports a complete SS7 signalling stack from MTP Level 2 throught TCAP. A CNAM application converts TCAP queries into SIGTRAN TUA, SR-3511 (TA1129+), SR-3389 (GDI), ONC RPC, SOAP, TCAP over SIP or other queries to the back-end CNAM database. Cacheing of queries is possible. Phase 1 consists of verifying the TCAP signalling stack for operation. Phase 2 consists of providing the CNAM Application for the CNAM Application Gateway. Phase 3 consists of integrating the CNAM Application on the Application Gateway with the back-end CNAM database. Figure 2.7. CNAM Application Gateway
The CNAM Application Gateway is build using the OpenSS7 SS7 signalling stack and associated utilities. This project does not require any additional SS7 signalling components: the CNAM portion of the queries will be processed by the CNAM Application in user-space. This CNAM Application Gateway capability consists of a number of components:
The solution architecture reuses where possible OpenSS7 SS7 stack components, drivers and hardware. The solution starts as a hardened chassis non-redundant PC-based PCI platform. A carrier grade redundant and network protection switched CompactPCI NEBS chassis is available, but would likely be excessive for this application. (See ‘CPC 388’.) 2.5 Transaction FlowsThis section provides some illustrative transaction flows.6 2.5.1 Remote DatabaseIllustrated in Figure 2.8, below, is the transaction flow that occurs when a query is directed to the Application Gateway that needs to be serviced by a remote database. A remote database is one that is distant from the Application Gateway. The intended application has the Application Gateway communicating with the remote database over the public Internet using the SIGTRAN TUA, SR-3511 (TA1129+), SR-3389 (GDI), ONC RPC, SOAP, TCAP over SIP or other protocols. Figure 2.8. CNAM Transaction Flow – Remote Database
The transaction flow, illustrated in Figure 2.8, is as follows:
The overall transaction flow must take into consideration the transactional requirements of the Service Switching Point (SSP). Many SSPs are provisioned for a maximum number of open transactions. The provisioned maximum number of open transactions and the peak transaction rate determine the nominal response time. For example, given a local switch with 50,000 lines each generating 4 CCS of traffic, during the busy hour, peak, with an average 200 second call, will result in 2 call attempts per line during the busy hour, for 100,000 calls per hour, or 28 calls per second. With 100% calling and called name display penetration, that ammounts to 28 transactions per second. During a busy period, there could be 60 transactions per second. With a nominal response time of 500 milliseconds, there must be a provisioned maximum number of open TCAP transactions of 30. Nominal response times must also meet switching requirements for delay as the number must be generated between the first and second rings of the terminating line. It is not obvious that peforming a TCP based transaction to a distant CNAM database over the public internet will provide the nominal response times necessary. 2.5.2 Locally Attached DatabaseIllustrated in Figure 2.9, below, is the transaction flow that occurs when a query is directed to the Application Gateway that needs to be serviced by a locally attached database. A locally attached database is one that is maintained in proximity to the Application Gateway. A locally attached database could contain names and numbers for subscribers of the service provider with which the Application Gateway is collocated. The intended application has the Application Gateway communicating with the remote database over a LAN using the SIGTRAN TUA, SR-3511 (TA1129+), SR-3389 (GDI), ONC RPC, SOAP, TCAP over SIP or other protocols. Figure 2.9. CNAM Transaction Flow – Locally Attached Database
In general, with the exception of query delays concerns, the transaction flow for the locally attached database and the transaction flows for the remotely attached database are identical from the perspective of the Application Gateway, just to different databases. The transaction flow, illustrated in Figure 2.9, is as follows:
The overall transaction flow must still take into consideration the transactional requirements of the Service Switching Point (SSP). Many SSPs place limits on nominal transaction delays as well as the number of open transactions. In particular, protocols that use TCP as a transport can have significant transaction delays introduced due to marginal amounts of noise or congestion, even for a locally attached database. It is recommdended that database protocols utilizing only UDP or SCTP transports be utilized. UDP trades missing one trasaction for delaying all transactions on a given association. SCTP provides the ability to decouple trasnactions into indepdendent streams while retaining the ability to detect packet loss and perform retransmission to avoid missing deadlines. If SCTP were to be used, the most straightforward approach would be that of using the TCAP User Adatpation Layer (TUA) from the SIGTRAN protocol suite over SCTP as illustrated in Figure 2.5. In that configuration, TUA would provide the decoupling of transactions into independent SCTP streams for maximum reliabilty with a minimum of missed deadlines. TUA in this arrangements also directly accomodates Application Server in the active-standby, load sharing and broadcast redundancy arrangements. SCTP makes more sense for a locally attached database than a remotely attached database. Locally attached databases can be directly connected on LAN segments that do not connect with the public Internet and do not, therefore, need firewalling. For remotely attached databases, particularly when they are attached over the public Internet, require sophisticated firewalls (e.g. Session Border Controllers), many of which do not fully support SCTP. Therefore, UDP makes more sense for a remotely attached database. One such protocol that runs over UDP is the TA1129+ or SR-3511. These consist of placing the TCAP portion of a CNAM TCAP transaction into a UDP packet directly and passing it to the database. An application at the database translates the TCAP trasnaction to an SQL query and processes the SQL reponse into a TCAP Response which is then placed directly into a UDP packet and returned to the Application Gateway. Other methods for placing TCAP messages in UDP packets are the TCAP over SIP method, where TCAP is converted to an XML representation of the CNAM query. The XML representation of the TCAP message is then used as the body of a SIP INVITE or INFO message. The SIP INVITE or INFO message is then sent in a UDP packet to the database. The current likely evisions using SOAP for converting the TCAP CNAM Query into a SOAP query and then processing the SOAP response into a TCAP CNAM Response. The problem with SOAP is that the typical application transports (i.e. HTTP) use TCP as an underlying transport. TCP is unsuitable for this application due to the need to place limits on nominal response times and the number of open transactions to meet Service Switching Point (SSP) requirements. 2.5.3 Integrated DatabaseIllustrated in Figure 2.10, below, is the transaction flow that occurs when a query is directed to the Application Gateway that needs to be serviced by a local database. A local database is one that is maintained in proximity or conincident to the Application Gateway. A local databse could contain names and numbers from subscribers of the service provider with which the Application Gateway is collocated. The intended application has the Application Gateway communicating with an integrated databse using application programming interfaces. Figure 2.10. CNAM Transaction Flow – Integrated Database
In general, with the exception that the database query is local rather than networked, the transaction flow for the integrated database and the transaction flows for the locally attached database are identical from the perspective of the Appplication Gateway, just to an integrated rather than networked database. The transaction flow, illustrated in Figure 2.10, is as follows:
The overall transaction flow must still take into consideration the transactional requirements of the Service Switching Point (SSP). Many SSPs place limits on nominal transaction delays as well as the number of open transactions. An intergrated database could also be used in the same fashion as a Disk Cache (see Memory/Disk Cache). In such a scenrio, the integrated database is populated by query misses and aging or purging of entries rather than a service order interface that would provision specific names against specific numbers. When a query is performed against the intergrated database, and the result is unkonwn for the number provided, a locally attached or remote database can be queried as well and any result obtained from those databases placed in to the intergrated database. While some bilateral agreeemnts preclude cacheing of CNAM query results, it would be rare indeed to preclude a service provider from maintaining a databse of their own subscriber’s names and numbers, and from querying that database. Cacheing approaches to databases where the information changes very infrequently, yet the information is queried often, are quite viable. A classic example is the cacheing of HLR information at the VLR. While cacheing of LIDB entries can cause significant exposure, cacheing of CNAM results for names and numbers belonging to subscribers of the collocated service provider is effective because the service provider can purge entries from the cahce as they change. 2.5.4 Memory/Disk CacheIllustrated in Figure 2.11, below, is the transaction flow that occurs when a query is directed to the Application Gateway that may be serviced from memory or disk cache. A memory or disk cache is a cache that maintains a limited (or unlimited) database of the results from previous queries. The cache entries can age and be deleted from the cache by age, or can be explicitly flushed. The memory or disk cache can be disabled for some numbers (e.g. numbers not belonging to the querying service provider), or disable for all numbers (i.e. in cases where cacheing is not permitted by bilateral agreements). Figure 2.11. CNAM Transaction Flow – Memory/Disk Cache
In general, with the exception that the query is directed toward a cache rather than an integrated database, the transaction flow for the cache and the transaction flows for the integrated database are identical from the perspective of the Application Gateway, just to a memory or disk cache rahter than an integrated or networked database. The transaction flow, illustrated in Figure 2.11, is as follows:
The overall transaction flow must still take into consideration the transactional requirements of the Service Switching Point (SSP). Many SSPs place limits on nominal transaction delays as well as the number of open transactions. 3 Network ArchitectureFigure 3.1 illustrates the network configuration for the OpenSS7 CNAM Query Platform in a typical deployment scenario. The CNAM query platform (labelled SG in the diagram) is positioned and attached to switching equipment with intra-office SS7 F-links and communicates with the CNAM database proper using an IP network. Figure 3.1. Network Architecture
The device is attached to SSPs (switches) via V401P-SS7 or other OpenSS7 SS7 link cards, 7 terminating SS7 A-links or F-links, either 24 channels per span (T1), 56kbps or 64kbps ANSI T1.111.3 links, or 31 channels per span (E1), 64kbps Q.703 links, or full span ANSI T1.111.3 Annex B 1.544Mbps or Q.703 Annex B 2.048Mbps high-speed links, or via a signalling gateway device terminating SS7 Level 2, 3 or 4 and transporting M3UA back-haul signalling to the load device over SCTP. On the IP network side of the device, the platform is connected on an internal LAN with multiple Ethernet segments and IP subnetworks. CNAM requests originating on Service Switching Point (SSP) within the SS7 network are accepted and responded to by the CNAM databases. Queries are converted from traditional TDM SS7 to SIGTRAN over the IP network via the Signalling Gateway. From the viewpoint of the SS7 or SIGTRAN network, the platform acts as a Signalling Gateway for the purposes of passing CNAM queries and responses between the CNAM database and the locally attached SSPs. Figure 3.2. M2PA Network Architecture
Figure 3.2 illustrates functional separation between the CNAM signalling gateeway and database at the lowest functional level in the SS7 stack, MTP Level 1. This arrangement has the following characteristics:
Figure 3.3. M2UA Network Architecture
Figure 3.3 illustrates functional separation between the CNAM signalling gateway and database at the lowest functional level in the SS7 stack, MTP Level 2. This arrangement has the following characteristics:
Figure 3.4. M3UA Network Architecture
Figure 3.4 illustrates functional separation between the CNAM signalling gateway and database at MTP Level 3. This arrangement has the following characteristics:
Figure 3.5. SUA Network Architecture
Figure 3.5 illustrates functional separation between the CNAM signalling gateway and database at SCCP. This arrangement has the following characteristics: Figure 3.6. TUA Network Architecture
Figure 3.6 illustrates functional separation between the CNAM signalling gateway and database at TCAP. This arrangement has the following characteristics: Figure 3.7. SOAP Network Architecture
Figure 3.7 illustrates functional separation between the CNAM signalling gateway and database at SOAP. This arrangement has the following characteristics: 3.1 SG Reference InterfacesFigure 3.8 illustrates the HLR Reference Interfaces from 3GPP TS 24.060 Release 4.9.0 that are supported by the High Performance GSM/UMTS GPRS HLR. Figure 3.8. SG Reference Interfaces
3.1.1 A InterfaceThe A Interface, illustrated in Figure 3.9, below, provides the interface between the Signalling Gateway (SG) and Application Gateway (AG) elements, when these elements are not integrated together on the same platform, and consists of draft-bidulock-sigtran-tua-04.txt TCAP User Adataptation Layer (TUA) over RFC 2960/3309 SCTP over RFC 791 IP over Ethernet. Figure 3.9. A Interface
The A Interface is responsible for trasnferring CNAM TCAP queries and responses between the front-end Signalling Gateway and the back-end Application Gateway. The interface uses Stream Control Transmission Protocol (SCTP) for reliablity yet low latency transactions between the SG and AG.
3.1.2 B InterfaceThe B Interface, illustrated in Figure 3.10, below, provides the interface between the Signalling Gateway (SG) and the Service Switching Point (SSP) and consists of GR-1188-CORE Issue 2 CNAM application over ANSI T1.114/2000 TCAP over ANSI T1.112/2000 SCCP over ANSI T1.111 MTP using low- and high-speed links. Figure 3.10. B Interface
The B Interface is responsible for transferring CNAM TCAP queries and responses between the Signalling Gateway (SG) and the Service Switching Point (SSP) using directly connected SS7 links.
3.1.3 C InterfaceThe C Interface, illustrated in Figure 3.11, below, provides the interface between the Calling Name (CNAM) Database (DB) and the Application Gateway (AG) and consists of GR-1188-CORE Issue 2 CNAM application over W3C REC-SOAP12 Simple Object Access Protocol (SOAP) over HTTP 1.1/RFC 2616, over RFC 793 TCP, over RFC 791 IP over Ethernet. Figure 3.11. C Interface
The C Interface is responsible for transferring the CNAM query and response particulars between the Application Gateway (AG) and back-end CNAM Database (DB).
3.1.4 D InterfaceThe D Interface, illustrated in Figure 3.12, below, provides the interface between the Application Gateway (AG) and Signalling Gateway (SG) and the Operational Support System (OSS) and consists of ISO/IEC 9595-2/9596-2 CMISE/CMIP over RFC 1189 CMOT, over RFC 793 TCP, over RFC 791 IP over Ethernet. Figure 3.12. D Interface
The D Interface is responsible for transferring management information between the AG/SG platforms and a back-end Operational Support System.
4 System ArchitectureThis section details the solution system architecture. The solution system architecture consists of the computing platform and its placement within the locale installation environment. The solution system has the following requirements:
5 Platform ArchitectureThis section details the platform architecture. The solution platform architecture consists of the computing platform and associated hardware, interfaces and peripherals. Figure 13 illustrates the solution platform rack configuration. Figure 13. Rack Mount Components
The solution platform consists of the following:
5.1 Platform CapacityThe PC chassis is equipped with the following:8
6 Protocol ArchitectureFigure 14 illustrates the protocol configuration for the OpenSS7 CNAM Query Platform system. The protocol stack uses the following OpenSS7 stack components: Figure 14. Protocol Architecture
6.1 Protocol ComponentsThe following Protocol Components are provided as part the OpenSS7 SS7 and SIGTRAN stacks: 6.1.1 In-Memory GR-1188-CORE Issue 2 CNAM ApplicationThe High Performance HLR 3GPP TS 23.060 Rel 4. GPRS Application is responsible for providing hybrid rule-based partitioning and HLR High Performance database information to the MAP 3GPP TS 29.002 HLR driver. This is a user-space application that provides user-interface for specification of database rules and records. The High Performance GSM/UMTS GPRS HLR Application is made up from a User-space application combined with the OpenSS7 SS7 and SIGTRAN stacks. The High Performance GSM/UMTS GPRS HLR application communicates only with the top of the SS7 stack, that is, the MAP and SCCP-GTT modules. The High Performance GSM/UMTS GPRS HLR Application is responsible for providing data configuration instructions to the MAP and GTT modules. MAP and GTT modules accept both rule based and indexed record entries for responding to transactions and translations; any transaction or translation which neither matches a rule nor matches an indexed entry results in a transaction or translation indication to the attached High Performance GSM/UMTS GPRS HLR Application. This protocol component is developed as part of Phase 1 of this project. 6.1.2 GR-1188-CORE Issue 2 Calling Name Delivery (CNAM) ApplicationThe GR-1188-CORE Issue 2 Calling Name Delivery (CNAM) Application is responsible for accepting CNAM queries from the front-end attached SSPs and turning those requests into database queries to the CNAM database and propagating the response. This is a straightforward application that converts between SIGTRAN TUA, SR-3511 (TA1129+), SR-3389 (GDI), ONC RPC, SOAP, TCAP over SIP or other queries and responses and CNAM TCAP queries and responses using the published Transaction Component Interface (TCI). The GR-1188-CORE Issue 2 Calling Name Delivery (CNAM) module is responsible for responding to SSP transactions originating from the TCAP module beneath and is responsible for generating outgoing SSP responses to the TCAP module beneath. To perform its function, the CNAM platformindexes all information based on the telephone number, including dynamic (state) and provisioned (subscriber) information. For performance in both a testing and production environment, the module provides three levels of database partitioning and caching:
This protocol component is developed as part of Phase 1 of this project. 6.1.3 SS7 Stack ManagerThe SS7 stack manager is responsible for configuration of the SS7 stack, maintenance, statistics collection, operational measurements, management events and controls, log and alarm generation. This is daemon process that is typically customized to meet a specific application. This is an existing component of the OpenSS7 stack that is extended to include the HLR components developed above and the CNAM component developed below. 6.1.4 GR-1188-CORE Issue 2 Calling Name Delivery (CNAM) DriverThe GR-1188-CORE Issue 2 Calling Name Delivery (CNAM) Driver is responsible for accepting CNAM queries from the TCAP and TUA streams linked below as well as performing any necessary Global Title Translations (GTT) for the SCCP GTT control streams linked below. The driver contains an in-kernel-memory CNAM database. The in-memory database is hybrid rule-based an Digit indexed record-based. The CNAM driver supports GR-1188-CORE Issue 2. This protocol component is developed as part of Phase 1 of this project. 6.1.5 Transaction Capabilities Application Part (TCAP) DriverThe transaction capabilities application part driver performs the essential transaction functions of the SS7 signalling stack. SCCP or SUA streams are linked under the driver and the driver provides the functions of a TCAP SSP or SCP, MSC or HLR, SMSC and other TCAP nodes. Transaction Capabilities Application Part streams bound to INAP, CNAM or LNP TCAP-SAPs are accessed by the transaction application using the Transaction Component Interface (TCI). The TCAP driver supports all CCITT/ITU-T versions (Blue Book forward), ETSI and ANSI versions (1992 forward), including operation classes 1 through 5. The TCAP driver provides a specialized TR and TC interface to its users and accepts an X/Open NPI Revision 2.0 interface from beneath. In addition, a TPI Revision 2.0 user interface supporting an X/Open XNS 5.2 mOSI XTI library interface is provided. The TCAP driver is a STREAMS driver that runs in the Linux kernel for maximum performance. The primary scale limiting characteristic of the TCAP driver is the number of simultaneous open transactions. Each open transaction requires a number of timers, state information and dynamic transaction information such as addressing. Transaction Identifier indexed hash tables must be appropriately sized and the mean and maximum simultaneous open transactions should be known for proper sizing. The Transaction Capabilities Application Part (TCAP) STREAMS module is responsible for providing TCAP services on top of a Signalling Connection Control Part (SCCP) or SCCP-User Adaptation Layer (SUA) stream. In addition, it is possible to use an ISO/OSI Network Service Provider to provide the network services to TCAP. The OpenSS7 TCAP component has message encoding and decoding for ITU-T/ETSI Application Context TCAP and ANSI Private TCAP. Interfaces provided to TCAP users include an XTI/mOSI capable TPI Version 2.0 interface, a Transaction Interface (TRI) as described in ITU-T Q.791, and a Component Interface (TCI) as also described in ITU-T Q.791. The ITU-T Q.791 TR and TC interfaces are support Java JTCAP. Of these interfaces, the Transaction Interface (TRI) and Component Interface (TCI) are most efficient. This is because it is not necessary to open a new stream for each transaction as is the case with the TPI interface and the XTI/mOSI. The OpenSS7 TCAP module supports all Operations Classes. Figure 15. Transaction Capabilities Application Part (TCAP) Modules
A SIGTRAN TCAP-User Adaptation Layer (TUA) or OpenSS7 STREAMS over SCTP multiplexing driver can be used between the TCAP and the TCAP-User to export the TCAP/TCAP-User interface between a provider and user host. Signalling Connection Control Part (SCCP) streams are linked beneath the TCAP module to provide SCCP services to TCAP. Alternately, a SIGTRAN SCCP-User Adaptation Layer (SUA) or OpenSS7 STREAMS over SCTP stream may be linked. The OpenSS7 TCAP module contains all the necessary state machines, timers, transaction error handling and component error handling as required by the ITU-T, ETSI and ANSI specifications. This is an existing OpenSS7 SS7 stack component; for documentation, see: tcap(4). Phase 1 activities for TCAP include integration testing with the CNAM components. 6.1.6 Signalling Connection Control Part (SCCP) DriverThe signalling connection control part driver performs the essential transport functions of the SS7 signalling stack. Message Transfer Part or MTP3 User Adaptation Layer streams are linked under the driver and the driver provides the functions of a SCCP endpoint or relay with full global title translations. Signalling Connection Control Part streams bound to TCAP SCCP-SAPs are linked under the TCAP driver to form a complete SS7 stack in support of call transactions. Figure 16. Signalling Connection Control Part (SCCP) Module
The SCCP driver supports all CCITT/ITU-T versions (Blue Book forward), ETSI and ANSI versions (1992 forward), including both connectionless and connection-oriented protocol classes 0 through 3. The SCCP driver provides an extended NPI Revision 2.0 interface to its users and accepts an NPI Version 2.0 (Connectionless) MTP interface from beneath or a specialized OpenSS7 MTPI interface. In addition, a TPI Revision 2.0 user interface supporting an X/Open XNS 5.2 XTI library interface is provided. The SCCP driver also provide GTT streams for servicing Global Title Translations requests. These streams can be used by a user-space program for servicing GTT requests from a local or remote database, or can have specialized STREAMS modules pushed to perform rule-based GTT in the operating system kernel. The SCCP driver is a STREAMS driver that runs in the Linux kernel for maximum performance. The Signalling Connection Control Part (SCCP) STREAMS module is responsible for providing SCCP services on top of a Message Transfer Part (MTP) Level 3 (MTP3) or MTP3-User Adaptation Layer (M3UA) stream. In addition, it is possible to use an ISO/OSI connectionless Network Service Provider to provide the network services to SCCP. The OpenSS7 SCCP component has message encoding and decoding for ITU-T/ETSI and ANSI SCCP. Interfaces provided to SCCP users include an XTI/OSI capable TPI Revision 2.0 interface, an NPI Revision 2.0 interface, and an SCCP-specific interface. The OpenSS7 SCCP module supports all Protocol Classes. This is an existing OpenSS7 SS7 stack component; for documentation, see: sccp(4). Phase 1 activities for SCCP include integration testing with the CNAM components. 6.1.6.1 Global Title Translations (GTT)The Signalling Connection Control Part (SCCP) Global Title Translations (GTT) module is responsible for responding to SCCP-GTT translations originating from the SCCP module beneath and is responsible for generating outgoing SCCP-GTT translations to the SCCP module beneath. To perform its function, the SCCP-GTT indexes all information based on the SCCP Address, including dynamic (state) and provisioned (result) information. For performance in both a testing and production environment, the module provides three levels of database partitioning and caching:
This is an existing OpenSS7 SS7 stack component; for documentation, see: sccp(4). Phase 1 activities for SCCP include integration testing with the CNAM components. 6.1.7 Message Transfer Part (MTP) DriverThe message transfer part driver performs the essential network functions of the SS7 signalling stack. M2UA streams (see below) may be linked under the driver and the driver provides the functions of a Signalling End Point (SEP) or Signalling Transfer Point (STP). 9 Figure 17. Message Transfer Part (MTP) Level 3 (MTP3) Module
The MTP driver supports all CCITT/ITU-T versions (Blue Book forward), ETSI and ANSI versions (1992 forward), including full transfer function. The MTP driver provides a specialized MTP interface to its users, in addition to an NPI Revision 2.0 connectionless interface. A TPI Revision 2.0 (connectionless) user interface support X/Open XNS 5.2 XTI library functions is also provided. The MTP driver is a STREAMS driver that runs in the Linux kernel for maximum performance. The Message Transfer Part (MTP) Level 3 (MTP3) module is responsible for providing MTP services to its users. The Message Transfer Part (MTP) Level 2 (MTP2) module is responsible for providing MTP services to its users. Figure 18. Message Transfer Part (MTP) Level 2 (MTP2) Module
These are an existing OpenSS7 SS7 stack components; for documentation, see: mtp(4). Phase 1 activities for MTP3 and MTP2 include integration testing with the CNAM components. 6.1.8 MTP Level 3 User Adaptation Layer (M3UA) DriverThe M3UA driver provides the HLR with the ability to act as an M3UA AS (Application Server) in conjunction with an M3UA SG (Signalling Gateway). In this project, the SG function is performed by existing lab equipment. The M3UA driver accepts the transport of the MTP to MTP-User interface from the SG to the HLR. The M3UA driver links SCTP driver streams underneath it to provide the transport services for exporting the MTP-User interface. The M3UA driver provides the same interface to its users as the OpenSS7 MTP. The M3UA driver is a STREAMS driver that runs in the Linux kernel for maximum performance. This is an existing OpenSS7 SIGTRAN stack component; for documentation, see: m3ua(4). Phase 1 activities for M3UA include integration testing with the CNAM components. 6.1.9 Signalling Link (SL) ModuleThe signalling link module performs HDLC and SS7 Message Transfer Part Level 2 (Link) functions on a raw communications channel, such as that provided by the X400P-SS7 driver and the E400P-SS7 card. This module converts between the channel media stream (raw octet stream) and an SS7 signalling link signalling stream. These streams comprise SS7 signalling links and are linked under the MTP driver. The SL module supports CCITT/ITU-T versions (Blue Book forward), ETSI and ANSI versions (1992 forward), including Q.703 and Q.703 Annex B (HSL) operation. TTC JQ.703 (1994) is also supported. The SL module provides a specialized SL interface to its users, in addition to an NCR Comten CDI Revision 2.0 Style 2 connectionless interface. The SL module is a STREAMS module that runs in the Linux kernel for maximum performance. The Signalling Link (SL) module is responsible for providing SL services to its users. Figure 29. Signalling Link (SL) Module
This is an existing OpenSS7 SS7 stack component; for documentation, see: sl(4). Phase 1 activities for MTP2 include integration testing with the CNAM components. 6.1.10 Signalling Data Terminal (SDT) ModuleThe signalling data terminal module performs HDLC and lower level SS7 Message Transfer Part Level 2 (Link) functions including DAEDR, DAEDT, AERM, SUERM and SU Compression/Repetition on a raw communications channel or span, such as that provided by OpenSS7 Channel Drivers. This module converts between the raw channel media stream (raw octet stream) and an SS7 signalling data terminal stream. These streams comprise SS7 signalling data terminals and are pushed beneath the SL module. The SDT module supports CCITT/ITU-T version (Blue Book forward), ETSI and ANSI versions (1992 forward), including Q.703 and Q.703 Annex B (HSL) operation. TTC JQ.703 (1994) is also supported. The SDT module provides a specialized SDT interface to its users, in addition to an NCR Comten CDI Revision 2.0 Style 2 connectionless interface. The Signalling Data Terminal (SDT) module is responsible for providing SDT services to its users. Figure 20. Signalling Data Terminal (SDT) Module
This is an existing OpenSS7 SS7 stack component; for documentation, see: sdt(4). Phase 1 activities for MTP2 include integration testing with the CNAM components. 6.1.11 Stream Control Transmission Protocol (SCTP) DriverOpenSS7 has two implementations (STREAMS and Linux Sockets) that provide support for this new transport protocol and provide transport for SIGTRAN and other protocols. The STREAMS SCTP implementation provides an NPI Revision 2.0 and TPI Revision 2.0 interface to its users. Also supported is an X/Open XNS 5.2 XTI library. The Linux Native SCTP implementation provides a Sockets interface. This is an existing OpenSS7 SIGTRAN stack component; for documentation, see: sctp(4). Phase 1 activities for SCTP include integration testing with the CNAM components. 7 Software ArchitectureThis chapter details the software configuration of OpenSS7 solutions. Open SS7 stack software is based on the STREAMS facility running on the Linux Operating System. This provides for use of the Linux Operating System while maintaining portability and consistency with major UNIX operating systems that provide an SVR 4.2 ES/MP STREAMS facility. 7.1 Linux Operating SystemThe OpenSS7 STREAMS releases and stacks currently support the 2.4, 2.6 and 3.x Linux Kernel. A Linux kernel version greater than or equal to 2.4.18 is recommended for 2.4 kernels. The Linux 2.5 series kernels are not supported. A Linux kernel version greater than or equal to 2.6.9 is recommended for 2.6 kernels. Any kernel beginning with 3.0 in the 3.x kernel series is acceptable. Linux 2.4, 2.6 and 3.x kernels released by popular distributions are supported. These include kernel.org releases, RedHat (7.2, 9, EL3, AS/EL4, EL5, EL6), WhiteBox (EL3, EL4), Fedora Core (FC1-FC15), Debian (Woody-Wheezy), Ubuntu (6.10-11.04), SuSE (8.2-12.4 OSS, 9.0-12.1 SLES), CentOS(4, 5 and 6), Lineox (4 and 5), Scientific (5 and 6), PUIAS (5 and 6), Oracle (5 and 6). Currently our preferred distribution is CentOS 5 with all updates applied. Although OpenSS7 STREAMS SS7 and SIGTRAN stacks are tested primarily on ix86 hardware, the stacks compile and install on PPC (MPC 8260, Freescale 440), HPPA, and other processor architectures supported by the Linux 2.4, 2.6 and 3.x kernels. For the current project, RedHat AS/EL5 or CentOS 5 is recommended. 7.2 STREAMS FacilityOpenSS7 STREAMS SS7 and SIGTRAN stacks utilize an SVR 4.2 ES/MP STREAMS facility. 7.3 OpenSS7 SS7 and SIGTRAN StackThe OpenSS7 SS7 and SIGTRAN stacks are implemented using the STREAMS facility. Protocol modules within the stack are implemented as STREAMS modules, device drivers, multiplexing drivers and pseudo-device drivers. The STREAMS facility has the ability to stack modules and multiplexing drivers above a real or pseudo-device driver using STREAMS I_PUSH and I_LINK facilities. Since STREAMS modules (and drivers) run within the context of the Operating System Kernel using message-based scheduling, greatly increased performance is experienced over equivalent user-space applications. STREAMS modules and drivers communicate by passing STREAMS message blocks upstream and downstream with bidirectional queueing and 256 levels of priority. In addition, STREAMS provides memory management, timer, locking, synchronization, flow control and other facilities commonly used by protocol modules. Figure 21. SS7 to ISO/OSI Mapping
Each OpenSS7 protocol module provides standardized X/Open ISO/OSI interfaces as well as more SS7 specialized interfaces. Many of the OpenSS7 protocols modules provide TPI Revision 2.0 interfaces with support for the OpenSS7 XTI/TLI Library. Figure 22. STREAMS SS7/SIGTRAN Stack Architecture
Figure 22 illustrates the organization of STREAMS modules, multiplexing drivers, pseudo-device drivers and real device drivers in the OpenSS7 SS7 stack. At each interface, the equivalent SIGTRAN User Adaptation Layer (UA) can be used. So, for example, between MTP Level 3 and its Users, the M3UA protocol can be employed. Each UA provides the same lower layer interface and upper layer interface. So, M3UA provides an MTP/MTP-User interface at its lower layer interface as well as at its upper layer interface. 8 Hardware ArchitectureFigure 23 illustrates the hardware configuration for the OpenSS7 CNAM Query Platform. Figure 23. Platform Architecture
The OpenSS7 CNAM Query Platform consists of a medium end ix86 single processor PC in a hardened 19" rack mount chassis, loaded with RHAS4 Linux running a 2.6.20 kernel, streams-0.9.2.3, the OpenSS7 stack (strss7-0.9a.8) software and the CNAM Query Platform application. SS7 or SIGTRAN signalling links are terminated either on E400P-SS7 cards (or other OpenSS7 compatible E1 cards) directly attached to the test platform, or via Signalling Gateway devices back-hauling M2UA, M3UA or SUA to the test platform over an internal LAN connection. OAM&P of the prototype platform is performed over an internal LAN connection. Hardware requirements are as follows:
For a redundant configuration (two hosts serving the same gateway), twice the hardware is required. 8.1 Interface DevicesThe interface device hardware cards listed below are supported for the OpenSS7 Platform. All of the interface device hardware listed here has good price-performance, however, varying levels of performance (and therefore price) is available. These cards are available either directly from the card manufacturer or are also resold by OpenSS7 Corporation. For the OpenSS7 CNAM Query Platform application, the V401P cards are recommended. The following interface device hardware is available for the OpenSS7 Platform: 8.1.1 T400P/E400P-SS7The T400P-SS7 and E400P-SS7 cards are 4-span T1 or E1 cards manufactured by Varion. These cards were previously manufactured by Digium. Figure 24 shows a picture of a T400P-SS7 card. Figure 24. T400P/E400P-SS7
The T400P-SS7 and E400P-SS7 cards have the lowest level of signalling performance due to the lack of on-board HDLC functions. Transfers to the host processor over the PCI bus use PCI I/O ports and memory mapping. DriverThese cards are supported by the X400-SS7 driver. The function of the T/E400P-SS7 Channel driver is to provide for the termination of 2.048Mbps, 1.544Mbps, 64kbps and 56kbps digital paths. This driver provides direct access to the channelized or unchannelized T1 or E1 digital paths to OpenSS7 media and signalling protocol modules as well as providing T1 or E1 management, framing, coding, alarms, and synchronization. FeaturesFollowing are the features of the T400P-SS7 and E400P-SS7 cards:
AdvantagesFollowing are the advantages of the T400P-SS7 and E400P-SS7 cards:
DisadvantagesFollowing are the disadvantages of the T400P-SS7 and E400P-SS7 cards:
Ultimately, the performance limiting factor of the T400P-SS7 and E400P-SS7 cards is the bandwidth of the PCI bus and the ability of the processor to perform Soft-HDLC and TDM switching in software. A 350MHz processor is capable of processing the bandwidth of an entire E400P-SS7 card (124 signalling links) with a combined link throughput of 8.192 Mbps. For the High Performance GSM/UMTS GPRS HLR, this performance is more than adequate. A medium grade 2GHz PC should be capable of handling 2 cards (248 SS7 links) with adequate excess capacity available for background operations. These cards are very cost-effective and can provide 64kbps SS7 links at average incremental interface cost of approximately $8.00 USD per signalling link. 8.1.2 TE405/410-SS7The TE405/410-SS7 cards are 4-span E1/T1 cards manufactured by Digium. These cards are a higher performance replacement for the T400P-SS7 and E400P-SS7 cards. Figure 25 shows a picture of a T405P-SS7 card. Figure 25. TE405/410-SS7
The TE405-SS7 and TE410-SS7 cards have a low level of signalling performance due to the lack of on-board HDLC functions. However, transfers to the host process over the PCI bus use bus-mastering PCI burst DMA transfers, unlike their T400P and E400P predecessors. DriverThese cards are supported by the TE400-SS7 driver. The function of the TE405/410-SS7 Channel driver is to provide for the termination of 2.048Mbps, 1.544Mbps, 64kbps and 56kbps digital paths. This driver provides direct access to the channelized or unchannelized T1 or E1 digital paths to OpenSS7 media and signalling protocol modules as well as providing T1 or E1 management, framing, coding, alarms, and synchronization. FeaturesFollowing are the features of the TE405-SS7 and TE410-SS7 cards:
AdvantagesFollowing are the advantages of the TE405-SS7 and TE410-SS7 cards:
DisadvantagesFollowing are the disadvantages of the TE405-SS7 and TE410-SS7 cards:
As with their predecessors, the performance limiting factor of the TE405-SS7 and TE410-SS7 cards is the bandwidth of the PCI bus and the ability of the processor to perform Soft-HDLC and TDM switching in software. A 350MHz processor is capable of processing the bandwidth of an entire TE405-SS7 card (124 signalling link) with a combined linke throughput of 8.192 Mbps. For the High Performance GSM/UMTS HLR, this performance is more than adequate. A medium grade 2GHz PC should be capable of handling 2 cards (248 SS7 links) with adequate excess capacity available for background operations. These cards are cost-effective and can provide 64kbps SS7 links at average incremental interface cost of approximately $12.00 USD per signalling link. 8.1.3 A101/102/104cThe A101/102/104c cards are 1-, 2- and 4-span E1, T1 or J1 cards manufactured by Sangoma. Figure 26 shows a picture of an A101c card. Figure 26. A101/102/104c
The A10Xc cards have an increased level of signalling performance due to availability of on-board HDLC processing. Transfers to the host are performed using bus-mastering PCI DMA burst transfers for lower host processor overhead. These cards do not support direct on-board TDM switching; neither do they have integrated Ethernet. DriverThese cards are supported by the A100-SS7 driver. The function of the A100-SS7 Channel driver is to provide for the termination of 2.048Mbps, 1.544Mbps, 64kbps and 56kbps digital paths. This driver provides direct access to the channelized or unchannelized T1 or E1 digital paths to OpenSS7 media and signalling protocol modules as well as providing T1 or E1 management, framing, coding, alarms, and synchronization. FeaturesFollowing are the features of the A101c, A102c and A104c cards:
AdvantagesFollowing are the advantages of the A101, A102 and A104 cards:
DisadvantagesFollowing are the disadvantages of the A101, A102 and A104 cards:
The performance limiting factor of the A101c, A102c and A104c cards is the bandwidth of the PCI bus and the ability of the processor to perform TDM switching is software. For the High Performance GMS/UMTS GPRS HLR, this performance is more than adequate, particularly as TDM switching is not a requirement for this pure signalling application. Although these cards lack integrated Ethernet support, for the non-redundant HLR application, and where interworking between SIGTRAN and SS7 is not required, this is not a limitation. These cards have excellent price-performance and can provide 64kbps SS7 links at average incremental interface cost of approximately $12.00 USD per signalling link. 8.1.4 Other Interface CardsAdditional interface cards could be implemented in other phases of the project. For additional information, see Optional Hardware Support. 9 LogisticsFollowing are estimates of hardware, software, consulting, schedule and costs: 9.1 HardwarePrototype hardware sufficient for trial of all projects consists of the following:
9.1.1 Sizing ConsiderationsSizing provided here is adequate to meet the scale requirements under System Architecture. For detail on sizing, see Platform Sizing. 9.2 SoftwarePrototype software sufficient for trial of all projects consists of the following:
9.3 ConsultingConsulting consists of the following:
9.4 ScheduleBelow is an estimated schedule. The estimate considers that OpenSS7 staff would be performing all development work and that Gamma client or Sponsor would participate in external gate reviews and acceptance testing in a timely manner. Table S-0 lists the initial (Gate 0) schedule estimates. Table S-0. Initial (Gate 0) Project Estimate
Table S-1 through Table S-8 list the current (Gate 1) schedule estimates. These are planning estimates only and no commitment is provided to deliver to any schedule until Gate 2 is complete. Table S-1. HLR Project Schedule
9.4.1 Gate 0 — ConceptGate 0 is passed when the initial concept has been elucidated and work is begun on a High-Level Design. This is an internal OpenSS7 gate. Table S-2 below lists the estimated schedule leading into Gate 0. Table S-2. HLR Project Schedule — Gate 0
Gate 0 was completed for the project on September 24, 2004 with the creation of the Initial design document and internal OpenSS7 staff decision to move forward with a High-Level Design. 9.4.2 Gate 1 — High-Level DesignGate 1 is passed when the high-level design has been reviewed to the satisfaction of the consumers of the project. This is an external review gate. OpenSS7 internally passes this gate once the High-Level Design has been published and work is begun on a detailed design. 10 Table S-3 below lists the estimated schedule leading into Gate 1. Table S-3. HLR Project Schedule — Gate 1
This document completes the Gate 1 requirements October 20, 2004. We are currently awaiting external review of this document and proceeding on Detailed Design documentation. 9.4.3 Gate 2 — Detailed DesignGate 2 is passed when the detailed design has been reviewed to the satisfaction of the consumers of the project and the developers on the project. This is an external as well as an internal review gate. OpenSS7 passes this gate once the Detailed Design has been published and work base begin on development and implementation of the design. 11 Passing this gate moves from the design stage to the development stage of the project. Table S-4 below lists the estimated schedule leading into Gate 2. Table S-4. HLR Project Schedule — Gate 2
9.4.4 Gate 3 — Development and ImplementationGate 3 is passed when the software and systems development and implementation to the detailed design is complete and testing has begun. This is an internal review gate. OpenSS7 internally passes this gate when software is code complete and hardware has been installed for testing. Table S-5 below lists the estimated schedule leading into Gate 3. Table S-5. HLR Project Schedule — Gate 3
9.4.5 Gate 4 — System TestGate 4 is passed once the product implementation meets all internal ad hoc and formal conformance test suites and internal testing is complete. This is an internal review gate. OpenSS7 passes this gate internally once conformance testing is complete. Passing this gate moves from the development stage to the support stage of the project. Table S-6 below lists the estimated schedule leading into Gate 4. Table S-6. HLR Project Schedule — Gate 4
9.4.6 Gate 5 — Acceptance TestingGate 5 is passed once the product implementation has passed external Gamma client acceptance testing. This is an external review gate. OpenSS7 passes this gate internally once participation in external acceptance testing is complete. Table S-7 below lists the estimated schedule leading into Gate 5. Table S-7. HLR Project Schedule — Gate 5
9.4.7 Gate 6 — Support CompleteGate 6 is passed once all support obligations for the product implementation have been discharged. This is an internal review gate. OpenSS7 passes this gate once support agreements have terminated. Table S-8 below lists the estimated schedule leading into Gate 6. Table S-8. HLR Project Schedule — Gate 6
9.5 CostTable T-2 below provides a cost estimate. The estimate is in US Dollars and assumes that all Evaluation platform hardware would be provided by OpenSS7 and that all Signalling Gateway, STP and Cross-Connect hardware, Routers and LAN, and other sundry lab equipment be provided by the client. Development time is estimated at 100% effort per calendar week at our normal loaded rate. Shipping costs, training, training material and travel costs are not listed and would be billed separately. Table T-2. Estimated Cost
Appendix A Optional Application SupportA.1 Other Solution ArchitectureA.1.1 Ferry Clip TestingThe other possible test arrangement is the Ferry Clip arrangement. In this case, the OpenSS7 Test Platform behaves like the 3GPP GSM/UMTS network surrounding the SGSN Implementation Under Test. This is illustrated in Figure A-1 below. Figure A-1. Ferry Clip Testing
Appendix B Optional Network SupportB.1 SGSN Reference InterfacesFigure A-2 illustrates the SGSN Reference Interfaces from 3GPP TS 24.060 Release 5.9.0 that are supported by the High Performance GSM/UMTS GPRS HLR. Figure A-2. SGSN Reference Interfaces
B.1.1 Iu InterfaceThe Iu interface connects the 3G SGSN to the UTRAN. Figure A-3. Iu Interface
UMTS Mobility Management and Session Management (GMM/SM): GMM supports mobility management functionality such as attach, detach, security, and routing area update, as described in "Mobility Management Functionality". SM supports PDP context activation and PDP context deactivation, as described in "PDP Context Activation, Modification, Deactivation, and Preservation Functions" of TS 23.060. SMS supports the mobile-originated and mobile-terminated short message service described in 3GPP TS 23.040. Radio Access Network Application Protocol (RANAP): This protocol encapsulates and carries higher-layer signalling, handles signalling between the 3G-SGSN and UTRAN, and manages the GTP connections on the Iu interface. RANAP is specified in 3GPP TS 25.413. The layers below RANAP are defined in 3GPP TS 23.121. Radio Link Control (RLC): The RLC protocol offers logical link control over the radio interface for the transmission of higher layer signalling messages and SMS. RLC is defined in 3GPP TS 25.322. RLC for GSM is described in GSM 04.60. For transport of RANAP messages over Iu an SCCP protocol shall be used for both packet and circuit switche domains. The SCCP protocol shall fully comply with ITU-T White Book. RANAP protocol shall be designed to use this service according to the ITU-T standard. Iu shall be design so that RANAP is not impacted by alternatives for SCCP message transport on layers below SCCP. In the circuit switched domain, SCCP message shall be transported on a broadband SS7 stack comprising MTP3b on top of SAAL-NNI. In this domain no other alternatives are standardized in release 99. In the packet switched domain the UMTS standard shall allow operators to choose one our of two standardized protocol suites for transport of SCCP messages.
See aslo TS 29.202 which provides the following signalling bearers: Figure A-4. TS 29.2002 Signalling Bearers
B.1.2 Gb InterfaceThe Gb interface connects the 2G SGSN to the BSS. Figure A-5. Gb Interface
GPRS Mobility Management and Session Management (GMM/SM): This protocol supports mobility management functionality such as GPRS attach, GPRS detach, security, routing area update, location update, PDP context activation, and PDP context deactivation, as described in "Mobility Management Functionality" and "PDP Context Activation, Modification, Deactivation, and Preservation Functions" of TS 23.060. Radio Link Control (RLC): The RLC protocol offers logical link control over the radio interface for the transmission of higher layer signalling messages and SMS. RLC is defined in 3GPP TS 25.322. RLC for GSM is described in GSM 04.60. Logical Link Control (LLC):- LLC is defined in GSM 04.64. BSS GPRS Protocol (BSSGP):- BSSGP is defined in GSM 08.18. Network Service:- The Network Service is defined in GSM 08.16. The Network Service consists of a network services protocol over a Frame Relay (FRF 1.1) Sub-Network Service Protocol. L1 of the Gb interface is defined in GSM 08.14 and consists of one or more of the following FRF 1.1 supporting interfaces:
The Gb interface may be multiplexed with the A interface on the same E1 (2048 kbit/s), or T1 (1544 Kbit/s) digital path. In the case of E1 interface, CCITT Recommendation G.704 shall be applied and 3GPP TS 08.04 as appropriate, and in case of T1 interface ANSI Recommendation T1.403 shall be applied and 3GPP TS 08.04 as appropriate. In the case where multiple 64 kbit/s channels are used on an E1 (2048 kbit/s) digital patch on the Gb interface, it is recommended to aggregate them into one nx64 kbit/s channel, see CCITT Recommendation G.704, clause 5 and included sub-clauses. In case where multiple 64 kbit/s channels are used on a T1 (1544 kbit/s) digital path on the Gb interface, it is recommended to aggregate them into nx64kbit/s (where 2<=n<=24) channel, see Bellcore TR-NWT-1203. This approach optimizes the use of the available bandwidth by taking advantage of the statistical multiplexing at the upper layer. However, this approach requires that no slipping occurs between individual 64 kbit/s channels e.g. when passing through intermediate equipment between BSS and SGSN. The physical channels on the Gb interface shall be permanently reserved by means of administrative procedures. B.1.3 Gd InterfaceThe Gd interface connects the 3G SGSN to the SMS-GMSC or SMS-IWMSC. Figure A-6. Gd Interface
Mobile Application Part (MAP):- This protocol supports signalling between SGSN and SMS-GMSC or SMS-IWMSC, as described in clause "Point-to-point Short Message Service" of 3GPP TS 23.060. B.1.4 Ge InterfaceThe Ge interface connects the 3G SGSN to the Camel GSM SCF. Figure A-7. Ge Interface
B.1.5 Gf InterfaceThe Gf interface connects the 2G SGSN to the EIR. Figure A-8. Gg Interface
Mobile Application Part (MAP):- This protocol supports signalling between the SGSN and the EIR, as described in "Identify Check" of 3GPP TS 23.060. B.1.6 Gn InterfaceThe Gn interface connects the 3G SGSN to the local GGSN. Figure A-9. Gn Interface
GPRS Tunnelling Protocol for the control plane (GTP-C):- This protocol tunnels signalling messages between SGSNs and GGSNs (Gn), and between SGSNs in the backbone network (Gp). User Datagram Protocol (UDP):- This protocol transfers signalling messages between GSNs. UDP is defined in RFC 768. B.1.7 Gp InterfaceThe Gp interface connects the 3G SGSN to the foreign GGSN. Figure A-10. Gp Interface
GPRS Tunnelling Protocol for the control plane (GTP-C):- This protocol tunnels signalling messages between SGSNs and GGSNs (Gn), and between SGSNs in the backbone network (Gp). User Datagram Protocol (UDP):- This protocol transfers signalling messages between GSNs. UDP is defined in RFC 768. B.1.8 Gs InterfaceThe Gs interface connects the 3G SGSN to the MSC/VLR. Figure A-11. Gs Interface
Base Station System Application Part + (BSSAP+):- A subset of BSSAP procedures supports signalling between the SGSN and MSC/VLR, as described in "Mobility Management Functionality" in 3GPP TS 23.060 and in 3GPP TS 29.018. The requirements for the lower layers are specified in 3GPP TS 29.016. Additional information about supported signalling bearers is provided in 3GPP TS 29.202 as follows: Figure A-12. TS 29.202 Signalling Bearers
Appendix C Optional Protocol SupportC.1 Other Protocol ComponentsC.1.1 SCCP User Adaptation Layer (SUA) DriverThe SUA driver provides the HLR with the ability to act as an SUA AS (Application Server) in conjunction with an SUA SG (Signalling Gateway). In this project, the SG function is performed by existing lab equipment. The SUA driver accepts the transport of the SCCP to SCCP-User interface from the SG to the HLR. The SUA driver links SCTP driver streams underneath it to provide the transport services for exporting the SCCP-User interface. The SUA driver provides the same interfaces to its users as the OpenSS7 SCCP. The SUA driver is a STREAMS driver that runs in the Linux kernel for maximum performance. C.1.2 MTP Level 3 Broadband (MTP3b) ModuleC.1.3 Service Specific Connection Oriented Protocol (SSCOP) DriverC.1.4 MTP Level 2 User Adaptation Layer (M2UA) DriverThe M2UA driver provides the HLR with the ability to act as an M2UA AS (Application Server) in conjunction with an M2UA SG (Signalling Gateway). In this project, the SG function is performed by existing lab equipment. The M2UA driver accepts the transport of the SL to SL-User interface from the SG to the HLR. The M2UA driver links SCTP driver streams underneath it to provide the transport services for exporting the SL-User interface. The M2UA driver provides the same interface to its users as the OpenSS7 SL module. Appendix D Optional Software SupportD.1 Operating System OptionsOpenSS7 components and applications support the following additional Linux Distributions:
D.2 STREAMS OptionsD.2.1 Linux Fast-STREAMS (LfS)Linux Fast-STREAMS (LfS) is a dual licensed original work of OpenSS7 Corporation. It was designed an implemented as a directly replacement for inferior implementations for use with OpenSS7 stack releases. This complete reimplementation of an SVR 4.2 ES/MP compatible STREAMS facility exhibits simplified debugging and management, greatly increased performance, smaller memory footprint, wider compatibility. Production releases of Linux Fast-STREAMS are currently available. Appendix E Optional Hardware SupportE.1 Other Interface DevicesThis section provides information on additional interface cards available for use with the OpenSS7 SS7, SIGTRAN, ISDN and VoIP stacks: E.1.1 ACB56The ACB56 cards are single V.35 56/64kbps synchronous cards manufactured by SeaLevel Systems and distributed by ICS. Figure A-13 shows a picture of an ACB56 card. Figure A-13. ACB56
DriverThe driver for the ACB56 card provides, CH, SDL or SDT access to the card. The CH or SDL driver places the Zilog part into transparent mode and passes octets directly off the line to the channel or signalling data link driver. The SDT driver places the Zilog part into HDLC mode and performs SS7 HDLC using the Zilog SCC. The SDT driver performs better, of course, than the CH or SDL drivers, however, the Zilog SCC HDLC is incapable of performing some SS7 functions that are provided by the OpenSS7 SDT (SS7-HDLC) module for the CH or SDL drivers. FeaturesFollowing are some features of the ACB56 card:
AdvantagesFollowing are the advantages of the ACB56 card:
The ACB56 card has few advantages. It only provides low-cost V.35 interface where absolutely necessary. Any other V.35 capable card might be a better choice. DisadvantagesFollowing are the disadvantages of the ACB56 card:
Due to its disadvantages, another V.35 card (PCI based, higher density, integrated CSU/DSU) should be considered where V.35 interface is completely necessary. The High Performance GSM/UMTS GPRS HLR does not have a requirement for V.35 interface and this card is not used on the deployment platform. If V.35 interface becomes a requirement at a later date, a different card will be selected. The selected card will have a higher density, PCI with PCI DMA and bus-mastering, integrated CSU/DSU, and other features absent from the ACB56 card. E.1.2 PCA 200EThe PCA 200E card is a 155MHz ATM card manufactured by Marconi (formerly FORE). Figure A-16 shows a picture of an PCA 200E card. Figure A-16. PCA 200E
The PCA 200E cards have a good level of signalling performance because they have an on-board 25MHz i960 Intel RISC processor performing cell processing using buffer rings in the same manner as an Ethernet controller. DriverFeaturesFollowing are the features of the PCA 200E cards:
AdvantagesFollowing are the advantages of the PCA 200E cards:
DisadvantagesFollowing are the disadvantages of the PCA 200E cards:
E.1.3 BRIA BRI card. Figure A-17. BRI
DriverFeaturesFollowing are the features of the BRI cards: AdvantagesFollowing are the advantages of the BRI cards: DisadvantagesFollowing are the disadvantages of the BRI cards: Appendix F Programmatic InterfacesTo support a framework for providing transaction products in the UNIX system, an effort is underway to define service interfaces to map to strategic levels of the Signalling System Number 7 (SS7) model. These service interfaces hide implementation details of a particular service from the consumer of the service. This enables system programmers to develop software independent of the particular protocol that provides a specific service. The interfaces being specified for UNIX System V are defined within the STREAMS environment. This document specifies a kernel-level interface that supports the services of the Transaction Capabilities Application Part for Operation Class 1, 2, 3 and 4 services. This specification applies to System V Release 4.2 ES/MP STREAMS. F.1 Transaction Component InterfaceThe transaction component interface defines a message interface to a transaction provider implemented under STREAMS. 12 A user communicates to a transport provider via a full duplex path known as a stream (see Figure F-1). This stream provides a mechanism in which messages may be passed to the transaction provider from the transaction user and visa versa.
The STREAMS messages that are used to communicate transaction service primitives between the transaction user and the transaction provider may have one of the following formats:
F.1.1 Common Transaction PrimitivesThe following transaction primitives are common to all operation classes: F.1.1.1 User-Originated PrimitivesThe following describes the format of the transaction primitives which are generated by the transaction user.
|
Jump to: | A B C D E F G H I L M N O P Q R S T V X |
---|
Jump to: | A B C D E F G H I L M N O P Q R S T V X |
---|
Although some reference is made to capabilities supporting other phases, Phase 1 and Phase 2 are the focus of this document.
This document is a High-Level Design document and it meets the internal requirements for passing Gate 1 of Phase 1 and Phase 2 of the project. An external review of this document by a Beta or Gamma client or sponsor is pending.
OpenSS7 requires a contractual commitment for purchase from a Beta or Gamma client, or funding from a Sponsor of the OpenSS7 Project, before this gate can be passed and development started.
It should be noted that for F-link operation, there is no need to provision more than on SS7 Signalling Point Code for all Application Gateways that are F-link attached in the entire network, regardless of the number of physical platforms. This is possible as the only route that a switch sees to the platform is via F-links and not via A-links to any STP in the system. The collection of all Application Gateways can be seen a one distributed CNAM database with one SS7 Signalling Point Code that is attached to mutliple switches using F-links. With STP interconnection, it is still possible to have a single SS7 PC for each Application Gateway, provided that the connection to STPs is performed using E-links rather than A-links.
OpenSS7 implements the Q.771 TC interface with the Transaction Component Interface. See Introduction in Transaction Component Interface Specification. See also tci(7).
This section is not intended as a Detailed Design, but provides illustration only for the High-Level Design. Refer to GR-1188-CORE for detailed information.
For other hardware alternatives, see Hardware Architecture
For detailed sizing considerations, see Platform Sizing.
Message Transfer Part streams bound to ISUP MTP-SAPs are linked under the ISUP driver above to form a complete SS7 stack in support of call switching. Message Transfer Part streams bound to SCCP MTP-SAPs are linked under the SCCP driver above to form a complete SS7 stack in support of transaction services.
This document is a High-Level Design an Proposal document and it meets the internal requirements for passing Gate 1 of Phase 1 of the HLR project. An external review of this document by a Beta or Gamma client or sponsor is pending.
OpenSS7 requires a contractual commitment for purchase from a Beta or Gamma client, or funding from a Sponsor of the OpenSS7 Project, before this gate can be passed and development started.
It is assumed that the reader of this document is familiar with the concept STREAMS.
The TC_INFO_REQ
and
TC_INFO_ACK
primitives have no effect on the state of the transaction provider and do not
appear in state tables