14
 Bengkel Jaringan dan Multimedia Laboratorium Jaringan Akses(N111) Institut Teknologi Telkom 2013 Accessnet.Lab 1 MODUL OPENBTS Tujuan Praktikum  Praktikan mengenal istilah openbts dan cara kerjanya.  Praktikan mengetahui kebutuhan hardware dan software openbts.  Praktikan bisa membuat openbts open source sederhana. Alat-alat praktikum Software:   GNU Radio (untuk mengendalikan USRP)  Asterisk (untuk softswitch dan sentral telepon)  OpenBTS (untuk menjalankan fungsi BTS) Hardware:  Komputer USRP Antena Kabel USB A. DASAR TEORI  1. Sistem GSM (Global System for Mobile Communication) GSM (Global System for Mobile communication) adalah suatu teknologi yang digunakan dalam komunikasi mobile dengan sistem digital dan jaringan yang sudah  bersifat global. Dengan menggunakan sistem digital dalam transmisi datanya, membuat kualitas dan bit ratenya lebih baik dibanding dengan sistem analog. Handphone adalah contoh aplikasi teknologi GSM yang paling populer. GSM telah dikembangkan menjadi tiga kelompok, yaitu GSM 900, 1800 dan 1900. Yang membedakannya adalah lokasi band frekuensi yang digunakan.

Modul Openbts

Embed Size (px)

