|This article does not cite any references or sources. (January 2014)|
In telecommunications, in-band signaling is the sending of metadata and control information within the same band or channel used for voice (e.g. DTMF tones) and can be heard by the callers, as opposed to out-of-band signals (e.g. SS7 control signals) which cannot be heard as they are on a different channel or band.
For example, when dialing from a land-line telephone, the telephone number is encoded and transmitted across the telephone line in form of dual-tone multi-frequency signaling (DTMF). The tones control the telephone system by instructing the telephone switch where to route the call. These control tones are sent over the same channel and in the frequency range (300Hz to 3.4kHz) as the audio of the telephone call. In-band signaling is also used on older telephone carrier systems to provide inter-exchange information for routing calls. Examples of this kind of in-band signaling system are SS5 and R2.
Separating the control signals, also referred to as the control plane, from the data (if a bit-transparent connection is desired) is usually done by escaping the control instructions. Occasionally, however, networks are designed so that data is (to a varying degree) garbled by the signaling. Allowing data to become garbled is usually acceptable when transmitting sounds between humans, since the users rarely notice the slight degradation, but this leads to problems when sending data that has very low error tolerance, such as information transmitted using a modem.
In-band signaling is insecure because it exposes control signals, protocols and management systems to end users, which may result in falsing. In the 1960s and 1970s, some individuals, referred to as phone phreaks, used blue boxes for deliberate falsing, in which the appropriate tones for routing were intentionally generated, enabling the caller to abuse functions intended for testing and administrative use and to make free long-distance calls.
Modems may also interfere with in-band signaling, so in some countries, a guard tone is employed to prevent this.
As a method of in-band signaling, DTMF tones were also used by cable television broadcasters to indicate the start and stop times of local insertion points during station breaks for the benefit of cable companies. Until better, out-of-band signaling equipment was developed in the 1990s, fast, unacknowledged, and loud DTMF tone sequences could be heard during the commercial breaks of cable channels in the United States and elsewhere.
These DTMF sequences were sent by the originating cable network's equipment at the uplink satellite facility, and were decoded by equipment at local cable companies. A specific tone sequence indicated the exact time that the feeds should be switched to and away from the master control feed, to locally-broadcast commercials.
An example of a cable company DTMF sequence code would communicate the following to the cable company's broadcast equipment:
SWITCH TO LOCAL NOW - SWITCH TO LOCAL NOW - PREPARE TO SWITCH BACK - PREPARE TO SWITCH BACK - SWITCH BACK TO NATIONAL NOW - SWITCH BACK TO NATIONAL NOW - "IF YOU HAVEN'T SWITCHED BACK TO NATIONAL NOW, DO SO IMMEDIATELY"
DTMF signaling in the cable industry went away because it was distracting to viewers, it was susceptible to interference when DTMF tones were sounded by characters in television shows (a character dialing a Touch-Tone telephone in a television show might convince the cable company computers to switch away from a "hot feed" to dead air), and the cost of human-imperceptible signaling technologies decreased.
In-band signaling applies only to Channel Associated Signaling (CAS). In Common Channel Signaling (CCS) separate channels are used for control and data, as opposed to the shared channel in CAS, so all control is out-of-band by definition.
In computer programming, an example of in-band signaling are magic numbers, used for signaling of file formats.
- Encapsulation: The bundling of the control data in the packet's header and then removing the header (and/or footer) of the packet at the far end, restoring the data to be the same as the original.
- Bit stuffing: The insertion of noninformation or escape characters to modify, synchronize and justify the data so it never looks like signaling information (and remove the stuffed bits and escape codes at the far end, restoring the data to be the same as the original).