<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.telcobridges.com/w/index.php?action=history&amp;feed=atom&amp;title=ISUP%3ACircuit_continuity_testing</id>
	<title>ISUP:Circuit continuity testing - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://docs.telcobridges.com/w/index.php?action=history&amp;feed=atom&amp;title=ISUP%3ACircuit_continuity_testing"/>
	<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/w/index.php?title=ISUP:Circuit_continuity_testing&amp;action=history"/>
	<updated>2026-11-09T12:21:43Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://docs.telcobridges.com/w/index.php?title=ISUP:Circuit_continuity_testing&amp;diff=25239&amp;oldid=prev</id>
		<title>Allyntree: needs revising edit</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/w/index.php?title=ISUP:Circuit_continuity_testing&amp;diff=25239&amp;oldid=prev"/>
		<updated>2018-03-16T18:46:43Z</updated>

		<summary type="html">&lt;p&gt;needs revising edit&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:46, 16 March 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;As &lt;/del&gt;[[SS7]] signaling is out-of-band compared to the circuits (voice/data channels), there is &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;sometimes the &lt;/del&gt;need to validate the integrity of a circuit before using it to establish connections. This is especially true for connections that &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;have to &lt;/del&gt;go through a satellite path. There are two methods for initiating a continuity test: &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;within &lt;/del&gt;a call &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;or &lt;/del&gt;outside a call&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;)&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[SS7]] signaling is out-of-band compared to the circuits (voice/data channels), &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;therefore, at times &lt;/ins&gt;there is &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;a &lt;/ins&gt;need to validate the integrity of a circuit before using it to establish connections. This is especially true for connections that go through a satellite path. There are two methods for initiating a continuity test: &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;in &lt;/ins&gt;a call &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;and &lt;/ins&gt;outside a call.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;During &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;setup time&lt;/del&gt;, a circuit is configured with options.  These options are used by the [[ISUP]] layer when a remote SS7 node queries information about a circuit and &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;do &lt;/del&gt;not affect the behavior of the layer. Three of &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;those &lt;/del&gt;options are NONE, STATISTICAL and PER-CALL. When the &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;first option (&lt;/del&gt;NONE) is used, the host application should not issue any continuity check on the specific circuit. There is no side effect when issuing a continuity check on such a circuit other than not respecting the local node configuration as seen by other SS7 nodes.  When the &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;last option is used &lt;/del&gt;(PER-CALL), the host application should issue a continuity check for every outgoing call. The &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;remaining option &lt;/del&gt;(STATISTICAL) lets the host application decide on a per-call basis if continuity testing should be done.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;During &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;the set up&lt;/ins&gt;, a circuit is configured with options.  These options are used by the [[ISUP]] layer when a remote SS7 node queries information about a circuit and &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;does &lt;/ins&gt;not affect the behavior of the layer. Three of &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;these &lt;/ins&gt;options are NONE, STATISTICAL and PER-CALL. When the NONE) &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;option &lt;/ins&gt;is used, the host application should not issue any continuity check on the specific circuit. There is no side effect when issuing a continuity check on such a circuit other than not respecting the local node configuration as seen by other SS7 nodes.  When the (PER-CALL) &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;option is used&lt;/ins&gt;, the host application should issue a continuity check for every outgoing call. The (STATISTICAL) &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;option &lt;/ins&gt;lets the host application decide on a per-call basis if continuity testing should be done.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Since the circuit options &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;don’t &lt;/del&gt;influence the behavior of the ISUP layer, the three ways to issue continuity checks are to 1) set the ‘fContChkForOutgoing’ field in the circuit configuration structure upon allocation or 2) set the ‘continuity test required’ field of the ‘nature of connection indicators’ [[information element|IE]] into an outgoing [[IAM]] message or 3) send a [[CCR]] (continuity check request) primitive &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;upon &lt;/del&gt;an idle circuit. The ‘fContChkForOutgoing’ should be set to TBX_TRUE when the circuit option CONTINUITY_CHECK_PERCALL is used to be consistent with the configuration. This will instruct the ISUP layer to force the proper IE configuration for every outgoing call.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Since the circuit options &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;do not &lt;/ins&gt;influence the behavior of the ISUP layer, the three ways to issue continuity checks are to 1) set the ‘fContChkForOutgoing’ field in the circuit configuration structure upon allocation&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, &lt;/ins&gt;or 2) set the ‘continuity test required’ field of the ‘nature of connection indicators’ [[information element|IE]] into an outgoing [[IAM]] message&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, &lt;/ins&gt;or 3) send a [[CCR]] (continuity check request) primitive &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;on &lt;/ins&gt;an idle circuit. The ‘fContChkForOutgoing’ should be set to TBX_TRUE when the circuit option CONTINUITY_CHECK_PERCALL is used to be consistent with the configuration. This will instruct the ISUP layer to force the proper IE configuration for every outgoing call.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; When using configuration parameter fContChkForOutgoing’, the TB640 will enforce the ‘continuity check required’ field in the ‘nature of connection indicators’ IE for every outgoing call. To be consistent, the host application should set the circuit option to CONTINUITY_CHECK_PERCALL.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; When using configuration parameter fContChkForOutgoing’, the TB640 will enforce the ‘continuity check required’ field in the ‘nature of connection indicators’ IE for every outgoing call. To be consistent, the host application should set the circuit option to CONTINUITY_CHECK_PERCALL.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l9&quot;&gt;Line 9:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Continuity testing within a call ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Continuity testing within a call ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This circuit testing occurs when the forward side (originating side) sets the ‘continuity test required’ field of the ‘nature of connection indicators’ IE into the IAM message. This indicates to the backward end to activate a physical loopback (see note below) on the circuit associated with the call. Then, the forward side can proceed with the circuit testing, usually by sending a test tone and analyzing the returned data.   The forward side indicates to the backward side about the result of the test by sending a COT (continuity test report) which will then remove the loopback from the circuit. In case of success, the call can proceed as usual (see call flow 6.3.4.9). If the test fails, the forward side &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;then &lt;/del&gt;starts a ‘continuity re-check’ sequence by sending a CCR (continuity check request) (see call flow  XXXX). Because the first test fails, it is not recommended to keep the pending call opened and, therefore, the host application should consider it as closed. Upon reception of the CCR, the backward side re-activates the loopback on the circuit and waits for the test report (COT). Again, after analyzing the test data, the forward end sends a report (COT) to the backward end. In case of success, the circuit is returned to the idle state. In case of failure, it is recommended that the host applications (both forward and backward) block the circuit to prevent subsequent calls on the circuit (see call flow 6.3.4.12).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This circuit testing occurs when the forward side (originating side) sets the ‘continuity test required’ field of the ‘nature of connection indicators’ IE into the IAM message. This indicates to the backward end to activate a physical loopback (see note below) on the circuit associated with the call. Then, the forward side can proceed with the circuit testing, usually by sending a test tone and analyzing the returned data.   The forward side indicates to the backward side about the result of the test by sending a COT (continuity test report)&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, &lt;/ins&gt;which will then remove the loopback from the circuit. In case of success, the call can proceed as usual (see call flow 6.3.4.9). If the test fails, the forward side starts a ‘continuity re-check’ sequence by sending a CCR (continuity check request) (see call flow  XXXX). Because the first test fails, it is not recommended to keep the pending call opened and, therefore, the host application should consider it as closed. Upon reception of the CCR, the backward side re-activates the loopback on the circuit and waits for the test report (COT). Again, after analyzing the test data, the forward end sends a report (COT) to the backward end. In case of success, the circuit is returned to the idle state. In case of failure, it is recommended that the host applications (both forward and backward) block the circuit to prevent subsequent calls on the circuit (see call flow 6.3.4.12).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; If the backward-end circuit is located on a TB640 blade, there is an easy way to do a trunk resource physical loopback. The application only needs to allocate a full-duplex trunk resource (which should already been done anyway if it plans to receive calls on this specific trunk) and connect it on itself with a half-duplex connection (source connected on destination) using the connection API. To achieve this, use the same hTrunkRes as the source and destination in the TB640_MSG_ID_CONN_OP_CREATE message and set the connection type to half-duplex. No other resource is required.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; If the backward-end circuit is located on a TB640 blade, there is an easy way to do a trunk resource physical loopback. The application only needs to allocate a full-duplex trunk resource (which should already been done anyway if it plans to receive calls on this specific trunk) and connect it on itself with a half-duplex connection (source connected on destination) using the connection API. To achieve this, use the same hTrunkRes as the source and destination in the TB640_MSG_ID_CONN_OP_CREATE message and set the connection type to half-duplex. No other resource is required.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l16&quot;&gt;Line 16:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 16:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Continuity testing outside a call==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Continuity testing outside a call==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This circuit testing occurs when one of the nodes wants to validate a currently idle circuit.  It is recommended that the switch first blocks the circuit to prevent calls to use the circuit during the testing.   The testing pattern is similar as for the continuity testing within a call except that the initial testing is indicated by a ‘CCR’ sent by the testing side (instead of being embedded in an IAM primitive).   Refer to call flows  6.3.4.14,  6.3.4.15 and 6.3.4.16.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This circuit testing occurs when one of the nodes wants to validate a currently idle circuit.  It is recommended that the switch first blocks the circuit to prevent calls to use the circuit during the testing.   The testing pattern is similar as for the continuity testing within a call except that the initial testing is indicated by a ‘CCR’ sent by the testing side (instead of being embedded in an IAM primitive).   Refer to call flows  6.3.4.14,  6.3.4.15 and 6.3.4.16.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[category:Needs revising]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Allyntree</name></author>
	</entry>
	<entry>
		<id>https://docs.telcobridges.com/w/index.php?title=ISUP:Circuit_continuity_testing&amp;diff=2339&amp;oldid=prev</id>
		<title>Ktrueman: initial content</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/w/index.php?title=ISUP:Circuit_continuity_testing&amp;diff=2339&amp;oldid=prev"/>
		<updated>2009-08-24T21:30:30Z</updated>

		<summary type="html">&lt;p&gt;initial content&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;As [[SS7]] signaling is out-of-band compared to the circuits (voice/data channels), there is sometimes the need to validate the integrity of a circuit before using it to establish connections. This is especially true for connections that have to go through a satellite path. There are two methods for initiating a continuity test: within a call or outside a call).&lt;br /&gt;
