Wiki » History » Version 17
laforge, 04/19/2017 01:38 PM
1 | 10 | laforge | h1. [[OsmoBTS]] |
---|---|---|---|
2 | 4 | ipse | |
3 | |||
4 | 15 | laforge | [[OsmoBTS]] is a software implementation of a GSM BTS(Base Transceiver Station). |
5 | |||
6 | It implements the follwing protocols/interfaces: |
||
7 | 10 | laforge | * LAPDm (GSM 04.06) |
8 | * RTP |
||
9 | * A-bis/IP in IPA multiplex |
||
10 | * OML (GSM TS 12.21) |
||
11 | * RSL (GSM TS 08.58) |
||
12 | 1 | laforge | |
13 | 14 | laforge | [[OsmoBTS]] is building up on work done previosuly for [[OpenBSC:]] (e.g. RSL, OML, RTP) and [[OsmocomBB:]] (e.g. LAPDm). The Abis/IP protocol staking is inspired by ip.access A-bis/IP, sometimes called IPA multiplex. |
14 | 1 | laforge | |
15 | 11 | laforge | h2. OsmoBTS in the Osmocom architecture |
16 | |||
17 | {{graphviz_link() |
||
18 | digraph G { |
||
19 | rankdir = LR; |
||
20 | OsmoTRX -> OsmoBTS [label="bursts over UDP"]; |
||
21 | sysmoPHY -> OsmoBTS [label="/dev/msgq/"]; |
||
22 | octPHY -> OsmoBTS [label="Raw Ethernet"]; |
||
23 | OsmoBTS -> OsmoNITB [label="Abis/IP"]; |
||
24 | OsmoBTS -> OsmoPCU [label="pcu_sock"]; |
||
25 | OsmoPCU -> OsmoSGSN [label="Gb/IP"]; |
||
26 | OsmoBTS [color=red]; |
||
27 | } |
||
28 | }} |
||
29 | 1 | laforge | |
30 | 10 | laforge | h2. Backends / Hardware support |
31 | 9 | laforge | |
32 | 10 | laforge | |
33 | [[OsmoBTS]] is modular and has support for multiple back-ends. A back-end talks to a specific L1/PHY implementation of the respective BTS hardware. Based on this architecture, it should be relatively easy to add a new back-end to support so-far unsupported GSM PHY/L1 and associated hardware. |
||
34 | |||
35 | So far [[OsmoBTS]] has been integrated with several different L1/PHY and hardware systems. The backends are: |
||
36 | * osmo-bts-sysmo |
||
37 | 13 | laforge | ** Multiple indoor and outdoor BTS products called "sysmoBTS":http://www.sysmocom.de/products/sysmobts by "sysmocom":http://sysmocom.de/ |
38 | 1 | laforge | * osmo-bts-trx |
39 | 13 | laforge | ** Wideband SDR transceiver hardware supported by [[OpenBTS]] transceiver or [OsmoTRX] PHY layer software, including the [[umtrx:UmTRX]], the USRP family, etc. |
40 | ** Multiple indoor and outdoor "fairwaves":https://fairwaves.co BTSs, like [[umtrx:UmDESK]] and [[umtrx:UmSITE]] |
||
41 | * osmo-bts-litecell15 |
||
42 | * osmo-bts-octphy |
||
43 | 10 | laforge | * osmo-bts-bb |
44 | ** A pretty crazy experimental BTS hardware based on two [[OsmocomBB]] phones had originally been supported, but needs to be re-integrated with core code changes. |
||
45 | |||
46 | 17 | laforge | {{graphviz_link() |
47 | graph G { |
||
48 | OsmoBTS [color=red]; |
||
49 | sysmoBTS [label="sysmocom sysmoBTS\n(many models)", shape=box]; |
||
50 | LC15 [label="Nuran\nLitecell 1.5", shape=box]; |
||
51 | OCT [label="Octasic\nOCTBTS", shape=box]; |
||
52 | TRX [label="OsmoTRX"]; |
||
53 | OtherSDR [label="Other SDR HW", shape=box, style=dashed]; |
||
54 | OtherPHY [label="Other GSM PHY", shape=box, style=dashed]; |
||
55 | UmTRX [label="Fairwaves\nUmTRX", shape=box]; |
||
56 | USRP [label="Ettus USRP\nFamily", shape=box]; |
||
57 | |||
58 | OsmoBTS -- sysmoBTS [label="osmo-bts-sysmo"]; |
||
59 | OsmoBTS -- LC15 [label="osmo-bts-lc15"]; |
||
60 | OsmoBTS -- OCT [label="osmo-bts-octphy"]; |
||
61 | OsmoBTS -- TRX [label="osmo-bts-trx"]; |
||
62 | OsmoBTS -- OtherPHY [style=dashed]; |
||
63 | |||
64 | TRX -- USRP; |
||
65 | TRX -- UmTRX; |
||
66 | TRX -- OtherSDR [style=dashed]; |
||
67 | |||
68 | { rank=same; nanoBTS sysmoBTS LC15 OCT UmTRX } |
||
69 | } |
||
70 | }} |
||
71 | |||
72 | 16 | laforge | h2. Manuals |
73 | 1 | laforge | |
74 | 16 | laforge | * User Manual: http://ftp.osmocom.org/docs/latest/osmobts-usermanual.pdf |
75 | * VTY Reference: http://ftp.osmocom.org/docs/latest/osmobsc-vty-reference.pdf |
||
76 | * Abis Protocol Manual: http://ftp.osmocom.org/docs/latest/osmobts-abis.pdf |
||
77 | |||
78 | h2. Status |
||
79 | 10 | laforge | |
80 | 9 | laforge | The source code includes a http://cgit.osmocom.org/cgit/osmo-bts/tree/README file with current status information |
81 | |||
82 | 1 | laforge | h2. GPRS support |
83 | 10 | laforge | |
84 | 12 | laforge | In the GSM architecture, the BTS is an element in the circuit-switched domain only. |
85 | 1 | laforge | |
86 | 12 | laforge | For packet-switched support, OsmoBTS provides a socket interface towards [[OsmoPCU:]]. This adds GPRS and EDGE support to it. |
87 | 10 | laforge | |
88 | h2. Source code |
||
89 | |||
90 | |||
91 | 1 | laforge | The source code is available from git.osmocom.org (module osmo-bts). |
92 | 6 | ipse | |
93 | Public read-only access is available via |
||
94 | git clone git://git.osmocom.org/osmo-bts.git |
||
95 | You can browse it via cgit: http://cgit.osmocom.org/cgit/osmo-bts/ |
||
96 | |||
97 | |||
98 | 10 | laforge | h2. Authors / Credits |
99 | 1 | laforge | |
100 | 10 | laforge | |
101 | [[OsmoBTS]] was originally developed in 2011 by Andreas Eversberg and Harald Welte. |
||
102 | 9 | laforge | |
103 | 12 | laforge | Today it is mostly maintained by Harald Welte and Holger Freyther at sysmocom. Exception is the osmo-bts-trx back-end which is maintained by Fairwaves. |