Loop detection system

What is a loop?

Loop occurs in case if after sending a call to supplier, we get the same call coming from our customer.
If after this we continue forwarding a call to some supplier - we will close the loop.
If nobody from the loop chain has loop detection activated - the same call could be looped many times.

Why does the loop occur?

Usually, due to billing settings, when someone from the loop chain performs routing not by least cost.
This could be either misconfiguration, or intentional setting - for example, routing some destination codes with negative profit by someone from the loop chain.

Loop examples

Example 1.
We get a call from customer А and forward it to supplier B.
Then we get this call again from customer B and forward it to supplier C (for example, due to random routing).
Supplier C delivers a call to end user.
In this case we and customer B will see the same call twice inside active calls.

Example 2.
We get a call from customer А and forward it to supplier B.
Then we get the same call from customer С and forward it to supplier Б.
Supplier B delivers call to end user.
In this case we and supplier B will see the same call twice inside active calls.

Example 3.
We get a call from customer А and forward it to supplier B.
Then we get the same call from customer С and forward to to supplier B.
Supplier B delivers call to end user.
In this case we will see the same call twice inside active calls.

Can looped call be answered?

Yes.
Due to dynamic routing, which someone from loop chain might perform, the call could be finally routed to end user.

Why loops are bad?

  • looping increases PDD of a call.
  • in case if call has been answered, voice quality becomes worse
  • some customers might decline to pay for the looped calls, saying that you have problems with billing and that you've mistakenly invoiced for the same call several times.
  • loop occupies a interconnection capacity and might block passing normal calls.
  • some suppliers might block interconnection with you for a long time even on detection of a single loop from you.

How Smartswitch fights loops?

There is an option loop detection inside each peer with possible values:
  • no
    Loop detection doesn't occur
  • detect
    System tries to detect a loop in the real-time mode, thus immediately during call routing.
    The call is accounted as loop in case if there is already active call present with the same caller and callee IDs, linked with the same peer.
    On loop detected, the loop is stored in database and e-mail is sent to configured address.
  • hangup
    The same as detect, but detected loops are hanged up immediately.

This option could be set either individually per each peer/company, or for call peers/companies globally.

Русский интерфейс

Also available in: PDF HTML TXT