Osmobts Abis
Osmobts Abis
FT
OsmoBTS Abis Protocol Specification
A
by Neels Hofmeyr and Harald Welte
R
D
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License,
Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts,
and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
The Asciidoc source code of this manual can be found at http://git.osmocom.org/osmo-gsm-manuals/
HISTORY
Contents
1 Introduction 1
2 Overview 1
2.1 Identities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
3 IPA Multiplex 2
3.1 IPA Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.2 IPA Stream Identifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.3 IPA Connection Management (CCM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.3.1 Identity Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.3.2 IPA CCM Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
5.7.5 RSL_IE_IPAC_REMOTE_PORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.7.6 RSL_IE_IPAC_LOCAL_PORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.7.7 RSL_IE_IPAC_SPEECH_MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.7.8 RSL_IE_IPAC_LOCAL_IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.7.9 RSL_IE_IPAC_CONN_STAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.7.10 RSL_IE_IPAC_CONN_ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.7.11 RSL_IE_IPAC_RTP_PAYLOAD2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.8 A-bis RSL Initialization / BTS bring-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
7 Glossary 46
1 Introduction
This document describes the A-bis interface of OsmoBTS. Based on 3GPP TS 12.21 and 08.58, this document indicates which
of the 3GPP specified A-bis messages and IEs are implemented according to 3GPP specifications, which of these are not or not
fully implemented, as well as OsmoBTS-specific extensions to the A-bis interface not specified by 3GPP.
Extensions to the A-bis interface specific to OsmoBTS are detailed in this document. For details on the messages and IEs that
comply with above mentioned 3GPP specifications, please refer to those documents.
2 Overview
The OsmoBTS A-bis interface consists of traffic management messages (RSL, Radio Signalling Link) and network management
messages (OML, Operation & Maintenance Link), encapsulated in an IPA multiplex.
OML and RSL each use a separate TCP connection.
Both TCP connections for OML and RSL are established in the BTS → BSC direction, i.e. the BTS is running as a TCP client,
while the BSC is running as a TCP server.
The BTS first establishes the TCP connection for OML. Via OML, the BSC instructs the BTS to which IP address the RSL
connection shall be established.
2.1 Identities
The BTS is locally configured (via administrative means, out of band of this specification) to have a Unit ID. The Unit ID consists
of three parts:
3 IPA Multiplex
The ETSI/3GPP specifications for A-bis transport (ETSI/3GPP TS 08.56) specify the transmission of RSL and OML messages
over a LAPD based framing on top of 64kBit/s signalling times slots (B-channels) on E1 lines.
OsmoBTS does not implement this LAPD based transport, but instead implements A-bis over IP in a flavor first observed by
ip.access nanoBTS products. The OsmoBTS implementation is a clean-room re-implementation based on the observation and
dissection of protocol traces.
LAPD as used in E1 signalling channels provides in-order transmission and reliable delivery. This is why TCP was chosen as
Layer 4 transport protocol on top of IP. TCP however, is a stream based transport protocol, which doesn’t preserve the boundaries
of messages.
To work around this shortcoming, an additional framing layer called the IPA multiplex was introduced between TCP and the
RSL and OML messages.
Each higher-layer PDU is encapsulated by a three-byte IPA header with the following structure:
The IPA Stream Identifier serves to differentiate different streams within the multiplex. In the context of A-bis, it can be seen as
analogous to the LAPD TEI on classic A-bis over E1.
The following IPA stream identifiers are being used in A-bis/IP:
The IPA Connection Management is a sub-layer underneath the IPA multiplex which is used to manage the connection itself. It
supports functions like Identity Management and Keep-Alive.
When a BTS connects to the BSC, the BSC must identify the connected BTS somehow. In ETSI/3GPP A-bis, the E1 multiplex +
signalling timeslot number is used for this. In IP, there is no similar usable identity. Hence, the Unit ID is used for this purpose.
Direction Operation
BTS → BSC BTS connects the TCP connection to be used with IPA
BTS ← BSC BSC requests BTS identity with ID_GET
BTS → BSC BTS responds BTS Unit ID with ID_RESP
BTS ← BSC BSC responds with ID_ACK, if the Unit ID is known to the BSC
Following the above peer identification procedure, transfer of higher-level messages such as OML or RSL commences.
The following tables list the OML messages used by OsmoBTS, grouped by their level of compliance with 3GPP TS 12.21.
OsmoBTS will send an SW Activated Report when RF has been activated successfully. The message is compliant with 3GPP TS
12.21 § 8.3.7.
Upon RF activation, two SW Activated Report messages will be sent, for the Object Classes
OsmoBTS will receive a Set BTS Attributes message and reply with a corresponding ACK message on success. IE handling is
fully compliant to TS 12.21, except that a change of BCCH ARFCN or BSIC while in operation is not supported, and hence the
Starting Time IE is rejected.
This message conforms to 3GPP TS 12.21, with the following limitation, as frequency hopping is not supported by OsmoBTS:
This message conforms to 3GPP TS 12.21, with the following limitation: the following 3GPP TS 12.21 IEs provoke a NACK
response when sent to OsmoBTS, as frequency hopping is not supported:
This message is compliant with 3GPP TS 12.21. Exactly these IEs are sent by OsmoBTS:
This message is compliant with 3GPP TS 12.21 § 8.8.5. It applies to all of the Object Classes defined in 3GPP TS 12.21 § 9.2 as
well as Section 4.4.
4.2.7 Opstart
This message is compliant with 3GPP TS 12.21 § 8.9.2. It applies to all of the Object Classes defined in 3GPP TS 12.21 § 9.2 as
well as Section 4.4.
The message type is 0xf5. This message is sent to OsmoBTS to set attributes on instances of managed objects of the non-standard
additional Object Classes (see Section 4.4).
The message specifics depend on the Object Class and are detailed in Section 4.4.
In addition to 3GPP TS 12.21 Chapter 9.2, the following managed objects are supported:
There is one NS Entity per BTS. It supports the Set Attribute message with the following Information Elements:
There is one GPRS Cell entity per BTS. It supports the Set Attribute message with the following Information Elements:
There are two GPRS NS-VC instances per BTS. It supports the Set Attribute message with the following Information Elements:
All of the IEs handled by OsmoBTS are listed below, with limitations and additions to TS 12.21 specified in more detail.
The following Information Elements are defined in addition to those specified in 3GPP TS 12.21 Chapter 9.4.
All of these additional IEs are received by OsmoBTS.
These attributes are not used by OsmoBTS, but simply passed to OsmoPCU connected to the PCU socket.
4.6.1 HW Description
TS 12.21 suggests a series of 5 length-value pairs for the HW Description IE. Instead, OsmoBTS interprets it as a single TL16V.
The value of this IE is ignored by OsmoBTS, yet the coding may affect message parsing.
Since OsmoBTS does not support frequency hopping, the ARFCN List must contain exactly one ARFCN.
In addition to 3GPP TS 12.21 Chapter 9.4.13, the following channel combinations are supported:
Value Description
0x0b Reserved for PBCCH + PCCCH + PDTCH/F + PACCH/F + PTCCH/F
0x0c Reserved for PBCCH + PDTCH/F + PACCH/F + PTCCH/F
0x0d PDTCH/F + PACCH/F + PTCCH/F
0x80 ip.access style Dynamic TCH/F / PDCH
0x81 Reserved for Dynamic TCH/F / TCH/H
0x90 Osmocom style Dynamic TCH/F / TCH/H / PDCH
The Reserved combinations are not actually supported/implemented yet, but merely reserved for such functionality, if it is
eventually implemented.
For more information on how the different dynamic channel combinations work, please see the Section 5.4.
3GPP TS 12.21 Chapter 9.4.14 specifies two different options for the Connection Failure Criterion. OsmoBTS only implements
the option coded as 0x01, i.e. based upon uplink SACCH error rate (RADIO_LINK_TIMEOUT).
4.6.5 TSC
Due to limitations in the currently supported PHY implementations, OsmoBTS supports only one global TSC for all channels on
one TRX, rather than a separate TSC for each timeslot, as expected by 3GPP TS 12.21.
The value part of this attribute has a length of 4 octets and is encoded as IPv4 address in network byte order.
The value part of this attribute has a length of 2 octets and contains the TCP destination port for the RSL connection, encoded in
network byte order.
The value part of this attribute has a length of one octet and specifies the IPA stream ID to be used for the RSL connection of this
TRX.
The value part of the GPRS Routing Area code consists of a single octet encoding the GPRS Routing Area Code.
This attribute is not used by OsmoBTS, but simply passed to OsmoPCU connected to the PCU socket.
The value part of this attribute consists of two octets encoded as follows:
Offset Description
0 GPRS Paging repeat time in units of 50ms intervals
1 GPRS Paging repeat count
The value part of the GPRS NSEI is encoded as 16bit integer value in network byte order.
This attribute is not used by OsmoBTS, but simply passed to OsmoPCU connected to the PCU socket.
The value part of this attribute consists of two octets encoding the BSSGP Virtual Circuit Identifier (BVCI) as unsigned 16 bit
integer in network byte order.
The value part of the GPRS NSVCI attribute is a 16bit unsigned integer in network byte order, encoding the GPRS NSVCI as
specified in 3GPP TS 08.16.
This attribute is not used by OsmoBTS, but simply passed to OsmoPCU connected to the PCU socket.
The value part of the GPRS NS Configuration consists of an array of 7 octets, each describing one GPRS NS related timer:
This attribute is not used by OsmoBTS, but simply passed to OsmoPCU connected to the PCU socket.
The value part of the GPRS BSSGP configuration consists of an array of 11 octets, each describing one GPRS BSSGP related
timer:
Offset Description
0 Blocking Timer (T1)
1 Blocking Retries
2 Unblocking Retries
3 Reset Timer (T2)
4 Reset Retries
5 Suspend Timer (T3) in units of 100ms
6 Suspend Retries
7 Resume Timer (T4) in units of 100ms
8 Resume Retries
9 Capability Update Timer (T5)
10 Capability Update Retries
The detailed description of the meaning of those timers is given in the GPRS BSSGP specification 3GPP TS 08.18.
This attribute is not used by OsmoBTS, but simply passed to OsmoPCU connected to the PCU socket.
The value part of the GPRS RLC Configuration consists of an array of 9 octets, each describing a RLC timer:
The value part of the GPRS Coding Schemes consists of two octets encoding the available GPRS and EDGE coding schemes.
bit 7 6 5 4 3 2 1 0
byte at MCS9 x x x CS4 CS3 CS2 CS1
offset 0
byte at MCS8 MCS7 MCS6 MCS5 MCS4 MCS3 MCS2 MCS1
offset 1
This attribute is not used by OsmoBTS, but simply passed to OsmoPCU connected to the PCU socket.
The value part of this attribute is 8 octets long and encoded as follows:
Value Description
1 CS 1
2 CS 2
3 CS 3
4 CS 4
This attribute is not used by OsmoBTS, but simply passed to OsmoPCU connected to the PCU socket.
This attribute contains information about the initial MCS used for new EDGE TBFs.
It is encoded as follows:
Value Description
1 MCS 1
2 MCS 2
3 MCS 3
4 MCS 4
5 MCS 5
6 MCS 6
7 MCS 7
8 MCS 8
9 MCS 9
This attribute is not used by OsmoBTS, but simply passed to OsmoPCU connected to the PCU socket.
At the time an Abis/IP BTS connects to via OML to the BSC, it is initialized according to the procedures described in 3GPP TS
12.21 as amended by this document.
Each Managed Object (MO) is separately initialized. The initialization sequence and parameters differ slightly depending on the
MO involved.
Some parts of the sequences described below are optional, such as the Software activation. In the OsmoBTS case, the software
is not modular and thus all MOs start with the software fully activated. In effect, no Software Activate Request is being sent by
the MO to the BSC, nor does the BSC need to initialize the Activate Software procedure.
Still, the full sequences are shown in order to explain the Abis/IP protocol.
Also, the initial state of the MOs at time of OML connection initialization is not always guaranteed to be Disabled/Notinstalled.
Rather, the BSC implementation has to deal with the initial state as reported by the MOs at time of re-connection.
The Site Manager MO does not depend on other MOs, nor does it have an Administrative state (Locked/Unlocked), thus it
immediately commences in the Enabled state.
• Availability state Dependency, meaning it depends on other MOs to be initialized before becoming enabled.
• Administrative state Locked, as the object is first waiting to receive attributes in the Locked state, before the Change Adminis-
trative State (Unlocked) procedure is used to request transitioning into Unlocked state.
There is one Baseband Transceiver MO per TRX in the BTS. For a multi-TRX BTS, the above procedure must be repeated for
each TRX.
There is one Radio Carrier MO per TRX in the BTS. For a multi-TRX BTS, the above procedure must be repeated for each TRX.
There are 8 timeslots in each TRX, and correspondingly 8 Channel MOs in every TRX. The above procedure must thus be
repeated for each timeslot in each transceiver of the BTS.
Some of below steps are optional, as is their detailed ordering. In practice, the procedures for different MOs may overlap. The
message sequence charts in this document have been hand-crafted to avoid such overlap for the sake of clarity.
a. the state changes to Enabled, and an event report is generated accordingly, and
b. the BSC is notified about the SW activation in an associated report.
Figure 8 shows:
5. Once the Baseband Transceiver MO has its software activated, the Channel MOs (one for each timeslot) indicate their
state change as well as software activation.
Figure 9 shows:
4. The following procedure takes place for each of the Channel MOs:
5. After all Channel MOs are initialized, the Radio Carrier goes through a similar procedure:
a. Set attributes,
b. OPSTART,
c. change Administrative State to Unlocked,
d. followed by a State Change Event Report with the new State (Enabled/OK)
The following tables list the RSL messages used by OsmoBTS A-bis/IP, grouped by their level of compliance with 3GPP TS
08.58.
TS 08.58 § Message
DEDICATED CHANNEL MANAGEMENT MESSAGES
8.4.12 PHYSICAL CONTEXT REQUEST
8.4.13 PHYSICAL CONTEXT CONFIRM
8.4.17 PREPROCESS CONFIGURE
8.4.18 PREPROCESSED MEASUREMENT RESULT
8.4.21 TALKER DETECTION
8.4.22 LISTENER DETECTION
8.4.23 REMOTE CODEC CONFIGURATION REPORT
8.4.24 ROUND TRIP DELAY REPORT
8.4.25 PRE-HANDOVER NOTIFICATION
8.4.26 MULTIRATE CODEC MODIFICATION REQUEST
8.4.27 MULTIRATE CODEC MODIFICATION ACKNOWLEDGE
8.4.28 MULTIRATE CODEC MODIFICATION NEGATIVE ACKNOWLEDGE
8.4.29 MULTIRATE CODEC MODIFICATION PERFORMED
8.4.30 TFO REPORT
8.4.31 TFO MODIFICATION REQUEST
COMMON CHANNEL MANAGEMENT MESSAGES
8.5.7 SMS BROADCAST REQUEST
8.5.10 NOTIFICATION COMMAND
TRX MANAGEMENT MESSAGES
8.6.3 OVERLOAD
LOCATION SERVICES MESSAGES
8.7.1 LOCATION INFORMATION
When used on a timeslot using the non-standard channel combination NM_CHANC_OSMO_TCHFull_TCHHalf_PDCH as con-
figured by OML, the regular RSL channel activation procedures can not only be used for activation of circuit-switched channels,
but also for activation of a PDCH.
See Section 5.4.2.
NOTE
Do not confuse this with the IPA style PDCH ACT type dynamic PDCH protocol employed by nanoBTS devices (Sec-
tion 5.4.1).
Table 27: System Info Type values that can occur on the SACCH
Value Name
0x05 RSL_SYSTEM_INFO_5
0x06 RSL_SYSTEM_INFO_6
0x0d RSL_SYSTEM_INFO_5bis
0x0e RSL_SYSTEM_INFO_5ter
0x47 RSL_EXT_MEAS_ORDER
0x48 RSL_MEAS_INFO
Note
If adding the identity to the paging queue fails, the BSC is not notified in any way.
This message does not conform to 3GPP TS 08.58 § 8.6.1, in that it omits the Resource Information IE that would contain the
actual payload data, which renders this message void.
This chapter defines the A-bis/IP specific RSL procedures that are introduced in addition to the 3GPP TS 08.58 standard proce-
dures.
In classic A-bis over E1, user plane traffic is carried over 16kBps sub-slots of 64kBps E1 time-slots according to ETSI/3GPP TS
08.60. As the E1 line is a dedicated line between BTS and BSC, no further addressing information is required.
In A-bis/IP as described by the present document, new RSL procedures have been introduced to deal with the different properties
of the underlying IP based transport medium.
This procedure is used by the BSC to request the BTS to allocate + bind to a BTS-local UDP port for the subsequent transmission
of user-plane data via RTP.
To do so, the BSC sends the Create Connection (CRCX) message. In case of successful outcome, the BTS responds with
Create Connection (CRCX) ACK. In case of any error, the BTS responds with Create Connection (CRCX) NACK.
See Section 5.6.1, Section 5.6.2, Section 5.6.3
This procedure is used by the BSC to request the BTS to modify an already-bound BTS-local UDP port for user-plane RTP. It
is used in particular to configure the remote IP address and UDP port to which the BTS shall send user-plane RTP traffic. This
remote address is normally either a Media Gateway (MGW) of some sort, but could also be the RTP socket of the corresponding
other leg of a mobile-to-mobile call.
To modify a user-plane connection, the BSC sends the Modify Connection message. In case of successful outcome, the BTS
responds with Modify Connection (MDCX) ACK. In case of any error, the BTS responds with Modify Connection (MDCX)
NACK.
See Section 5.6.4, Section 5.6.5, Section 5.6.6
This procedure is used by the BSC to request the BTS to delete an already-existing BTS-local UDP port for user-plane RTP.
To delete a user-plane connection, the BSC sends the Delete Connection (DLCX) message. In case of successful outcome, the
BTS responds with Delete Connection (DLCX) ACK. In case of any error, the BTS responds with Delete Connection (DLCX)
NACK.
See Section 5.6.8, Section 5.6.9, Section 5.6.10
When a BTS-local UDP connection for user-plane RTP is automatically released at the time of RF CHANNEL RELEASE, the
BTS sends a unilateral, non-acknowledged RSL Delete Connection (DLCX) Indication to the BSC.
See Section 5.6.7
In the classic data model established by ETSI/3GPP for A-bis, each timeslot (channel) is configured using a static channel
combination by means of A-bis OML. Particularly in presence of GPRS services, this is very inflexible and leads to inefficient
use of air interface resources.
As such, several methods have been implemented to overcome this limitation. The fundamental operation can be outlined like
this:
This method is used when OML uses NM_CHANC_IPAC_TCHFull_PDCH (0x80) as channel combination for the given time-
slot.
IPA style refers to ip.access compatible PDCH activation and deactivation.
When the IPA style dynamic channel combination TCH/F or PDCH is set, the non-standard PDCH ACTIVATE (Section 5.4.1.1)
and PDCH DEACTIVATE (Section 5.4.1.2) procedures are used for switching an idle channel into PDCH mode and back into
idle mode.
When the channel is used as TCH/F, regular circuit-switched activation is performed, like on any traditional TCH/F. However,
the BSC must make sure to first disable the PDCH on the timeslot, before activating it as TCH/F. Likewise, any circuit-switched
TCH/F on the channel must be deactivated using standard RSL signalling, before the specific PDCH related procedures are used
to enable the PDCH.
This procedure is used by the BSC to request the BTS to activate an IPA style dynamic TCH/F+PDCH channel in PDCH mode.
The operation is not supported on any other physical channel type.
See Section 5.6.11, Section 5.6.12, Section 5.6.13
This procedure is used by the BSC to request the BTS to deactivate an active PDCH on any an IPA style dynamic TCH/F+PDCH
channel.
The operation is not supported on any other physical channel type.
See Section 5.6.14, Section 5.6.15, Section 5.6.16
Figure 10: Part 1: example for dynamic channel switchover, for IPA style dynamic timeslots
Figure 11: Part 2: example for dynamic channel switchover, for IPA style dynamic timeslots
This method is in use when OML uses NM_CHANC_OSMO_TCHFull_TCHHalf_PDCH (0x90) for the given time-slot.
The activation of PDCH is performed by using the regular RSL CHANNEL ACTIVATE procedure according to Section 5.2.1,
with these modifications:
• The C-bits part of the Channel Number IE take the non-standard binary value 11000 (C5 thru C1 as seen in 3GPP TS 08.58 §
9.3.1).
• The A-bits part of the Activation Type IE take the non-standard binary value 1111, with an additional fourth bit (add A4 to A3
thru A1 as seen in 3GPP TS 08.58 § 9.3.3; all remaining reserved bits as well as the R bit are coded as zero).
• The normally mandatory Channel Mode IE is omitted; none of the optional IEs are included.
Figure 12: Part 1: example for dynamic channel switchover, for Osmocom style dynamic timeslots
Figure 13: Part 2: example for dynamic channel switchover, for Osmocom style dynamic timeslots
ETWS as specified in 3GPP TS 23.041 includes not only notification via SMSCB, but also so-called Primary Notifications (PN).
The ETWS PN are transmitted
Unfortunately, 3GPP forgot to update their specifications with any information as to how the ETWS PN is transmitted from BSC
to BTS in a portable way, and Osmocom had to invent their own non-standard signaling for it.
See Section 5.6.17 for the Osmocom implementation.
This message is sent by the BSC to the BTS to request the creation of a user-plane RTP connection for the specified Channel
number.
This message is sent by the BTS to the BSC to acknowledge the successful outcome of creating a user-plane RTP connection. It
is sent in response to the Create Connection (CRCX).
This message is sent by the BTS to the BSC to signal the unsuccessful outcome of creating a user-plane RTP connection. It is
sent in response to the Create Connection (CRCX).
This message is sent by the BSC to the BTS to modify the properties of a user-plane RTP connection.
This message is sent by the BTS to the BSC to acknowledge the successful modification of a user-plane RTP connection. It is
sent in response to a Modify Connection (MDCX)
This message is sent by the BTS to the BSC to signal the unsuccessful outcome of modifying the user-plane RTP connection for
the specified Channel number. It is sent in response to the Modify Connection (MDCX).
This message is sent by the BTS to indicate the automatic deletion of a BTS-local UDP connection for user-plane RTP traffic at
the time of RF Channel release.
This message is sent by the BSC to the BTS to request the disconnection of a user-plane RTP connection for the specified Channel
number.
This message is sent by the BTS to signal the successful outcome of deleting the user-plane RTP connection for the specified
Channel number. It is sent in response to the Delete Connection (DLCX).
This message is sent by the BTS to signal the unsuccessful outcome of deleting the user-plane RTP connection for the specified
Channel number. It is sent in response to the Delete Connection (DLCX).
This message is sent by the BSC to request the activation of a PDCH on a IPA style dynamic TCH/F+PDCH channel.
NOTE
This message is not used by Osmocom style dynamic channels
This message is sent by the BTS to confirm the successful activation of a PDCH on a IPA style dynamic TCH/F+PDCH channel.
NOTE
This message is not used by Osmocom style dynamic channels
This message is sent by the BTS to reject the successful activation of a PDCH on a IPA style dynamic TCH/F+PDCH channel.
NOTE
This message is not used by Osmocom style dynamic channels
This message is sent by the BSC to request the deactivation of a PDCH on a IPA style dynamic TCH/F+PDCH channel.
NOTE
This message is not used by Osmocom style dynamic channels
This message is sent by the BTS to confirm the successful deactivation of a PDCH on a IPA style dynamic TCH/F+PDCH
channel.
NOTE
This message is not used by Osmocom style dynamic channels
This message is sent by the BTS to reject the deactivation of a PDCH on a IPA style dynamic TCH/F+PDCH channel.
NOTE
This message is not used by Osmocom style dynamic channels
This message is sent by the BSC to transfer the ETWS Primary Notification (PN) from BSC to BTS and enable/disable transmis-
sion of ETWS PN by the BTS. For more information about ETWS, see 3GPP TS 23.041.
If the ETWS PN length is > 0, the BTS will immediately start transmission of the received ETWS PN on the PCH using P1 Rest
Octets. It will also forward he ETWS PN to the PCU to enable the PCU to transmit it via PACCH on active TBF.
If the ETWS PN length is 0, the BTS will stop any ETWS PN broadcast via the PCH.
The Channel Number IE is set to the Downlink CCCH (PCH).
The following message discriminators are used in addition to those indicated in 3GPP TS 08.58 Section 9.1:
The following Information Element Identifiers (IEIs) are used in addition to those indicated in 3GPP TS 08.58 Section 9.3:
5.7.3 RSL_IE_CHAN_NR
This information element is coded like 3GPP TS 08.58 Section 9.3.1, but in addition supports the following extended coding:
The TN-Bits are not re-defined in this case but use the same encoding as specified in TS 08.58 Section 9.3.1.
NOTE
The above extension is only valid on an Osmocom-style dynamic channel, having configured the NM_CHANC_IPAC_TCHFull_PD
channel combination by OML.
5.7.4 RSL_IE_IPAC_REMOTE_IP
This information element contains the remote (MGW side) IPv4 address in network byte order. It is encoded as fixed-size element
with one byte IEI followed by four bytes IPv4 address.
5.7.5 RSL_IE_IPAC_REMOTE_PORT
This information element contains the remote (MGW side) UDP port in network byte order. It is encoded as fixed-size element
with one byte IEI followed by two bytes UDP port number.
5.7.6 RSL_IE_IPAC_LOCAL_PORT
This information element contains the local (BTS side) IPv4 address in network byte order. It is encoded as fixed-size element
with one byte IEI followed by two bytes UDP port number.
5.7.7 RSL_IE_IPAC_SPEECH_MODE
This information element encodes the speech mode. It is set according to the voice codec used on the connection. It is encoded
as a fixed-size element of two bytes, with one byte IEI followed by one byte Speech mode indicator.
Value Description
0x00 TCH/F with FR codec
0x01 TCH/F with EFR codec
0x02 TCH/F with AMR codec
0x03 TCH/H with HR codec
0x05 TCH/H with AMR codec
Copyright © 2015-2016 sysmocom - s.f.m.c. GmbH DRAFT 1.1.0-80-g1d9f6, 2019-Nov-19
OsmoBTS Abis Protocol Specification 43 / 59
5.7.8 RSL_IE_IPAC_LOCAL_IP
This information element contains the local (BTS side) IPv4 address in network byte order. It is encoded as fixed-size element
with one byte IEI followed by four bytes IPv4 address.
5.7.9 RSL_IE_IPAC_CONN_STAT
5.7.10 RSL_IE_IPAC_CONN_ID
This IE is a TV with a value length of two bytes. The value is a 16 bit connection ID in network byte order.
5.7.11 RSL_IE_IPAC_RTP_PAYLOAD2
This information element contains the RTP payload identifier, which is used in the PT (Payload Type) field of the RTP header in
subsequent transmissions of the RTP flow.
Upon receiving the IPA RSL CONNECT OML message by the respective Baseband Transceiver MO, the BTS proceeds with
establishing a separate TCP connection for the given TRX.
The initialization of the primary and secondary TRX slightly differ, as illustrated by the differences of Figure 14 and Figure 15.
Since the secondary TRX has no BCCH, it does not (need to) receive any RSL BCCH INFORMATION messages from the BSC.
RTP (Realtime Transfer Protocol) is a protocol for streaming audio and video data. It is specified by IETF RFC 1889.
OsmoBTS A-bis/IP implements RTP as transport medium for circuit-switched user-plane traffic, contrary to the E1 sub-slot
based transport specified in 3GPP TS 08.60.
The RTP transport endpoint parameters are configured using the RSL User Plane Transport Management procedures described
in Section 5.3.
RTCP is implemented in addition to RTP, on a UDP port number of the RTP port incremented by one.
The RTP payload format depends on the voice codec used on the radio channel. The OsmoBTS is simply passing the GSM
speech frames between the Um radio interface channels and the RTP payload (and vice-versa).
No transcoding function is implemented in the BTS!
7 Glossary
2FF
2nd Generation Form Factor; the so-called plug-in SIM form factor
3FF
3rd Generation Form Factor; the so-called microSIM form factor
3GPP
3rd Generation Partnership Project
4FF
4th Generation Form Factor; the so-called nanoSIM form factor
A Interface
Interface between BTS and BSC, traditionally over E1 (3GPP TS 48.008 [?])
A3/A8
Algorithm 3 and 8; Authentication and key generation algorithm in GSM and GPRS, typically COMP128v1/v2/v3 or
MILENAGE are typically used
A5
Algorithm 5; Air-interface encryption of GSM; currently only A5/0 (no encryption), A5/1 and A5/3 are in use
Abis Interface
Interface between BTS and BSC, traditionally over E1 (3GPP TS 48.058 [?] and 3GPP TS 52.021 [?])
ACC
Access Control Class; every BTS broadcasts a bit-mask of permitted ACC, and only subscribers with a SIM of matching
ACC are permitted to use that BTS
AGCH
Access Grant Channel on Um interface; used to assign a dedicated channel in response to RACH request
AGPL
GNU Affero General Public License, a copyleft-style Free Software License
ARFCN
Absolute Radio Frequency Channel Number; specifies a tuple of uplink and downlink frequencies
AUC
Authentication Center; central database of authentication key material for each subscriber
BCCH
Broadcast Control Channel on Um interface; used to broadcast information about Cell and its neighbors
BCC
Base Station Color Code; short identifier of BTS, lower part of BSIC
BTS
Base Transceiver Station
BSC
Base Station Controller
BSIC
Base Station Identity Code; 16bit identifier of BTS within location area
BSSGP
Base Station Subsystem Gateway Protocol (3GPP TS 48.018 [?])
BVCI
BSSGP Virtual Circuit Identifier
CBCH
Cell Broadcast Channel; used to transmit Cell Broadcast SMS (SMS-CB)
CC
Call Control; Part of the GSM Layer 3 Protocol
CCCH
Common Control Channel on Um interface; consists of RACH (uplink), BCCH, PCH, AGCH (all downlink)
Cell
A cell in a cellular network, served by a BTS
CEPT
Conférence européenne des administrations des postes et des télécommunications; European Conference of Postal and
Telecommunications Administrations.
CGI
Cell Global Identifier comprised of MCC, MNC, LAC and BSIC
CSFB
Circiut-Switched Fall Back; Mechanism for switching from LTE/EUTRAN to UTRAN/GERAN when circuit-switched
services such as voice telephony are required.
dB
deci-Bel; relative logarithmic unit
dBm
deci-Bel (milliwatt); unit of measurement for signal strength of radio signals
DHCP
Dynamic Host Configuration Protocol (IETF RFC 2131 [?]
downlink
Direction of messages / signals from the network core towards the mobile phone
DSP
Digital Signal Processor
dvnixload
Tool to program UBL and the Bootloader on a sysmoBTS
EDGE
Enhanced Data rates for GPRS Evolution; Higher-speed improvement of GPRS; introduces 8PSK
EGPRS
Enhanced GPRS; the part of EDGE relating to GPRS services
EIR
Equipment Identity Register; core network element that stores and manages IMEI numbers
ESME
External SMS Entity; an external application interfacing with a SMSC over SMPP
ETSI
European Telecommunications Standardization Institute
FPGA
Field Programmable Gate Array; programmable digital logic hardware
Gb
Interface between PCU and SGSN in GPRS/EDGE network; uses NS, BSSGP, LLC
GERAN
GPRS/EDGE Radio Access Network
GFDL
GNU Free Documentation License; a copyleft-style Documentation License
GGSN
GPRS Gateway Support Node; gateway between GPRS and external (IP) network
GMSK
Gaussian Minimum Shift Keying; modulation used for GSM and GPRS
GPL
GNU General Public License, a copyleft-style Free Software License
Gp
Gp interface between SGSN and GGSN; uses GTP protocol
GPS
Global Positioning System; provides a highly accurate clock reference besides the global position
GSM
Global System for Mobile Communications. ETSI/3GPP Standard of a 2G digital cellular network
GSMTAP
GSM tap; pseudo standard for encapsulating GSM protocol layers over UDP/IP for analysis
GSUP
Generic ubscriber Update Protocol. Osmocom-specific alternative to TCAP/MAP
GT
Global Title; an address in SCCP
GTP
GPRS Tunnel Protocol; used between SGSN and GGSN
HLR
Home Location Register; central subscriber database of a GSM network
HNB-GW
Home NodeB Gateway. Entity between femtocells (Home NodeB) and CN in 3G/UMTS.
HPLMN
Home PLMN; the network that has issued the subscriber SIM and has his record in HLR
IE
Information Element
IMEI
International Mobile Equipment Identity; unique 14-digit decimal number to globally identify a mobile device, optionally
with a 15th checksum digit
IMEISV
IMEI software version; unique 14-digit decimal number to globally identify a mobile device (same as IMEI) plus two
software version digits (total digits: 16)
IMSI
International Mobile Subscriber Identity; 15-digit unique identifier for the subscriber/SIM; starts with MCC/MNC of
issuing operator
IP
Internet Protocol (IETF RFC 791 [?])
IPA
ip.access GSM over IP protocol; used to multiplex a single TCP connection
Iu
Interface in 3G/UMTS between RAN and CN
IuCS
Iu interface for circuit-switched domain. Used in 3G/UMTS between RAN and MSC
IuPS
Iu interface for packet-switched domain. Used in 3G/UMTS between RAN and SGSN
LAC
Location Area Code; 16bit identifier of Location Area within network
LAPD
Link Access Protocol, D-Channel (ITU-T Q.921 [?])
LAPDm
Link Access Protocol Mobile (3GPP TS 44.006 [?])
LLC
Logical Link Control; GPRS protocol between MS and SGSN (3GPP TS 44.064 [?])
Location Area
Location Area; a geographic area containing multiple BTS
LU
Location Updating; can be of type IMSI-Attach or Periodic. Procedure that indicates a subscriber’s physical presence in a
given radio cell.
M2PA
MTP2 Peer-to-Peer Adaptation; a SIGTRAN Variant (RFC 4165 [?])
M2UA
MTP2 User Adaptation; a SIGTRAN Variant (RFC 3331 [?])
M3UA
MTP3 User Adaptation; a SIGTRAN Variant (RFC 4666 [?])
MCC
Mobile Country Code; unique identifier of a country, e.g. 262 for Germany
MFF
Machine-to-Machine Form Factor; a SIM chip package that is soldered permanently onto M2M device circuit boards.
MGW
Media Gateway
MM
Mobility Management; part of the GSM Layer 3 Protocol
MNC
Mobile Network Code; identifies network within a country; assigned by national regulator
MNCC
Mobile Network Call Control; Unix domain socket based Interface between MSC and external call control entity like
osmo-sip-connector
MNO
Mobile Network Operator; operator with physical radio network under his MCC/MNC
MO
Mobile Originated. Direction from Mobile (MS/UE) to Network
MS
Mobile Station; a mobile phone / GSM Modem
MSC
Mobile Switching Center; network element in the circuit-switched core network
MSISDN
Mobile Subscriber ISDN Number; telephone number of the subscriber
MT
Mobile Terminated. Direction from Network to Mobile (MS/UE)
MTP
Message Transfer Part; SS7 signaling protocol (ITU-T Q.701 [?])
MVNO
Mobile Virtual Network Operator; Operator without physical radio network
NCC
Network Color Code; assigned by national regulator
NITB
Network In The Box; combines functionality traditionally provided by BSC, MSC, VLR, HLR, SMSC functions; see
OsmoNITB
NSEI
NS Entity Identifier
NVCI
NS Virtual Circuit Identifier
NWL
Network Listen; ability of some BTS to receive downlink from other BTSs
NS
Network Service; protocol on Gb interface (3GPP TS 48.016 [?])
OCXO
Oven Controlled Crystal Oscillator; very high precision oscillator, superior to a VCTCXO
OML
Operation & Maintenance Link (ETSI/3GPP TS 52.021 [?])
OpenBSC
Open Source implementation of GSM network elements, specifically OsmoBSC, OsmoNITB, OsmoSGSN
OpenGGSN
Open Source implementation of a GPRS Packet Control Unit
OpenVPN
Open-Source Virtual Private Network; software employed to establish encrypted private networks over untrusted public
networks
Osmocom
Open Source MObile COMmunications; collaborative community for implementing communications protocols and sys-
tems, including GSM, GPRS, TETRA, DECT, GMR and others
OsmoBSC
Open Source implementation of a GSM Base Station Controller
OsmoNITB
Open Source implementation of a GSM Network In The Box, combines functionality traditionally provided by BSC, MSC,
VLR, HLR, AUC, SMSC
OsmoSGSN
Open Source implementation of a Serving GPRS Support Node
OsmoPCU
Open Source implementation of a GPRS Packet Control Unit
OTA
Over-The-Air; Capability of operators to remotely reconfigure/reprogram ISM/USIM cards
PC
Point Code; an address in MTP
PCH
Paging Channel on downlink Um interface; used by network to page an MS
PCU
Packet Control Unit; used to manage Layer 2 of the GPRS radio interface
PDCH
Packet Data Channel on Um interface; used for GPRS/EDGE signalling + user data
PIN
Personal Identification Number; a number by which the user authenticates to a SIM/USIM or other smart card
PLMN
Public Land Mobile Network; specification language for a single GSM network
PUK
PIN Unblocking Code; used to unblock a blocked PIN (after too many wrong PIN attempts)
RAC
Routing Area Code; 16bit identifier for a Routing Area within a Location Area
RACH
Random Access Channel on uplink Um interface; used by MS to request establishment of a dedicated channel
RAM
Remote Application Management; Ability to remotely manage (install, remove) Java Applications on SIM/USIM Card
RF
Radio Frequency
RFM
Remote File Management; Ability to remotely manage (write, read) files on a SIM/USIM card
Roaming
Procedure in which a subscriber of one network is using the radio network of another network, often in different countries;
in some countries national roaming exists
Routing Area
Routing Area; GPRS specific sub-division of Location Area
RR
Radio Resources; Part of the GSM Layer 3 Protocol
RSL
Radio Signalling Link (3GPP TS 48.058 [?])
RTP
Real-Time Transport Protocol (IETF RFC 3550 [?]); Used to transport audio/video streams over UDP/IP
SACCH
Slow Associate Control Channel on Um interface; bundled to a TCH or SDCCH, used for signalling in parallel to active
dedicated channel
SCCP
Signaling Connection Control Part; SS7 signaling protocol (ITU-T Q.711 [?])
SDCCH
Slow Dedicated Control Channel on Um interface; used for signalling and SMS transport in GSM
SDK
Software Development Kit
SGs
Interface between MSC (GSM/UMTS) and MME (LTE/EPC) to facilitate CSFB and SMS.
SGSN
Serving GPRS Support Node; Core network element for packet-switched services in GSM and UMTS.
SIGTRAN
Signaling Transport over IP (IETF RFC 2719 [?])
SIM
Subscriber Identity Module; small chip card storing subscriber identity
Site
A site is a location where one or more BTSs are installed, typically three BTSs for three sectors
SMPP
Short Message Peer-to-Peer; TCP based protocol to interface external entities with an SMSC
SMSC
Short Message Service Center; store-and-forward relay for short messages
SS7
Signaling System No. 7; Classic digital telephony signaling system
SS
Supplementary Services; query and set various service parameters between subscriber and core network (e.g. USSD,
3rd-party calls, hold/retrieve, advice-of-charge, call deflection)
SSH
Secure Shell; IETF RFC 4250 [?] to 4254
SSN
Sub-System Number; identifies a given SCCP Service such as MSC, HLR
STP
Signaling Transfer Point; A Router in SS7 Networks
SUA
SCCP User Adaptation; a SIGTRAN Variant (RFC 3868 [?])
syslog
System logging service of UNIX-like operating systems
System Information
A set of downlink messages on the BCCH and SACCH of the Um interface describing properties of the cell and network
TCH
Traffic Channel; used for circuit-switched user traffic (mostly voice) in GSM
TCP
Transmission Control Protocol; (IETF RFC 793 [?])
TFTP
Trivial File Transfer Protocol; (IETF RFC 1350 [?])
TRX
Transceiver; element of a BTS serving a single carrier
TS
Technical Specification
u-Boot
Boot loader used in various embedded systems
UBI
An MTD wear leveling system to deal with NAND flash in Linux
UBL
Initial bootloader loaded by the TI Davinci SoC
UDP
User Datagram Protocol (IETF RFC 768 [?])
UICC
Universal Integrated Chip Card; A smart card according to ETSI TR 102 216 [?]
Um interface
U mobile; Radio interface between MS and BTS
uplink
Direction of messages: Signals from the mobile phone towards the network
USIM
Universal Subscriber Identity Module; application running on a UICC to provide subscriber identity for UMTS and GSM
networks
USSD
Unstructured Supplementary Service Data; textual dialog between subscriber and core network, e.g. *100 → Your exten-
sion is 1234
VCTCXO
Voltage Controlled, Temperature Compensated Crystal Oscillator; a precision oscillator, superior to a classic crystal oscil-
lator, but inferior to an OCXO
VLR
Visitor Location Register; volatile storage of attached subscribers in the MSC
VPLMN
Visited PLMN; the network in which the subscriber is currently registered; may differ from HPLMN when on roaming
VTY
Virtual TeletYpe; a textual command-line interface for configuration and introspection, e.g. the OsmoBSC configuration
file as well as its telnet link on port 4242
The Osmocom GSM system utilizes a variety of TCP/IP based protocols. The table below provides a reference as to which port
numbers are used by which protocol / interface.
B.1 PREAMBLE
The purpose of this License is to make a manual, textbook, or other functional and useful document “free” in the sense of
freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially
or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while
not being considered responsible for modifications made by others.
This License is a kind of “copyleft”, which means that derivative works of the document must themselves be free in the same
sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software, because free software needs free documentation:
a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to
software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book.
We recommend this License principally for works whose purpose is instruction or reference.
This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it
can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration,
to use that work under the conditions stated herein. The “Document”, below, refers to any such manual or work. Any member
of the public is a licensee, and is addressed as “you”. You accept the license if you copy, modify or distribute the work in a way
requiring permission under copyright law.
A “Modified Version” of the Document means any work containing the Document or a portion of it, either copied verbatim, or
with modifications and/or translated into another language.
A “Secondary Section” is a named appendix or a front-matter section of the Document that deals exclusively with the relationship
of the publishers or authors of the Document to the Document’s overall subject (or to related matters) and contains nothing that
could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section
may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related
matters, or of legal, commercial, philosophical, ethical or political position regarding them.
The “Invariant Sections” are certain Secondary Section whose titles are designated, as being those of Invariant Sections, in the
notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then
it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not
identify any Invariant Sections then there are none.
The “Cover Texts” are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that
says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may
be at most 25 words.
A “Transparent” copy of the Document means a machine-readable copy, represented in a format whose specification is available
to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed
of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text
formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise
Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification
by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not
Transparent is called “Opaque”.
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input
format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for
human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary
formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing
tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for
output purposes only.
The “Title Page” means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the
material this License requires to appear in the title page. For works in formats which do not have any title page as such, Title
Page means the text near the most prominent appearance of the work’s title, preceding the beginning of the body of the text.
The “publisher” means any person or entity that distributes copies of the Document to the public.
A section “Entitled XYZ” means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in
parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned
below, such as “Acknowledgements”, “Dedications”, “Endorsements”, or “History”.) To “Preserve the Title” of such a section
when you modify the Document means that it remains a section “Entitled XYZ” according to this definition.
The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These
Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any
other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License,
the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that
you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the
reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies.
If you distribute a large enough number of copies you must also follow the conditions in section Section B.4.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than
100, and the Document’s license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly,
all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also
clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the
title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the
covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other
respects.
If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably)
on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-
readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from
which the general network-using public has access to download using public-standard network protocols a complete Transparent
copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you
begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated
location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of
that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of
copies, to give them a chance to provide you with an updated version of the Document.
B.5 MODIFICATIONS
You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that
you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus
licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these
things in the Modified Version:
a. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous
versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as
a previous version if the original publisher of that version gives permission.
b. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the
Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has
fewer than five), unless they release you from this requirement.
c. State on the Title Page the name of the publisher of the Modified Version, as the publisher.
d. Preserve all the copyright notices of the Document.
e. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
f. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version
under the terms of this License, in the form shown in the Addendum below.
g. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document’s license
notice.
h. Include an unaltered copy of this License.
i. Preserve the section Entitled “History”, Preserve its Title, and add to it an item stating at least the title, year, new authors,
and publisher of the Modified Version as given on the Title Page. If there is no section Entitled “History” in the Document,
create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item
describing the Modified Version as stated in the previous sentence.
j. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and
likewise the network locations given in the Document for previous versions it was based on. These may be placed in the
“History” section. You may omit a network location for a work that was published at least four years before the Document
itself, or if the original publisher of the version it refers to gives permission.
k. For any section Entitled “Acknowledgements” or “Dedications”, Preserve the Title of the section, and preserve in the
section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.
l. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the
equivalent are not considered part of the section titles.
m. Delete any section Entitled “Endorsements”. Such a section may not be included in the [?].
n. Do not retitle any existing section to be Entitled “Endorsements” or to conflict in title with any Invariant Sections.
o. Preserve any Warranty Disclaimers.
If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Section and contain no
material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add
their titles to the list of Invariant Sections in the Modified Version’s license notice. These titles must be distinct from any other
section titles.
You may add a section Entitled “Endorsements”, provided it contains nothing but endorsements of your Modified Version by
various parties—for example, statements of peer review or that the text has been approved by an organization as the authoritative
definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the
end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may
be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover,
previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but
you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to
assert or imply endorsement of any Modified Version.
You may combine the Document with other documents released under this License, under the terms defined in section 4 above
for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents,
unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their
Warranty Disclaimers.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with
a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such
section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or
else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the
combined work.
In the combination, you must combine any sections Entitled “History” in the various original documents, forming one section
Entitled “History”; likewise combine any sections Entitled “Acknowledgements”, and any sections Entitled “Dedications”. You
must delete all sections Entitled “Endorsements”.
You may make a collection consisting of the Document and other documents released under this License, and replace the indi-
vidual copies of this License in the various documents with a single copy that is included in the collection, provided that you
follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you insert
a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of
that document.
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of
a storage or distribution medium, is called an “aggregate” if the copyright resulting from the compilation is not used to limit the
legal rights of the compilation’s users beyond what the individual works permit. When the Document is included in an aggregate,
this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half
of the entire aggregate, the Document’s Cover Texts may be placed on covers that bracket the Document within the aggregate,
or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that
bracket the whole aggregate.
B.9 TRANSLATION
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section
4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include
translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a
translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also
include the original English version of this License and the original versions of those notices and disclaimers. In case of a
disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will
prevail.
If a section in the Document is Entitled “Acknowledgements”, “Dedications”, or “History”, the requirement (section 4) to
Preserve its Title (section 1) will typically require changing the actual title.
B.10 TERMINATION
You may not copy, modify, sublicense, or distribute the Document except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense, or distribute it is void, and will automatically terminate your rights under this License.
However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provi-
sionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work)
from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.
Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from
you under this License. If your rights have been terminated and not permanently reinstated, receipt of a copy of some or all of
the same material does not give you any rights to use it.
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time.
Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered
version of this License “or any later version” applies to it, you have the option of following the terms and conditions either of
that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the
Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the
Free Software Foundation. If the Document specifies that a proxy can decide which future versions of this License can be used,
that proxy’s public statement of acceptance of a version permanently authorizes you to choose that version for the Document.
B.12 RELICENSING
“Massive Multiauthor Collaboration Site” (or “MMC Site”) means any World Wide Web server that publishes copyrightable
works and also provides prominent facilities for anybody to edit those works. A public wiki that anybody can edit is an example
of such a server. A “Massive Multiauthor Collaboration” (or “MMC”) contained in the site means any set of copyrightable works
thus published on the MMC site.
“CC-BY-SA” means the Creative Commons Attribution-Share Alike 3.0 license published by Creative Commons Corporation, a
not-for-profit corporation with a principal place of business in San Francisco, California, as well as future copyleft versions of
that license published by that same organization.
“Incorporate” means to publish or republish a Document, in whole or in part, as part of another Document.
An MMC is “eligible for relicensing” if it is licensed under this License, and if all works that were first published under this
License somewhere other than this MMC, and subsequently incorporated in whole or in part into the MMC, (1) had no cover
texts or invariant sections, and (2) were thus incorporated prior to November 1, 2008.
The operator of an MMC Site may republish an MMC contained in the site under CC-BY-SA on the same site at any time before
August 1, 2009, provided the MMC is eligible for relicensing.
To use this License in a document you have written, include a copy of the License in the document and put the following copyright
and license notices just after the title page:
Copyright (c) YEAR YOUR NAME.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled ``GNU
Free Documentation License''.
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the “with. . . Texts.” line with this:
with the Invariant Sections being LIST THEIR TITLES, with the
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit
the situation.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your
choice of free software license, such as the GNU General Public License, to permit their use in free software.