MFCR2/OpenR2

 

Background

R2 signalling is a channel associated signalling (CAS) system developed in the 1960s that is still in use today in Europe, Latin America, Australia, and Asia. R2 signalling exists in several country versions or variants in an international version called Consultative Committee for International Telegraph and Telephone (CCITT-R2). The R2 signalling specifications are contained in International Telecommunication Union Telecommunication Standardization Sector (ITU-T) Recommendations Q.400 through Q.490.

R2 signalling operates across E1 digital facilities. The E1 digital facilities carrier runs at 2.048 Mbps and has 32 time-slots. E1 time-slots are numbered TS0 to TS31, where TS1 through TS15 and TS17 through TS31 are used to carry voice, which is encoded with pulse code modulation (PCM), or to carry 64 kbps data.

 


R2 signalling

The two elements to R2 signalling are line signalling (supervisory signals) and inter-register signalling (call setup control signals). 
Most country variations in R2 signalling are with the inter-register signalling configuration.

Line signalling (Supervisory Signals)

You can use line signalling, which uses TS16 (bits A, B, C, and D), for supervisory purposes such as handshaking between two offices for call setup and termination. In the case of CCITT-R2 signalling, only bits A and B are used (bit C is set to 0 and bit D is set to 1). For two-way trunks, the supervision roles for forward and backward signalling vary on a call-by-call basis.

Line signaling is defined with these types:

  • R2-Digital—R2 line signaling type ITU-U Q.421, typically used for PCM systems (where A and B bits are used).

  • R2-Analog—R2 line signaling type ITU-U Q.411, typically used for carrier systems (where a Tone/A bit is used).

  • R2-Pulse—R2 line signaling type ITU-U Supplement 7, typically used for systems that employ satellite links (where a Tone/A bit is pulsed).

 

Inter-register signalling (Call Setup Control Signals)

The concept of address signalling in R2 is slightly different than that used in other CAS systems. In R2 signalling, the exchanges are considered registers and the signalling between these exchanges is called inter-register signalling . Inter-register signalling uses forward and backward in-band multi-frequency signals in each time slot to transfer called and calling party numbers, as well as the calling party category.  Multi-frequency signals used in inter-register signalling are divided in forward signal groups (I and II), and backward signal groups (A and B). Inter-register signalling starts after the "Seize-ACK" of the line.

Note: Some countries use two-out-of-six in-band dual tone multi-frequency (DTMF) instead of forward and backward in-band multi-frequency signals

 There are three types of interregister signaling:

  • R2-Compelled—When a tone-pair is sent from the switch (forward signal), the tones stay on until the remote end responds (sends an ACK) with a pair of tones that signals the switch to turn off the tones. The tones are 'compelled' to stay on until they are turned off.

  • R2-Non-Compelled —The tone-pairs are sent (forward signal) as pulses so they stay on for a short duration. Responses (backward signals) to the switch (Group B) are sent as pulses. There are no Group A signals in non-compelled interregister signaling.

  • R2-Semi-Compelled—Forward tone-pairs are sent as compelled. Responses (backward signals) to the switch are sent as pulses. It is the same as compelled, except that the backward signals are pulsed instead of continuous.

 

MFC/R2 (Multi Frequency Compelled R2)

MFC/R2 is a peer-to-peer signalling protocol.  This means there are just 2 parties involved in an R2, E1 link and both parties behave in the same way (unlike PRI where you have the "NET" and "CPE" sides).  

The protocol defines 2 types of signals:

Line Signals: are used to monitor the state of the call. These are sent using CAS signals on the 16th channel of an E1 circuit.  All CAS signalling for each voice channel is multiplexed through this channel. Each side of the link updates their 4 CAS signal bits known as ABCD bits every 2ms (i.e. the values are streamed over the line).
                        MFC/R2 uses 2 of those 4 bits to indicate transition between the following circuit states :

              Idle, Block, Seize, Seize Ack, Clear Back, Forced Release, Clear Forward, Answer

Note: 2 bits can not represent these 7 signals, therefore some of the signals share the same bit pattern.  
          This is not a problem since state changes can occur only in a specific sequential order.

 

Address (inter-register) Signals consist of 15 different MF signals, which are audible tones composed of 2 frequencies that travel using the audio channel itself.  The ITU defines which frequencies can be mixed to compose the MF tones and how to assign meanings to these tones. However, some countries assign different meanings to this tones.  The MF tones are used to transmit ANI (Automatic Number Identification, commonly known by some users as Caller ID), DNIS (Dialed Number Identification Service, that is, the dialed number or destination number) and the Calling Party Category.  As soon as the call is either accepted or rejected, the MF detector is turned off and no other MF signals will be exchanged, the audio channel can then be used for voice or early media.



OpenR2 Library

OpenR2 is an open source library that implements the MFC/R2 signalling over E1 lines and is most often used with the Zapata and DAHDI telephony interfaces.  There is also support for use with Freeswitch and FreeTDM.

For detailed installation instructions please see OpenR2 Libary Installation


 

Additional Resources

Cisco E1 R2 signalling Theory page -> http://www.cisco.com/en/US/tech/tk652/tk653/technologies_tech_note09186a00800943c2.shtml
Unicall MFC/R2 protocol module documentation -> http://www.soft-switch.org/unicall/mfcr2/index.html

Return to Documentation Home I Return to Sangoma Support