<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://docs.yate.ro/wiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://docs.yate.ro/wiki/index.php?action=history&amp;feed=atom&amp;title=Configure_Cisco_SLT</id>
		<title>Configure Cisco SLT - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://docs.yate.ro/wiki/index.php?action=history&amp;feed=atom&amp;title=Configure_Cisco_SLT"/>
		<link rel="alternate" type="text/html" href="https://docs.yate.ro/wiki/index.php?title=Configure_Cisco_SLT&amp;action=history"/>
		<updated>2026-05-20T05:41:36Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.19.1</generator>

	<entry>
		<id>https://docs.yate.ro/wiki/index.php?title=Configure_Cisco_SLT&amp;diff=8012&amp;oldid=prev</id>
		<title>Liviu: Created page with &quot;Configuring a MTP2 backhaul with Cisco SLT requires configuring both ends, applying configuration and checking the state of the links.   '''IMPORTANT''': Cisco gateways suppor...&quot;</title>
		<link rel="alternate" type="text/html" href="https://docs.yate.ro/wiki/index.php?title=Configure_Cisco_SLT&amp;diff=8012&amp;oldid=prev"/>
				<updated>2017-10-26T09:09:57Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;Configuring a MTP2 backhaul with Cisco SLT requires configuring both ends, applying configuration and checking the state of the links.   &amp;#039;&amp;#039;&amp;#039;IMPORTANT&amp;#039;&amp;#039;&amp;#039;: Cisco gateways suppor...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Configuring a MTP2 backhaul with Cisco SLT requires configuring both ends, applying configuration and checking the state of the links.&lt;br /&gt;
