IMPORTANT NOTICE: This page contains information about a feature as it is specified in the relevant 3GPP/GSM/ITU/ETSI or other specifications. This does not mean that feature is already implemented in Osomocom, or that implementation is work in progress.

Circuit Switched Data (CSD)

CSD is a way to transport user data over circuit-switched GSM calls. It is the cellular equivalent of the use of analog modems or ISDN TA over wired telephony networks: You dial a number, the usual call control protocol for signaling creates a dedicated, circuit switched connection to the destination. If they answer the call, a transparent communication channel is established between both sides.

GSM CSD (in its single-slot variants, excluding HSCSD) implements

22.002 Bearer Service 22.003 Teleservice 43.010 model Description
BS20T ? 2b transparent synchronous data
BS30T ? 1b transparent asynchronous data. first converted aysnc->sync, then treated like sync
BS20NT ? 3b non-transparent asynchronous data. Uses RLP (ARQ) protocol for less errors, but creates variable delay.
? TS62T 5a transparent facsimile group 3

Bearer Services

Bearer Service Speed (bit/s) sync/async Mandatory in GSM-R
BS21 300 async
BS22 1200 async
BS23 1200/75 async
BS24 2400 async transparent
BS25 4800 async transparent
BS26 9600 async transparent
BS31 1200 sync
BS32 2400 sync
BS33 4800 sync
BS34 9600 sync

Facsimile / Telefax

CSD is also what is used to implement Facsimile (Telefax) services over GSM.


When CSD services (sync/async/fax) are used between two GSM subscribers, no interworking is required. The data is passed transparently end-to-end.

However, when interworking with the wired network is required, an interworking function (IWF) is required.

Interworking with ISDN data calls

This is the situation where a GSM mobile subscriber is establishing a CSD call to a native ISDN subscriber.

In this case, the V.110 signal is rate-adapted at the IWF to the 64kBps of the ISDN bearer chanel.

In the traditional GSM architecture, there are multiple rate adaptations happening in the path:
  • from the Um interface to TRAU data frames on 16k sub-slots over the Abis interface
  • from the TRAU data frames on 16k sub-slots to the standard V.110 on 64k B-channels on the A interface

In case of a modern, IP based GSM (like with OsmoBTS), the entire rate adaptation would happen in the BTS, before it outputs V.110 frames on 64k RFC4040 CLEARMODE RTP.

To do so, the BTS must (in uplink)
  • perform convolutional decoding, de-puncturing, de-interleaving, etc.
  • perform the RA1' to RA1 rate adaptation function (modified V.110 frames to normal V.110 frames)
  • perform the RA2 rate adaptation function (V.110 frames on 8k/16k/32k sub-slot to 64k)
  • put the resulting data in RTP packets according to RFC4040

Interworking with analog modems in POTS or ISDN

In this case, the IWF terminates the V.110 from the GSM RAN and implements a modem towards the external POTS/ISDN subscriber. V.110 is used in synchronous mode for Fax, carrying 64bit frames defined in TS 43.045 Section

Interworking with analog Telefax in POTS or ISDN

This is similar to the analog modem situation above.

Rate Adaptation functions


  • only used with asynchronous interfaces
  • async data padded by stop elements to fit the nearest higher synchronous bit rate

Radio channel types

Name radio interface rate (kbit/s) service rate (kbit/s) frames per block bits per frame frame duration coding/interleaving (see 3GPP TS 45.003) service
TCH/F9.6 12.0 9.6 4 60 5ms section 3.3: rate 1/2 puncturing 32 bits; 456 coded bits, interleaved over 22 bursts TS 43.010 6.4.1
TCH/F4.8 6.0 4.8 2 60 10ms section 3.4: rate 1/3; 456 coded bits, interleaved like TCH/F9.6 TS 43.010 6.4.1
TCH/H4.8 6.0 4.8 4 60 10ms section 3.5: rate 1/2 puncturing 32 bits; 456 coded bits interleaved like TCH/F9.6 ?
TCH/F2.4 3.6 <= 2.4 2 36 10ms section 3.6: rate 1/6; 456 coded bits, interleaved like TCH/FS (over 8 bursts) ?
TCH/H2.4 3.6 <= 2.4 4 36 10ms section 3.7: rate 1/3; 456 coded bits, interleaved like TCH/F9.6 ?
TCH/F14.4 14.5 14.4 1 290 20ms section 3.8: rate 1/2, puncturing 132 bits; 456 coded bits interleaved like TCH/F9.6 TS 43.010 6.4.2

Representation in RTP

See 3GPP TS 48.103 section "RTP payload" as well as Section 5.6.

It specifies CSData uses Clear mode pseudo-codec a per RFC4040, either
  • without redundancy (redundancy level 1) / RTP PT 120
  • with redundancy (redundancy level 2 or 3) / RTP PT 121
General comments:
  • SDP uses "CLEARMODE/8000"
  • 64kBps stream, i.e. 160 octets every 20ms

Implementation Status

We currently don't implement these features yet, but we are aiming at implementing them in 2023. For details, see all Issues tagged with CSD

Relevant specifications

Number Description
3GPP TS 22.002 CS Bearer Services
3GPP TS 22.003 CS Teleservices
3GPP TS 22.004
3GPP TS 27.002 L2RCOP (protocol beween async characters and RLP in non-transparent mode)
3GPP TS 43.010 Description of connection types. Note particularly Table 4 + section 6.4
3GPP TS 43.045 Fax G3
3GPP TS 44.021 Rate adaptation on MS-BSS interface; RA0; RA1/RA1' single-slot
3GPP TS 44.022 RLP protocol (for non-transparent async)
3GPP TS 27.001 TA functions in MS (incl. filtering of status bits)
3GPP TS 27.002 TA functions for async bearers (incl. data compression)
3GPP TS 27.003 TA functions for sync bearers
3GPP TS 48.020 Rate adaptation on BSS-MSC interface; RA1/RA1' multi-slot, RA1''
3GPP TS 48.060 TRAU frame format for classic E1 BTS (Section 5.3, 5.5.3, 6.7)
3GPP TS 29.007 Interworking between PLMN and ISDN
IETF RFC4040 RTP payload format for 64kbps transparent call
ITU-T V.110 Rate adaptation

Updated by fixeria 5 months ago · 22 revisions

Add picture from clipboard (Maximum size: 48.8 MB)