Revision: 16234
Author: [email protected]
Date: Thu Jan 6 23:53:40 2011
Log: Changes to chapter 3 and 5
http://code.google.com/p/mobicents/source/detail?r=16234
Modified:
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Design_Overview.xml
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Linkset_Management.xml
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Source_Build_Binary.xml
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/SS7_Stack_User_Guide.xml
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/images/binnar-structure.png
=======================================
---
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Design_Overview.xml
Thu Jan 6 04:15:37 2011
+++
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Design_Overview.xml
Thu Jan 6 23:53:40 2011
@@ -49,7 +49,14 @@
<para><literal>M3UALinkset</literal> : M3UA stands for MTP Level 3
(MTP3) User Adaptation Layer as defined by the IETF SIGTRAN working group
in RFC 4666.
<literal>M3UALinkset</literal> enables the &THIS.PLATFORM;
&THIS.APPLICATION; Level 4 (e.g. ISUP, SCCP) to run over IP instead of
instead of SS7 network</para>
</listitem>
- </itemizedlist>
+ </itemizedlist>
+ <para>
+ <literal>LinksetFactory</literal> creates instance of
<literal>Linkset</literal> on receiving instruction from
<literal>LinksetManager</literal>.
+ Factories <literal>DahdiLinksetFactory</literal>,
<literal>DialogicLinksetFactory</literal> and
<literal>M3UALinksetFactory</literal> are
+ defined for each type of linksets
explained above.
+ </para>
+
+ <para>Configuration of linkset factories is exaplained in section
<xref linkend="configuring" /></para>
</section>
<section
id="design_overview_shell">
@@ -131,6 +138,8 @@
</varlistentry>
</variablelist>
+
+ <para>Configuration of SS7 Service is exaplained in section <xref
linkend="configuring" /></para>
</section>
<section id="mobicents_design_overview_ss7_service">
<title>&THIS.PLATFORM; &THIS.APPLICATION; Usage</title>
=======================================
---
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Linkset_Management.xml
Tue Jan 4 22:17:56 2011
+++
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Linkset_Management.xml
Thu Jan 6 23:53:40 2011
@@ -10,12 +10,11 @@
<title>Linkset Management
</title>
- <para>&THIS.PLATFORM; &THIS.APPLICATION;
- provides Shell client to manage configuration. This chapter describes
available commands.
+ <para>&THIS.PLATFORM; &THIS.APPLICATION; provides Shell client to manage
configuration. This chapter describes available commands.
</para>
- <para>Shell client can be started with following command:</para>
+ <para>Shell client can be started with following command from
<filename>$JBOSS_HOME/bin</filename>:</para>
<programlisting>
-[$] ./bin/ss7-run.sh
+[$] ./ss7-run.sh
</programlisting>
<para>Once console starts, it will print following information:</para>
<screen>
@@ -29,6 +28,18 @@
mobicents>
</screen>
+ <para>
+ The <literal>ss7-run</literal> script supports following options
+ </para>
+
+<screen><![CDATA[
+Usage: SS7 [OPTIONS]
+Valid Options
+-v Display version number and exit
+-h This help screen
+]]>
+ </screen>
+
<para>Shell needs to connect to managed instance. Command to connect has
following structure:</para>
<programlisting>
ss7 connect <IP> <PORT> </programlisting>
@@ -46,6 +57,18 @@
<literal>127.0.0.1:3435</literal>
</para>
</note>
+
+ <para>Command to disconnect has following structure:</para>
+ <programlisting>ss7 discconnect </programlisting>
+ <example>
+ <title>Disconnect</title>
+ <screen>
+mobicents(10.65.208.215:3435)>ss7 connect
+
+Bye
+mobicents>
+ </screen>
+ </example>
<para>
Linksets are managed by
@@ -402,7 +425,7 @@
</programlisting>
<example>
- <title>Link Deactivateion</title>
+ <title>Linkset Status</title>
<screen>
mobicents(10.65.208.215:3435)>linkset show
linkset1 dahdi opc=1 apc=2 ni=0
state=UNAVAILABLE
@@ -410,6 +433,38 @@
</screen>
</example>
+
+ <para>The possible state of Linkset are </para>
+ <itemizedlist>
+ <listitem>
+ <para>UNAVAILABLE : Indicates the linkset does not have any
“available” links and cannot transport traffic</para>
+ </listitem>
+ <listitem>
+ <para>SHUTDOWN : Indicates the linkset has been shutdown in the
configuration</para>
+ </listitem>
+ <listitem>
+ <para>AVAILABLE : Indicates the linkset has at least one available
link and can carry traffic</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>The possible state of Link are </para>
+ <itemizedlist>
+ <listitem>
+ <para>UNAVAILABLE : Indicates the link is not available to carry
traffic. This can occur if the link
+ is remotely or locally inhibited by a user. It can also be unavailable
if MTP2 has not been able to
+ successfully activate the link
connection.</para>
+ </listitem>
+ <listitem>
+ <para>SHUTDOWN : Indicates the link has been shutdown in the
configuration.</para>
+ </listitem>
+ <listitem>
+ <para>AVAILABLE : Indicates the link is active and able to transport
traffic</para>
+ </listitem>
+ <listitem>
+ <para>FAILED : A link is FAILED when the link is not shutdown but is
unavailable at layer2 for some reason.
+ For example Initial Alignment failed or the link test messages sent by
MTP3 are not being acknowledged.</para>
+ </listitem>
+ </itemizedlist>
</section>
</chapter>
=======================================
---
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Source_Build_Binary.xml
Thu Jan 6 10:46:53 2011
+++
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/Chapter-Source_Build_Binary.xml
Thu Jan 6 23:53:40 2011
@@ -47,7 +47,8 @@
<para><literal>docs</literal> : User guide for &THIS.PLATFORM;
&THIS.APPLICATION; </para>
</listitem>
<listitem>
- <para><literal>mobicents-ss7-service</literal> : SS7 service is the
core engine as explained in section <xref
linkend="design_overview_ss7_service" /> </para>
+ <para><literal>mobicents-ss7-service</literal> : SS7 service is the
core engine as explained in section
+ <xref
linkend="design_overview_ss7_service" /> </para>
</listitem>
<listitem>
<para><literal>native</literal> : native libraries component to
interact with SS7 Card installed on server, runtime component.
@@ -132,21 +133,140 @@
23:22:26,270 INFO [ShellExecutor] ShellExecutor listening at
/127.0.0.1:3435
23:22:26,270 INFO [SS7Service] [[[[[[[[[ Mobicents SS7 service started
]]]]]]]]]
]]>
- </screen>
+ </screen>
+
+ <para>If you have started &THIS.APPLICATION.DIRNAME;-&THIS.VERSION;
for the first time, there are no <literal>Linkset</literal> defined.
+ You need to use Shell Client to connect to
&THIS.APPLICATION.DIRNAME;-&THIS.VERSION; as defined in
+ <xref linkend="linkset_management" /> and create
<literal>Linkset</literal>
+ as per your need and SS7 card installed</para>
+
+ <para>Once the <literal>Linkset</literal> are defined, the state and
configuration of <literal>Linkset</literal> and <literal>Link</literal>
+ is persisted by <literal>LinksetManager</literal> which stands server
re-start.</para>
+
</section>
<section
id="stopping_binary">
<title>Stopping</title>
<para>You can shut down the server(s) you can run server(s) by
executing the <command>shutdown.sh -s</command> (Unix) or
<command>shutdown.bat -s</command> (Microsoft Windows) scripts in the
<filename><install_directory>/bin</filename>
- directory (on Unix or Windows). Note that if you properly stop the
server, you will see the following three lines as the last output in the
Unix terminal or Command Prompt:</para>
+ directory (on Unix or Windows). Note that if you properly stop the
server, you will see the following three lines as the
+ last output in the Unix terminal or Command
Prompt:</para>
<screen><![CDATA[[Server] Shutdown complete
Shutdown complete
Halting VM]]></screen>
+
</section>
</section>
</section>
-
+
+ <section id="configuring">
+ <title>
+ Configuring &THIS.PLATFORM; &THIS.APPLICATION;
+ </title>
+ <para>Configuration is done through an XML descriptor named
<filename>jboss-beans.xml</filename> and is
+ located at
<filename>$JBOSS_HOME/server/profile_name/deploy/mobicents-ss7-service/META-INF</filename>,
where
+ <application>profile_name</application> is the server profile
name.</para>
+
+ <section id="configuring_LinksetFactory">
+ <title>Configuring LinksetFactory</title>
+ <para> Concrete implementation of <literal>LinksetFactory</literal> is
responsible to create
+ new instances of corresponding <literal>Linkset</literal> when
instructed by <literal>LinksetManager</literal>.
+ &THIS.PLATFORM; &THIS.APPLICATION; defined three linkset factories :
</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><literal>DahdiLinksetFactory</literal>
</para>
+ <programlisting language="XML"
role="XML"><![CDATA[
+ <bean name="DahdiLinksetFactory"
+
class="org.mobicents.ss7.hardware.dahdi.oam.DahdiLinksetFactory">
+ </bean>]]>
+ </programlisting>
+ </listitem>
+ <listitem>
+
<para><literal>DialogicLinksetFactory</literal></para>
+ <programlisting language="XML"
role="XML"><![CDATA[
+ <bean name="DialogicLinksetFactory"
+
class="org.mobicents.ss7.hardware.dialogic.oam.DialogicLinksetFactory">
+ </bean>]]>
+ </programlisting>
+ </listitem>
+ <listitem>
+
<para><literal>M3UALinksetFactory</literal></para>
+ <programlisting
language="XML" role="XML"><![CDATA[
+ <bean name="M3UALinksetFactory"
+ class="org.mobicents.ss7.m3ua.oam.M3UALinksetFactory">
+ </bean>]]>
+ </programlisting>
+ </listitem>
+ </itemizedlist>
+ <para>Its highly unlikely that you would require all three factories on
same server. If you have <literal>dahdi</literal> based
+ SS7 card installed, keep <literal>DahdiLinksetFactory</literal> and
remove other two. If you have <literal>dialogic</literal> based
+ SS7 card installed, keep <literal>DialogicLinksetFactory</literal> and
remove other two. If you don't have any hardware installed and depend on
+ M3UA, keep <literal>M3UALinksetFactory</literal> and remove other two.
Nevertheless you can still use above factories in any combinations.
+ </para>
+ <para> <literal>LinksetFactoryFactory</literal> is just a call-back
class listening for new factories deployed
+ and maintains Map of available factory name vs factory. You should
never touch this bean.</para>
+ </section>
+ <section id="configuring_LinksetManager">
+ <title>Configuring LinksetManager</title>
+ <para>
+ <literal>LinksetManager</literal> is responsible for managing
<literal>Linkset</literal> and <literal>Link</literal>.
+ </para>
+ <programlisting language="XML" role="XML"><![CDATA[ <bean
name="LinksetManager" class="org.mobicents.ss7.linkset.oam.LinksetManager">
+ <property name="linksetFactoryFactory">
+ <inject bean="LinksetFactoryFactory" />
+ </property>
+ <property name="persistDir">${jboss.server.data.dir}</property>
+ </bean>]]></programlisting>
+ <para>LinksetManager when started looks for file
<filename>linksetmanager.xml</filename> containing serialized information of
+ underlying linksets and links. The directory path is configurable by
changing value of <literal>persistDir</literal> property.</para>
+ <warning><para><filename>linksetmanager.xml</filename> should never be
edited by hand. Always use Shell Client to connect to
+ &THIS.PLATFORM; &THIS.APPLICATION; and execute
commands.</para></warning>
+ </section>
+
+ <section id="configuring_ShellExecutor">
+ <title>Configuring ShellExecutor</title>
+ <para>
+ <literal>ShellExecutor</literal> is responsible for listening commands
from Shell Client Management and execute corresponding action.
+ </para>
+ <programlisting language="XML" role="XML"><![CDATA[ <bean
name="ShellExecutor" class="org.mobicents.ss7.ShellExecutor">
+ <property name="address">${jboss.bind.address}</property>
+ <property name="port">3435</property>
+ </bean>]]></programlisting>
+ <para>By default ShellExecutor listens at
<literal>jboss.bind.address</literal> and port <literal>3435</literal>.
+ You may set the <literal>address</literal> property to any valid IP
address that your host is assigned.
+ The shell commands are exchanged over TCP/IP.</para>
+ <note><para>To understand JBoss bind options look at
+ <ulink
url="http://docs.jboss.org/jbossas/docs/Installation_And_Getting_Started_Guide/5/html_single/index.html"></ulink>
</para> </note>
+
+ </section>
+
+ <section id="configuring_SS7Service">
+ <title>Configuring SS7Service</title>
+ <para>
+ <literal>SS7Service</literal> acts as core engine binding all the
components together.
+ To get holistic view of SS7 Service look at <xref
linkend="design_overview_ss7_service" />
+ </para>
+ <programlisting language="XML" role="XML"><![CDATA[ <bean
name="SS7Service" class="org.mobicents.ss7.SS7Service">
+
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="org.mobicents.ss7:service=SS7Service",exposedInterface=org.mobicents.ss7.SS7ServiceMBean.class,registerDirectly=true)</annotation>
+ <property name="jndiName">java:/mobicents/ss7/sccp</property>
+ <property
name="configPath">${catalina.home}/deploy/mobicents-ss7-service/sccp-routing.txt</property>
+ <property name="linksetManager"><inject bean="LinksetManager"
/></property>
+ <property name="shellExecutor"><inject bean="ShellExecutor"
/></property>
+ </bean>]]></programlisting>
+ <para> SS7 service creates new instance of SCCP stack and binds it to
JNDI address <literal>java:/mobicents/ss7/sccp</literal>.
+ The JNDI name can be configured to any valid JNDI name specific to your
application.</para>
+ <para><literal>configPath</literal> is configuration path for SCCP
Stack.
+ To know more about SCCP configuration refer <xref linkend="sccp" />
</para>
+ <para><literal>linksetManager</literal> property holds the reference to
<classname>LinksetManager</classname> bean</para>
+ <para>
+ <literal>shellExecutor</literal> property holds the reference to
<classname>ShellExecutor</classname> bean.
+ <classname>SS7Service</classname> creates link between
<classname>ShellExecutor</classname> and
+ <classname>LinksetManager</classname> such that all commands for
linkset are directed to <classname>LinksetManager</classname>.
+ </para>
+ </section>
+ </section>
+
<section
id="source_code">
<title>
@@ -205,7 +325,7 @@
</programlisting>
<para>Use "dialogiclinux" profile if linux server on which this code
is built already has dialogic module installed.
- Make sure you pass "include.dialogic" system property pointing to
correct directory where dilogic libraries are installed</para>
+ Make sure you pass "include.dialogic" system property pointing to
correct directory where dialogic libraries are installed</para>
<programlisting>
[usr]$ cd &THIS.APPLICATION.DIRNAME;-&THIS.VERSION;
[usr]$ mvn install -Pdialogclinux -Dinclude.dialogic=/usr/include/dialogic
@@ -218,7 +338,7 @@
</programlisting>
<note>
<para>
- If you are using &THIS.PLATFORM; &THIS.APPLICATION; without any
native dependencies, &THIS.PLATFORM; &THIS.APPLICATION; can run in any OS.
+ If you are using &THIS.PLATFORM; &THIS.APPLICATION; without any
native dependencies, &THIS.PLATFORM; &THIS.APPLICATION; can run on any OS.
</para>
</note>
=======================================
---
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/SS7_Stack_User_Guide.xml
Wed Jan 5 03:30:32 2011
+++
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/SS7_Stack_User_Guide.xml
Thu Jan 6 23:53:40 2011
@@ -8,7 +8,9 @@
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="Chapter-Introduction.xml" />
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="Chapter-Design_Overview.xml" />
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="Chapter-Source_Build_Binary.xml" />
+ <!--
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="Chapter-Installation.xml" />
+ -->
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="Chapter-Setup_Hardware.xml" />
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="Chapter-Linkset_Management.xml" />
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="Chapter-SCCP.xml" />
=======================================
---
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/images/binnar-structure.png
Thu Jan 6 10:46:53 2011
+++
/trunk/protocols/ss7/docs/sources/src/main/resources/en-US/images/binnar-structure.png
Thu Jan 6 23:53:40 2011
Binary file, no diff available.