&lt;br /&gt;
 '''IMPORTANT''': Cisco gateways support a maximum of 4 SS7 links.&amp;lt;br/&amp;gt;This is enough for small configurations but insufficient to correctly connect to multiple providers.&lt;br /&gt;
 '''Therefore for flexibility it is desirable to have several smaller gateways rather than a big one.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Cisco configuration==&lt;br /&gt;
&lt;br /&gt;
Here is a fragment of the Cisco configuration for an AS5350 or AS5400XM fitted with a card with 4 or more E1 ports:&lt;br /&gt;
&lt;br /&gt;
 !&lt;br /&gt;
 controller E1 1/0&lt;br /&gt;
  channel-group 0 timeslots 1&lt;br /&gt;
  ds0-group 1 timeslots 2-31 type none service mgcp&lt;br /&gt;
 !&lt;br /&gt;
 controller E1 1/1&lt;br /&gt;
  channel-group 0 timeslots 1&lt;br /&gt;
  ds0-group 1 timeslots 2-31 type none service mgcp&lt;br /&gt;
 !&lt;br /&gt;
 controller E1 1/2&lt;br /&gt;
  ds0-group 1 timeslots 1-31 type none service mgcp&lt;br /&gt;
 !&lt;br /&gt;
 controller E1 1/3&lt;br /&gt;
  ds0-group 1 timeslots 1-31 type none service mgcp&lt;br /&gt;
 !&lt;br /&gt;
 interface Serial1/0:0&lt;br /&gt;
  no ip address&lt;br /&gt;
  encapsulation ss7&lt;br /&gt;
  channel-id 0&lt;br /&gt;
 !&lt;br /&gt;
 interface Serial1/1:0&lt;br /&gt;
  no ip address&lt;br /&gt;
  encapsulation ss7&lt;br /&gt;
  channel-id 1&lt;br /&gt;
 !&lt;br /&gt;
 ss7 session 0 address a.b.c.d 4001 w.x.y.z 4000 session-set 0&lt;br /&gt;
&lt;br /&gt;
In the example above two E1 trunks are configured for SS7 signaling (on timeslot 1) and MGCP controlled voice on the remaining timeslots 2 to 31. The third and fourth E1s are used only for voice.&lt;br /&gt;
&lt;br /&gt;
For a T1 controller the timeslots of each port are in range 1 to 24 but otherwise the configuration is similar.&lt;br /&gt;
&lt;br /&gt;
The name of each controller depends on the board and port location. '''1/2''' means port number two (that is, third as they start counting with zero) of board in slot number one.&lt;br /&gt;
&lt;br /&gt;
Replace ''a.b.c.d 4001'' with the IP and port of the Yate end of the RUDP connection. Instead of ''w.x.y.z 4000'' set the IP and port of the Cisco side of RUDP.&lt;br /&gt;
&lt;br /&gt;
 '''IMPORTANT:''' The number of the signaling channel-group must be the timeslot number minus one. &amp;lt;br/&amp;gt;If you had signaling on ''timeslots 16'' then you would need ''channel-group 15''&lt;br /&gt;
&lt;br /&gt;
== Yate configuration==&lt;br /&gt;
&lt;br /&gt;
The matching '''ciscosm.conf''' on the Yate side would look like this:&lt;br /&gt;
&lt;br /&gt;
 [sample_session]&lt;br /&gt;
 local_host=a.b.c.d&lt;br /&gt;
 local_port=4001&lt;br /&gt;
 remote_host=w.x.y.z&lt;br /&gt;
 remote_port=4000&lt;br /&gt;
 &lt;br /&gt;
 [link1]&lt;br /&gt;
 session=sample_session&lt;br /&gt;
 channel=0&lt;br /&gt;
 &lt;br /&gt;
 [link2]&lt;br /&gt;
 session=sample_session&lt;br /&gt;
 channel=1&lt;br /&gt;
&lt;br /&gt;
The Session Manager ''sample_session'' defines the RUDP connection to Cisco. Normally you should have only one session between one Yate and one Cisco. You can have separate connections to more gateways and also each gateway may talk to different controllers, each in a separate section.&lt;br /&gt;
&lt;br /&gt;
Each SS7 MTP2 link has a reference to the connection and an unique channel number - you should assign these channel numbers sequentially starting with zero. The names of these link sections are arbitrary, they will be referenced from ''ysigchan.conf'' in sections type [[Configure MTP3|ss7-mtp3]].&lt;br /&gt;
&lt;br /&gt;
== Status on Cisco==&lt;br /&gt;
&lt;br /&gt;
There are several specific IOS commands to show the state of links and session in Cisco:&lt;br /&gt;
&lt;br /&gt;
 show ss7 mtp1 links&lt;br /&gt;
 show ss7 mtp1 channel-id&lt;br /&gt;
 show ss7 mtp2 state&lt;br /&gt;
 show ss7 mtp2 stats&lt;br /&gt;
 show ss7 mtp2 ccb&lt;br /&gt;
 show ss7 mtp2 timers&lt;br /&gt;
 show ss7 mtp2 variant&lt;br /&gt;
 show ss7 sm session&lt;br /&gt;
 show ss7 sm set&lt;br /&gt;
 show ss7 sm stats&lt;br /&gt;
&lt;br /&gt;
First check the state of the E1 controllers, check if they are up or down or experience errors:&lt;br /&gt;
&lt;br /&gt;
 show controller E1 1/0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Then verify the virtual serial interfaces have started:&lt;br /&gt;
 &lt;br /&gt;
 Router#show ss7 mtp1 links&lt;br /&gt;
  SS7 MTP1 Links [num = 2, platform max = 4]:&lt;br /&gt;
 &lt;br /&gt;
                                        session session&lt;br /&gt;
    interface   type   SCC     state    channel   set&lt;br /&gt;
    --------- -------- --- ------------ ------- -------&lt;br /&gt;
       1/0:0  digital  3/3   '''STARTED'''  0       0&lt;br /&gt;
       1/0:1  digital  3/2   '''STARTED'''  1       0&lt;br /&gt;
&lt;br /&gt;
 '''IMPORTANT''': There are some buggy versions of firmware where the serials will show '''STOPPED''' after a reload even&amp;lt;br/&amp;gt; if the configuration was saved to flash.&lt;br /&gt;
 These versions are unusable for normal operation but just for tests you can issue a &amp;quot;no shutdown&amp;quot; command on each such serial interface.&lt;br /&gt;
&lt;br /&gt;
You should then check the MTP2 Channel allocation to interfaces and timeslots:&lt;br /&gt;
 &lt;br /&gt;
 Router#show ss7 mtp1 channel-id&lt;br /&gt;
  SS7 MTP1 Session-channel [all]:&lt;br /&gt;
       channel  assigned interface&lt;br /&gt;
       -------  ------------------&lt;br /&gt;
           0      1/0:0  (digital)&lt;br /&gt;
           1      1/1:0  (digital)&lt;br /&gt;
&lt;br /&gt;
Then check the session's RUDP configuration:&lt;br /&gt;
 &lt;br /&gt;
 Router#show ss7 sm session&lt;br /&gt;
 Session[0]: Remote Host a.b.c.d:4001, Local Host w.x.y.z:4000&lt;br /&gt;
       retrans_t = 600 milliseconds&lt;br /&gt;
       cumack_t  = 300 milliseconds&lt;br /&gt;
       kp_t      = 2000 milliseconds&lt;br /&gt;
       m_retrans = 2&lt;br /&gt;
       m_cumack  = 3&lt;br /&gt;
       m_outseq  = 3&lt;br /&gt;
       m_rcvnum  = 32&lt;br /&gt;
&lt;br /&gt;
Statistics and failures for the RUDP protocol:&lt;br /&gt;
&lt;br /&gt;
 Router#show rudpv0 statistics&lt;br /&gt;
 &lt;br /&gt;
 *** RUDP Internal Stats ****&lt;br /&gt;
 &lt;br /&gt;
 Connection ID: 630E25D8,   Current State: OPEN&lt;br /&gt;
 &lt;br /&gt;
 RcvdInSeq                  269&lt;br /&gt;
 RcvdOutOfSeq               25&lt;br /&gt;
 &lt;br /&gt;
 SoftResets                 1&lt;br /&gt;
 SoftResetsRcvd             0&lt;br /&gt;
 &lt;br /&gt;
 TotalPacketsSent           722&lt;br /&gt;
 TotalPacketsReceived       560&lt;br /&gt;
 TotalDataBytesSent         11564&lt;br /&gt;
 TotalDataBytesReceived     9706&lt;br /&gt;
 TotalDataPacketsSent       382&lt;br /&gt;
 TotalDataPacketsReceived   294&lt;br /&gt;
 TotalPacketsRetrans        5&lt;br /&gt;
 TotalPacketsDiscarded      8&lt;br /&gt;
 &lt;br /&gt;
 Cumulative RudpV0 Statistics&lt;br /&gt;
 &lt;br /&gt;
 RcvdInSeq                  269&lt;br /&gt;
 RcvdOutOfSeq               25&lt;br /&gt;
 &lt;br /&gt;
 SoftResets                 1&lt;br /&gt;
 SoftResetsRcvd             0&lt;br /&gt;
 &lt;br /&gt;
 TotalPacketsSent           722&lt;br /&gt;
 TotalPacketsReceived       560&lt;br /&gt;
 TotalDataBytesSent         11564&lt;br /&gt;
 TotalDataBytesReceived     9706&lt;br /&gt;
 TotalDataPacketsSent       382&lt;br /&gt;
 TotalDataPacketsReceived   294&lt;br /&gt;
 TotalPacketsRetrans        5&lt;br /&gt;
 TotalPacketsDiscarded      8&lt;br /&gt;
&lt;br /&gt;
 Router#show rudpv0 failures&lt;br /&gt;
 &lt;br /&gt;
 **** RUDP Failure Stats ****&lt;br /&gt;
 &lt;br /&gt;
 CreateBufHdrsFailure       0&lt;br /&gt;
 CreateConnRecsFailure      0&lt;br /&gt;
 CreateEventsFailure        0&lt;br /&gt;
 &lt;br /&gt;
 NotReadyFailures           0&lt;br /&gt;
 OptionNotSupportedFailures 0&lt;br /&gt;
 OptionRequiredFailures     0&lt;br /&gt;
 GetConnRecFailures         0&lt;br /&gt;
 InvalidConnFailures        0&lt;br /&gt;
 EventUnavailFailures       0&lt;br /&gt;
 &lt;br /&gt;
 EmptyBufferSendFailures    0&lt;br /&gt;
 BufferTooLargeFailures     0&lt;br /&gt;
 ConnNotOpenFailures        0&lt;br /&gt;
 SendWindowFullFailures     0&lt;br /&gt;
 GetBufHdrSendFailures      0&lt;br /&gt;
 &lt;br /&gt;
 GetDataBufFailures         0&lt;br /&gt;
 GetBufHdrFailures          0&lt;br /&gt;
 &lt;br /&gt;
 SendEackFailures           0&lt;br /&gt;
 SendAckFailures            0&lt;br /&gt;
 SendSynFailures            0&lt;br /&gt;
 SendRstFailures            0&lt;br /&gt;
 SendNullFailures           0&lt;br /&gt;
 &lt;br /&gt;
 TimerNullFailures          0&lt;br /&gt;
 FailedRetransmits          0&lt;br /&gt;
 IncomingPktsDropped        0&lt;br /&gt;
 UnknownRudpEvents          0&lt;br /&gt;
&lt;br /&gt;
Operational state of the session and the links controlled by it:&lt;br /&gt;
 &lt;br /&gt;
 Router#show ss7 sm set 0&lt;br /&gt;
 &lt;br /&gt;
 Session-set: 0&lt;br /&gt;
   State           = '''ACTIVE'''&lt;br /&gt;
   Failover-timer  = 5 secs.&lt;br /&gt;
   State-debugging = OFF&lt;br /&gt;
   Timer-debugging = OFF&lt;br /&gt;
 &lt;br /&gt;
   1 Sessions:&lt;br /&gt;
     session 0   session-state '''ACTIVE'''   remote-host a.b.c.d:4001&lt;br /&gt;
 &lt;br /&gt;
   2 SS7 Links:&lt;br /&gt;
        1/0:0 (dig.)  chan-id 0  variant ITU-White  link-state '''INSERVICE'''&lt;br /&gt;
        1/1:0 (dig.)  chan-id 1  variant ITU-White  link-state '''INSERVICE'''&lt;br /&gt;
&lt;br /&gt;
If instead of '''ACTIVE''' you see '''OPENING''' the RUDP parameters (addresses, ports) are incorrect or a firewall may block UDP packets.&lt;br /&gt;
&lt;br /&gt;
On a typical Linux system a firewall can be temporarily disabled by issuing the command:&lt;br /&gt;
&lt;br /&gt;
 /etc/init.d/iptables stop&lt;br /&gt;
&lt;br /&gt;
You would need to permanently disable the firewall, for example by stopping the [http://en.wikipedia.org/wiki/Iptables iptables] service from starting at startup:&lt;br /&gt;
&lt;br /&gt;
 chkconfig iptables off&lt;br /&gt;
&lt;br /&gt;
The commands for controlling the firewall may differ depending on the Linux distribution.&amp;lt;br&amp;gt;&lt;br /&gt;
Note that an external firewall, ACL settings on Cisco or [http://en.wikipedia.org/wiki/Selinux SELinux] may be other reasons for lack of UDP connectivity.&lt;br /&gt;
&lt;br /&gt;
Finally, check the detailed state of the SS7 MTP2 links:&lt;br /&gt;
 &lt;br /&gt;
 Router#show ss7 mtp2 state&lt;br /&gt;
 SS7 MTP2 states for channel 0&lt;br /&gt;
 Protocol version for channel 0 is ITU-T Q.703 (1996) (White Book)&lt;br /&gt;
  '''MTP2LSC_INSERVICE'''  '''MTP2IAC_IDLE'''&lt;br /&gt;
   MTP2TXC_INSERVICE       MTP2RC_INSERVICE&lt;br /&gt;
   MTP2SUERM_MONITORING    MTP2AERM_IDLE&lt;br /&gt;
   MTP2CONGESTION_IDLE&lt;br /&gt;
     Congestion Backhaul  = Abate&lt;br /&gt;
 Remote Processor Outage  = FALSE&lt;br /&gt;
 &lt;br /&gt;
 SS7 MTP2 states for channel 1&lt;br /&gt;
 Protocol version for channel 1 is ITU-T Q.703 (1996) (White Book)&lt;br /&gt;
   '''MTP2LSC_OOS'''       '''MTP2IAC_IDLE'''&lt;br /&gt;
   MTP2TXC_INSERVICE       MTP2RC_IDLE&lt;br /&gt;
   MTP2SUERM_IDLE          MTP2AERM_IDLE&lt;br /&gt;
   MTP2CONGESTION_IDLE&lt;br /&gt;
     Congestion Backhaul  = Abate&lt;br /&gt;
 Remote Processor Outage  = FALSE&lt;br /&gt;
&lt;br /&gt;
In the above example channel 0 is aligned ('''MTP2LSC_INSERVICE''') while channel 1 is paused ('''MTP2LSC_OOS''') from the Yate side. Resuming ''link2'' without an active MTP2 at the other end results in:&lt;br /&gt;
&lt;br /&gt;
 Router#show ss7 mtp2 state 1&lt;br /&gt;
 SS7 MTP2 states for channel 1&lt;br /&gt;
 Protocol version for channel 1 is ITU-T Q.703 (1996) (White Book)&lt;br /&gt;
   '''MTP2LSC_INITIAL_ALIGNM'''  '''MTP2IAC_NOT_ALIGNED'''&lt;br /&gt;
   MTP2TXC_INSERVICE       MTP2RC_INSERVICE&lt;br /&gt;
   MTP2SUERM_IDLE          MTP2AERM_IDLE&lt;br /&gt;
   MTP2CONGESTION_IDLE&lt;br /&gt;
     Congestion Backhaul  = Abate&lt;br /&gt;
 Remote Processor Outage  = FALSE&lt;br /&gt;
&lt;br /&gt;
In this case the link tries to align but didn't succeed yet ('''MTP2IAC_NOT_ALIGNED''').&lt;br /&gt;
&lt;br /&gt;
== Status on Yate==&lt;br /&gt;
&lt;br /&gt;
The state of Cisco SLT links is displayed in rmanager just like any type of link:&lt;br /&gt;
&lt;br /&gt;
 status sig links&lt;br /&gt;
 &lt;br /&gt;
 %%+status:sig links&lt;br /&gt;
 module=sig,format=Type|Status;count=2;link1=cisco-slt|Normal Alignment,link2=cisco-slt|Out Of Alignment&lt;br /&gt;
 %%-status&lt;br /&gt;
&lt;br /&gt;
You can also use the [http://www.wireshark.org/ Wireshark] (former Ethereal) network protocol analyzer to check the communication at IP level. You will need to manually select one of the UDP packets and &amp;quot;Decode As...&amp;quot; RUDP from the Right Click menu.&lt;br /&gt;
&lt;br /&gt;
If a graphical environment is not installed you can use the ''tshark'' text mode component of Wireshark to get a rough overview of the signaling:&lt;br /&gt;
&lt;br /&gt;
 tshark -n -d udp.port==4000,rudp&lt;br /&gt;
&lt;br /&gt;
You can add on the command line above to filter output:&lt;br /&gt;
* '''-R sm''' (Display only RUDP containing SM)&lt;br /&gt;
* '''-R sm.len!=0''' (Display only SM containing commands or MTP2)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Other configuration steps==&lt;br /&gt;
&lt;br /&gt;
* [[Configure Cisco MGCP|Configuring Cisco MGCP]]&lt;br /&gt;
* [[Configure MTP3|Configuring MTP3 ]]&lt;br /&gt;
* [[Configure ISUP|Configuring ISUP]]&lt;br /&gt;
&lt;br /&gt;
== Other documentation==&lt;br /&gt;
&lt;br /&gt;
Detailed documentation about SLT is available directly from Cisco:&lt;br /&gt;
* [http://www.cisco.com/en/US/products/hw/vcallcon/ps2152/products_data_sheet09186a0080091b58.html Cisco Signaling Link Terminal]&lt;br /&gt;
* [http://www.cisco.com/univercd/cc/td/doc/product/access/sc/rel9/soln/voip20/impl/impdesn.htm|Voice Networks: Design Fundamentals]&lt;/div&gt;</summary>
		<author><name>Liviu</name></author>	</entry>

	</feed>