Citation preview

  • 5/22/2018 Modul Openbts

    1/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 1

    MODUL OPENBTS

    Tujuan Praktikum

    Praktikan mengenal istilah openbts dan cara kerjanya. Praktikan mengetahui kebutuhan hardware dan software openbts. Praktikan bisa membuat openbts open source sederhana.

    Alat-alat praktikum

    Software:

    GNU Radio (untuk mengendalikan USRP) Asterisk (untuk softswitch dan sentral

    telepon)

    OpenBTS (untuk menjalankan fungsiBTS)

    Hardware:

    Komputer

    USRP

    Antena

    Kabel USB

    A. DASAR TEORI

    1. Sistem GSM (Global System for Mobile Communication)

    GSM (Global System for Mobile communication) adalah suatu teknologi yang

    digunakan dalam komunikasi mobile dengan sistem digital dan jaringan yang sudah

    bersifat global. Dengan menggunakan sistem digital dalam transmisi datanya,

    membuat kualitas dan bit ratenya lebih baik dibanding dengan sistem analog.

    Handphone adalah contoh aplikasi teknologi GSM yang paling populer. GSM telah

    dikembangkan menjadi tiga kelompok, yaitu GSM 900, 1800 dan 1900. Yang

    membedakannya adalah lokasi band frekuensi yang digunakan.

  • 5/22/2018 Modul Openbts

    2/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 2

    2. OpenBTS

    OpenBTS adalah aplikasi BTS (Base Transceiver Station) yang berjalan pada

    platform linux dan merupakan perangkat lunak terbuka. OpenBTS menggunakan

    sebuah perangkat keras yang bernama USRP (Universal Software Radio Peripheral).

    Perangkat inilah yang menghubungkan openBTS dengan jaringan standar telepon

    selular (GSM). OpenBTS juga menggunakan perangkat lunak terbuka asterisk untuk

    menginterkoneksikan dengan jaringan telepon lainnya seperti PSTN (Public Switched

    Telephone Network) ataupun operator telekomunikasi lainnya dengan menggunakan

    VoIP (Voice over IP).

    OpenBTS mengganti infrastruktur tradisional operator GSM, dari Base

    Transceiver Station (BTS) ke belakangnya. Dari yang biasanya trafik diteruskan ke

    Mobile Switching Center (MSC), pada OpenBTS trafik diterminasi pada box yang

    sama dengan cara meneruskan data ke Asterisk PBX melalui SIP dan Voice-over-IP

    (VoIP). Jantung OpenBTS itu sendiri sebenarnya adalah aplikasi GNU Radio,

    berfungsi sebagai pengendali USRP. Untuk manajemen dan lalu lintas suara (voice)

    digunakan aplikasi Asterisk (protokol VoIP SIP). Fungsi dari Asterisk mirip dengan

    perangkat (hardware) MSC (Mobile Switching Centre) pada sistem GSM. Karena itu

    Asterisk disebut juga softswitch karena berbasis piranti lunak.

    Manfaat dari pengembangan OpenBTS ini adalah untuk mengurangi biaya

    layanan GSM di wilayah rural negara berkembang, sebagaimana yang dijalankan oleh

    Harvind Samra dan David A. Burgess (2009). Kemudian di tahun 2010 sebuah sistem

  • 5/22/2018 Modul Openbts

    3/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 3

    OpenBTS dipasang secara permanen di Nieu yang merupakan instalasi pertama yang

    tersambung dan dicoba oleh perusahaan telekomunikasi di sana.

    3. Keuntungan OpenBTS:

    Memungkinkan pengguna jasa untuk dapat bertelpon dan mengirim sms secaragratis.

    Sangat berguna untuk daerah terpencil yang belum ada infrastrukturtelekomunikasinya.

    Solusi untuk daerah pasca bencana. Relatif murah, dan instalasi sangat cepat dan mudah. Kualitas suara dan transmisi datanya sama baiknya dengan operator seluler. Software mudah didapatkan.

    4. USRP

    Universal Software Radio Peripheral (USRP), merupakan salah satuperangkat

    yang dipergunakan untuk membangun sebuah OpenBTS, di dalam USRP sendiri

    dibagi menjadi 2 bagian yaitu :

  • 5/22/2018 Modul Openbts

    4/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 4

    - Mother Board ( Main Board )- Daughter Board ( Child Board )

    USRP diproduksi oleh Ettus Research LLC serta perusahaan dibawahnya, tujuan

    dari USRP ini sendiri adalah untuk menfasilitasi pengembangan perangkat lunak radio

    yang murah. Cara kerja dari USRP ini adalah menghubungan komputer host melalui

    USB maupun Gigabit Ethernet yang berkecepatan tinggi. Koneksi ini memungkinkan

    perangkat lunak untuk mengontrol USRP dan menyiapkan signal untuk mengirim dan

    menerima data.

    5. AsteriskAsterisk adalah suatu open source software yang biasanya digunakan untuk

    membangun suatu sistem layanan komunikasi atau dengan kata lain bertindak sebagai

    sentral telpon jaringan telekomunikasi. Asterisk dapat melakukan koneksi dengan

    semua standar telephoni, dengan menggunakan hardware yang tidak begitu mahal

    sebagai gateway-nya. Protokol yang digunakan adalah SIP (Session Initiation

    Protocol) yang merupakan penyempurnaan dari VoIP (Voice Over Internet Protocol).

    Jadi Asterisk ini digunakan sebagai softswitch dan sebagai sentral telepon.

    6. GNU Radio

    GNU radio adalah perangkat software yang bisa digunakan untuk membuat

    sebuah software-defined radio. Software defined radio adalah radio yang bagian

    signal processingnya dijalankan secara software. GNU Radio merupakan salah satu

    perangkat lunak yang akan digunakan dalam mengoperasikan OpenBTS.

    Salah satu kelebihan GNU Radio adalah perangkat lunak dengan kode sumber

    terbuka dan merupakan perangkat lunak bebas. GNU radio untuk berbagai hal, mulai

    dari akuisisi data GPS, transmitter DVB, komunikasi data, perancangan wimax, radar,

    dan bahkan untuk membuat sebuah BTS.

    7. Software OpenBTS

    Software OpenBTS merupakan software yang menjalankun fungsi base

  • 5/22/2018 Modul Openbts

    5/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 5

    stasion di PC agar dapat berkomunikasi dengan handset salularan. Software ini

    digunakan untuk mengontrol operasi BTS.

    8. Topologi OpenBTS:

    GNU Radio OpenBTS Asterisk

    USRPLAPTOP / Linux

    Computer

    RFX900/

    1800RFX900/

    1800

    Switch

    Client VoIP

    Client VoIP

    MS OpenBTS

    MS OpenBTS

    MS OpenBTS

    B. Langkah-langkah praktikum

    1. Instalasi dan Konfigurasi Sisitema) GNU Radio

    Install Library# apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev

    swig g++ automake libtool python-dev libfftw3-dev libcppunit-dev

    libboost-all-dev libusb-dev fort77 sdcc sdcc-libraries libsdl1.2-dev

    python-wxgtk2.8 subversion git-core guile-1.8-dev libqt4-dev

    python-numpy ccache python-opengl libgsl0-dev python-cheetah

    python-lxml doxygen qt4-dev-tools libqwt5-qt4-dev libqwtplot3d-

    qt4-dev pyqt4-dev-tools libpcre3 libpcre3-dbg libpcre3-dev

    libpcrecpp0

  • 5/22/2018 Modul Openbts

    6/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 6

    Install WxWidget

    Install SWIG

    Install QWT

    # nano /etc/apt/sources.list

    Lalu copy-kan :

    debhttp://apt.wxwidgets.org/DIST-wx main

    deb-srchttp://apt.wxwidgets.org/DIST-wx main

    # apt-get update

    # apt-get install python-wxgtk2.8 python-wxtools wx2.8-i18n

    # sudo apt-get install python-wxgtk2.8 python-wxtools wx2.8-i18n

    libwxgtk2.8-dev libgtk2.0-dev

    Download darihttp://sourceforge.net/projects/swig/files/swig/

    # cp swig-2.0.4.tar.gz /usr/local/src/

    # cd /usr/local/src/

    # tar zxvf swig-2.0.4.tar.gz

    # cd /usr/local/src/swig-2.0.4/

    # ./configure

    # make

    # make install

    http://apt.wxwidgets.org/http://apt.wxwidgets.org/http://apt.wxwidgets.org/http://apt.wxwidgets.org/http://apt.wxwidgets.org/http://apt.wxwidgets.org/http://sourceforge.net/projects/swig/files/swig/http://sourceforge.net/projects/swig/files/swig/http://sourceforge.net/projects/swig/files/swig/http://sourceforge.net/projects/swig/files/swig/http://apt.wxwidgets.org/http://apt.wxwidgets.org/
  • 5/22/2018 Modul Openbts

    7/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 7

    Handling USRPUbuntu menggunakan udev untuk menangani hotplug devices, dan secara

    default tidak memberikan akses non-root ke USRP. Script berikut akan

    memberikan akses bagi user untuk menghandel USRP via USB baik secara live

    atau hot-plug:

    Pada titik ini, Ubuntu telah di konfigurasi untuk tahu apa yang harus di

    kerjakan jika medeteksi USRP di USB tapi "udev" perlu me-reload rules untuk

    memasukan rules yang baru kita buat. Langkah berikut dapat dilakukan sehingga

    kita tidak perlu me-reboot komputer.

    # udevadm control --reload-rules

    Download darihttp://sourceforge.net/projects/qwt/files/

    # cp qwt-6.0.1.tar.bz2 /usr/local/src/

    # cd /usr/local/src/

    # tar jxvf qwt-6.0.1.tar.bz2

    # cd /usr/local/src/qwt-6.0.1/

    # qmake

    # make

    # make install

    # addgroup usrp

    # usermod -G usrp -a # echo 'ACTION=="add", BUS=="usb", SYSFS{idVendor}=="fffe",

    SYSFS{idProduct}=="0002", GROUP:="usrp", MODE:="0660"' >

    tmpfile

    # chown root.root tmpfile

    # mv tmpfile /etc/udev/rules.d/10-usrp.rules

    http://sourceforge.net/projects/qwt/files/http://sourceforge.net/projects/qwt/files/http://sourceforge.net/projects/qwt/files/http://sourceforge.net/projects/qwt/files/
  • 5/22/2018 Modul Openbts

    8/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 8

    Kita dapat mencek jika USRP telah dikenali dengan mengamati /dev/bus/usb

    setelah USRP di pasang menggunakan perintah :

    # ls -lR /dev/bus/usb | grep usrp

    Seharusnya akan keluar :

    # crw-rw---- 1 root usrp 189, 1 2012-23-09 17:38 002

    Install GNU Radio

    Verifikasi USRPSelanjutnya kita perlu memverifikasi apakah GNURadio dapat bekerja dengan

    USRP. Untuk tahapan ini kita perlu menyambungkan USRP ke komputer. Cek

    kecepatan sambungan USB ke USRP :

    Maka keluarannya :

    Download darihttp://gnuradio.org/redmine/wiki/gnuradio/Download

    # cp gnuradio-3.3.0.tar.gz /usr/local/src/

    # cd /usr/local/src/

    # tar zxvf gnuradio-3.3.0.tar.gz

    # cd /usr/local/src/gnuradio-3.3.0/

    # ./configure

    # make clean

    # make all

    # make

    # make check

    # make install

    # ldconfig

    # cd /usr/local/src/gnuradio-3.3.0/gnuradio-examples/python/usrp

    # ./usrp_benchmark_usb.py

    http://gnuradio.org/redmine/wiki/gnuradio/Downloadhttp://gnuradio.org/redmine/wiki/gnuradio/Downloadhttp://gnuradio.org/redmine/wiki/gnuradio/Downloadhttp://gnuradio.org/redmine/wiki/gnuradio/Download
  • 5/22/2018 Modul Openbts

    9/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 9

    Testing 2MB/sec... usb_throughput = 2M

    ntotal = 1000000

    nright = 999918runlength = 999918

    delta = 82

    OK

    Testing 4MB/sec... usb_throughput = 4M

    ntotal = 2000000

    nright = 1999492

    runlength = 1999492

    delta = 508

    OK

    Testing 8MB/sec... usb_throughput = 8M

    ntotal = 4000000

    nright = 3998860

    runlength = 3998860

    delta = 1140

    OK

    Testing 16MB/sec... usb_throughput = 16M

    ntotal = 8000000

    nright = 7997680

    runlength = 7997680

    delta = 2320

    OK

    Testing 32MB/sec... usb_throughput = 32M

    ntotal = 16000000

    nright = 15995986

    runlength = 15995986

    delta = 4014

    OK

    Max USB/USRP throughput = 32MB/sec

  • 5/22/2018 Modul Openbts

    10/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 10

    b) OpenBTS Install Library

    Install OpenBTS

    c) AsteriskIntegrasi OpenBTS ke Asterisk sangat sederhana secara prinsip. Setiap SIM akan

    di konfigurasi sebagai SIP user menggunakan IMSI sebagai username. Proses

    memasukan pelanggan OpenBTS melalui dua tahap:

    Dapatkan IMSI dari SIM. Cara nya pilih jaringan OpenBTS, maka otomatisakan mendapatkan sms berisikan nomor IMSI

    Daftarkan di sip.conf dan extension.conf untuk mendapatkan nomor pelangganbaru OpenBTS

    # apt-get install libortp8 libortp-dev libosip2-4 libosip2-dev

    Download darihttp://sourceforge.net/projects/openbts

    # cp openbts-2.6.0Mamou.tar.gz /usr/local/src/

    # cd /usr/local/src/

    # tar zxvf openbts-2.6.0Mamou.tar.gz

    # cd /usr/local/src/openbts-2.6.0Mamou/

    # ./configure

    # make clean

    # make all

    # make

    # make install

    http://sourceforge.net/projects/openbts/http://sourceforge.net/projects/openbts/http://sourceforge.net/projects/openbts/http://sourceforge.net/projects/openbts/
  • 5/22/2018 Modul Openbts

    11/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 11

    Cek nomer IMSI

    Maka akan muncul:

    Lalu ketikkan: tmsis

    Maka akan muncul:

    Nomor-nomor 510XXXXXXXXXXXX adalah nomor SIM card yang terdaftar

    di OpenBTS yang kita operasikan.

    Konfigurasi sip.conf

    # cd /usr/local/src/openbts-2.6.0Mamou/apps

    # ./OpenBTS

    Welcome to OpenBTS. Type "help" to see available commands.

    OpenBTS>

    TMSI IMSI IMEI age used

    0x4f309ebf 510890929069598 ? 22h 22h

    0x4f309ec0 510112410440152 ? 22h 5s

    0x4f309ec1 510110301694405 ? 22h 22h

    0x4f309ec2 510104725431198 ? 22h 22h

    0x4f31da5b 510110026566622 ? 15s 15s

    # nano /etc/asterisk/sip.conf

    Lalu isikan :

    [IMSI510890929069598]

    callerid=1000

    canreinvite=no

  • 5/22/2018 Modul Openbts

    12/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 12

    Konfigurasi extension.conf

    d) Menjalankan OpenBTS Cek sambungan USRP ke OpenBTS

    Maka akan muncul:

    type=friend

    allow=gsm

    context=default

    host=dynamic

    [IMSI510112410440152]

    callerid=1111

    canreinvite=no

    type=friend

    allow=gsm

    context=default

    host=dynamic

    # nano /etc/asterisk/extension.conf

    Isikan :

    exten => 1000,1,Dial(SIP/IMSI510890929069598,60,rt)

    exten => 1000,2,Hangup

    exten => 1001,1,Dial(SIP/IMSI510112410440152,60,rt)

    exten => 1001,2,Hangup

    # cd /usr/local/src/openbts-2.6.0Mamou/Transceiver

    # ./USRPping

  • 5/22/2018 Modul Openbts

    13/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 13

    Jalankan Asterisk

    Jalankan OpenBTS

    1291894660.4831 FORCE 3078457040 Logger.cpp:194:gLogInit:

    Setting initial global logging level to INFO

    1291894660.4834 INFO 3078457040

    USRPDevice.cpp:142:USRPDevice: creating USRP device...

    1291894660.4834 INFO 3078457040 USRPDevice.cpp:158:make:

    making USRP device..

    1291894660.8221 INFO 3078457040

    USRPDevice.cpp:528:setTxFreq: set TX: -4000000.0000 actual

    TX: -4000000.0000

    1291894660.8365 INFO 3078457040 USRPDevice.cpp:224:start:

    starting USRP...

    1291894660.8449 INFO 3078457040 USRPDevice.cpp:245:start:

    TX pgas: 0.0000, 0.0000

    1291894660.8502 INFO 3078457040 USRPping.cpp:55:main:

    Looping...

    1291894660.9474 INFO 3078457040 USRPping.cpp:78:main: rcvd.

    data@:19000

    1291894660.9475 INFO 3078457040 USRPping.cpp:78:main: rcvd.

    data@:19512

    1291894660.9475 INFO 3078457040 USRPping.cpp:78:main: rcvd.

    data@:20024

    1291894660.9476 INFO 3078457040 USRPping.cpp:78:main: rcvd.

    data@:20536

    # /etc/init.d/asterisk restart

    # asterisk -r

  • 5/22/2018 Modul Openbts

    14/14

    Bengkel Jaringan dan Multimedia

    Laboratorium Jaringan Akses(N111)

    Institut Teknologi Telkom 2013

    Accessnet.Lab 14

    Bila baru pertama kali menjalankan, copy file OpenBTS.cnfig.examples terlebihdahulu.

    Setelah itu, baru jalankan OpenBTS

    # cd /usr/local/src/openbts-2.6.0Mamou/apps

    # cp OpenBTS.config.example OpenBTS.config

    ./OpenBTS