&lt;br /&gt;
During setup time, a circuit is configured with options.  These options are used by the [[ISUP]] layer when a remote SS7 node queries information about a circuit and do not affect the behavior of the layer. Three of those options are NONE, STATISTICAL and PER-CALL. When the first option (NONE) is used, the host application should not issue any continuity check on the specific circuit. There is no side effect when issuing a continuity check on such a circuit other than not respecting the local node configuration as seen by other SS7 nodes.  When the last option is used (PER-CALL), the host application should issue a continuity check for every outgoing call. The remaining option (STATISTICAL) lets the host application decide on a per-call basis if continuity testing should be done.&lt;br /&gt;
&lt;br /&gt;
Since the circuit options don’t influence the behavior of the ISUP layer, the three ways to issue continuity checks are to 1) set the ‘fContChkForOutgoing’ field in the circuit configuration structure upon allocation or 2) set the ‘continuity test required’ field of the ‘nature of connection indicators’ [[information element|IE]] into an outgoing [[IAM]] message or 3) send a [[CCR]] (continuity check request) primitive upon an idle circuit. The ‘fContChkForOutgoing’ should be set to TBX_TRUE when the circuit option CONTINUITY_CHECK_PERCALL is used to be consistent with the configuration. This will instruct the ISUP layer to force the proper IE configuration for every outgoing call.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; When using configuration parameter fContChkForOutgoing’, the TB640 will enforce the ‘continuity check required’ field in the ‘nature of connection indicators’ IE for every outgoing call. To be consistent, the host application should set the circuit option to CONTINUITY_CHECK_PERCALL.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Continuity testing within a call ==&lt;br /&gt;
This circuit testing occurs when the forward side (originating side) sets the ‘continuity test required’ field of the ‘nature of connection indicators’ IE into the IAM message. This indicates to the backward end to activate a physical loopback (see note below) on the circuit associated with the call. Then, the forward side can proceed with the circuit testing, usually by sending a test tone and analyzing the returned data.   The forward side indicates to the backward side about the result of the test by sending a COT (continuity test report) which will then remove the loopback from the circuit. In case of success, the call can proceed as usual (see call flow 6.3.4.9). If the test fails, the forward side then starts a ‘continuity re-check’ sequence by sending a CCR (continuity check request) (see call flow  XXXX). Because the first test fails, it is not recommended to keep the pending call opened and, therefore, the host application should consider it as closed. Upon reception of the CCR, the backward side re-activates the loopback on the circuit and waits for the test report (COT). Again, after analyzing the test data, the forward end sends a report (COT) to the backward end. In case of success, the circuit is returned to the idle state. In case of failure, it is recommended that the host applications (both forward and backward) block the circuit to prevent subsequent calls on the circuit (see call flow 6.3.4.12).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; If the backward-end circuit is located on a TB640 blade, there is an easy way to do a trunk resource physical loopback. The application only needs to allocate a full-duplex trunk resource (which should already been done anyway if it plans to receive calls on this specific trunk) and connect it on itself with a half-duplex connection (source connected on destination) using the connection API. To achieve this, use the same hTrunkRes as the source and destination in the TB640_MSG_ID_CONN_OP_CREATE message and set the connection type to half-duplex. No other resource is required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Continuity testing outside a call==&lt;br /&gt;
This circuit testing occurs when one of the nodes wants to validate a currently idle circuit.  It is recommended that the switch first blocks the circuit to prevent calls to use the circuit during the testing.   The testing pattern is similar as for the continuity testing within a call except that the initial testing is indicated by a ‘CCR’ sent by the testing side (instead of being embedded in an IAM primitive).   Refer to call flows  6.3.4.14,  6.3.4.15 and 6.3.4.16.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[category:Needs revising]]&lt;/div&gt;</summary>
		<author><name>Ktrueman</name></author>
	</entry>
</feed>