[Asterisk-ss7] Let us design an open source SS7 interfaceforAsterisk

CARDOSO Jorge Miguel jmc at ip.novis.pt
Mon May 16 09:08:10 CDT 2005

I will try to explain it better.
For ss7 on PSTN side we need one or dedicated timeslots to handle 
signalling, and we can have several E1's/ T1's on Gws. For establishing 
calls on VoiP side we can use MGCP between ASterisk and Gateway(s).

For making it happen on PSTN side using ss7 we may use TCP between 
Gateway and Softswitch. This avoids having dedicated signalling 
hardware, because the feature it's already there, on the Gateways.

Softswitch <---------- MGCP -------> Cisco Gw ---E1 (PCM Timeslot-->
            <---------- TCP  ------->          ---E1 (Sig.TimeSlot

The signalling is directly mapped between TCP <---> E1/ T1 Timeslot.
TCP for SoftSwitch side and E1/ T1 for the PSTN side.

In this kind of scenario, we would just need to deploy the ss7 protocol 
stack and interface it with TCP. This would also require coordination 
with MGCP (to establish, change and delete voice paths).

This kind of implementation is beeing followed by main vendors.

Best Regards,
Jorge Cardoso

Matthew Crocker wrote:
> The D channel in a PRI is a subset of ISUP/SS7.  It is cannot handle  a 
> full SS7 stack or features.
> In order for Asterisk to become a true 'soft switch' it needs to be  
> able to handle ISUP and TCAP (LNP, 800 dips, ANI-Triggers).  The ISUP/ 
> TCAP can get into Asterisk via 2 methods.
>  1).  Traditional packet based SS7 where a 56kbps data channel  carrying 
> SS7 is plugged directly into a port on the Asterisk machine.
>     For more information take a look at the TDM400P-SS7 Drivers  found 
> on openss7.org  They work with the Digium boards.   Asterisk  would 
> terminate the MTP1, 2 & 3 and gain access to the ISUP/TCAP  messages 
> carried over the SS7 link
> 2).  SS7 over IP (SIGTRAN).   The ISUP/TCAP messages would arrive at  
> the Asterisk box over an IP connection using SCTP.  The ISUP/TCAP  could 
> originate at an SS7 to IP gateway or come direct from an SS7  over IP 
> provider. Verisign is already offering SS7oIP gateway  service.  The 
> RBOCs are starting to provide it as well.  This is  normally not done 
> over the Internet but with a private T1 based IP  network.
>  For more information on SIGTRAN and SCTP take a look at http:// 
> www.sigtran.org and RFC2960 (http://www.ietf.org/rfc/rfc2960.txt)
> IMHO, I think option 2 is the best,  option 1 can be added later if  
> needed.   Option 2 gives flexibility in gateways and/or gateway  
> providers.  It also removes a lot of the headaches from dealing with  
> MTP1 & MTP2.   Linux already supports SCTP in the kernel (linux 2.4  
> module) so the only thing that needs to be done is handling ISUP &  TCAP 
> (chan_isup, chan_tcap) ????
> When dealing with SS7 you get a 'point code', (like an IP address).    
> You need to plug into the network somewhere, normally it is into an  STP 
> (think SS7 Router).  Once you establish a connection to the  network you 
> need to build ISUP routes over that network to the  various devices on 
> the network. Devices include tandems and End  Office switches,  LNP 
> databases, etc...   When you need to make a  call you first send TCAP 
> messages to find the correct LNP  information, then you send ISUP 
> messages to the proper switch to  create the call.   When you get a 1000 
> block of numbers, you publish  them in the LERG with the point code for 
> the switch handling the  numbers.
> With SS7oIP your point code is routed over the SS7 network to your  
> SS7oIP gateway.  The gateway takes the ISUP/TCAP messages, wraps them  
> in SCTP packets and sends them to your switch via IP.  One SCTP  packet 
> can contain more than one message (SCTP data chunk).
> Verizon requires that I connect directly to the STP (SS7 routers) in  
> each LATA that I want to send/receive calls in.  Verisign already has  
> connections to all of the Verizon STPs so one connection to Verisign  
> (over IP) gets me all of the Verizon STPs.  I can then build ISUP  
> routes over that to the switches I need.  Initially I would only need  
> ISUP routes to the access tandem, PSAP tandem and LNP database.  I  
> would also need IMTs between my media gateway and the access & PSAP  
> tandems in each LATA.  Once I had enough outbound calls during busy  
> hour to fill a DS-1 to a single EO, I'm required to build IMTs  directly 
> to the EO. I would then need an ISUP route to that EO as  well.  All of 
> the point-code, routing information is contained in the  ISUP/TCAP 
> messages.
> The asterisk 'call flow' the way I see it,  please correct me if I'm  
> wrong:
> PSTN -> Asterisk -> SIP phone call using SS7.
> 1).  ISUP message comes into Asterisk containing the called number  
> information  (chan_isup)
> 2). Asterisk determines the correct SIP extension (extensions.conf)  and 
> sends a SIP message to the phone (chan_sip)
> 3). The phone rings,  a customer answers.  The phone sends a SIP  
> message back to Asterisk notifying it of the answer (chan_sip)
> 4). Asterisk determines the correct IMT/Media gateway needed to  handle 
> the call (from tandem?  from end office?,  available trunks...)
> 5). Asterisk sends a message to the media gateway to reserve a  certain 
> channel/port and assign it to SIP, phone IP ... (chan_mgcp)
> 6). Asterisk sends an ISUP message to the originating switch with  
> information on which trunk to send the call down (chan_sip)
> 7). Originating PSTN switch reserves the trunk and connects the  caller 
> to it
> 8). The Media gateway turns the trunk data into g.729 and sends it to  
> the SIP phone.
> 9)  <Conversation>
> 10). SIP phone hangs up, sends a message to Asterisk (chan_sip)
> 11). Asterisk sends a message to the media gateway to clean up the  call 
> (chan_mgcp)
> 12). Asterisk sends a message to the PSTN switch to clean up the call  
> (chan_isup)
> During the entire call process Asterisk needs to maintain the state  of 
> the call, and the media gateway IMT trunks
> Asterisk would need to maintain a 'map' of the network containing all  
> of the Media Gateways, their trunks and which switches they are  
> connected to.  MG #1, Trunk #1 connected to Tandem (point code) as  
> Trunk #1 in Trunk Group #1 ....  Asterisk would also need to maintain  
> the relevant parts of the LERG for outbound call routing (NPA-NXX  goes 
> to EO (point code) which can be reached via the access tandem  and trunk 
> group #1)
> A lot of the work is already out there, as open source.  It just  needs 
> to be put together.
> On May 16, 2005, at 8:42 AM, CARDOSO Jorge Miguel wrote:
>> Some Cisco Gw's support a feature called "MGCP PRI BackHaul", this  
>> means the bearer channels can be controlled using MGCP and PSTN  
>> signalling (ss7) can be exchanged between Softswitch and PSTN using  TCP.
>> Regards,
>> Jorge Cardoso
>> Race Vanderdecken wrote:
>>> Okay, there seems to be agreement as to how to do this. Doing ISUP  and
>>> TCAP is what I have heard from others I have proposed the same  
>>> questions
>>> to in the past.
>>> Running the SS7 to PSTN interface on a "cisco" type box also has been
>>> recommended by others. By "cisco" I mean any certified box that is
>>> available to most of the VoIP guys. Having to purchase an X thousand
>>> dollar box is not going to work. Have any of you looked at  ss7box.com?
>>> So, we need to create a SS7 socket interface to asterisk.
>>> I have built several socket interfaces in the past that have  worked in
>>> commercial products. All were based on Stevens' Unix Programming and
>>> Networking books.
>>> Where do I find the socket interface on our "cisco" ss7 box?
>> _______________________________________________
>> Asterisk-SS7 mailing list
>> Asterisk-SS7 at lists.digium.com
>> http://lists.digium.com/mailman/listinfo/asterisk-ss7
> -- 
> Matthew S. Crocker
> Vice President
> Crocker Communications, Inc.
> Internet Division
> PO BOX 710
> Greenfield, MA 01302-0710
> http://www.crocker.com

More information about the Asterisk-SS7 mailing list