Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
7
BAB II
LANDASAN TEORI
2.1 Teknologi Radio Online Streaming
Penggunaan internet membuat ketersediaan dari streaming media. Audio
streaming memperbolehkan transmisi langsung dari audio melalui internet,
merubah internet menjadi perantara broadcast[4]. Dalam dunia internet, streaming
mengacu kepada teknologi yang mampu mengkompresi atau menyusutkan ukuran
file audio dan video agar mudah dilewatkan melalui jaringan yang terbatas
bandwidthnya[8]. Proses transfer file audio dan video tersebut dilakukan secara
“stream”, atau mengalir. Dari prosesnya, streaming berarti sebuah teknologi
pengiriman file dari server ke klien melalui jaringan packet based misalnya
internet. File tersebut berupa rangkaian paket time-stimped yang disebut stream.
Sedangkan menurut pengguna, streaming adalah teknologi yang memungkinkan
suatu file dapat segera dijalankan tanpa harus menunggu selesai diunduh dan terus
“mengalir” tanpa ada interupsi. Pada saat teknologi streaming tersebut belum
diperkenalkan secara luas, File audio atau video sebelum dapat kita dengar atau
lihat di komputer kita harus didownload terlebih dahulu. Untuk mendownload file
audio atau video hingga selesai tentunya memerlukan waktu yang cukup banyak.
Contohya ketika file audio besarnya adalah 8 Mb, maka kita memerlukan 2,27
menit jika menggunakan akses internet dengan kecepatan 56 Kbps.
Untuk membangun sebuah radio online yang efisien dan nyaman untuk
diakses, dibutuhkan software streaming yang tidak menggunakan resource
bandwidth yang besar serta pengaturan encode kita harus sekecil mungkin.
Beberapa server radio internet memiliki ukuran yang tidak terlalu besar, misalnya
Icecast yang bersifat open source, juga SHOUTcast server yang hanya berukuran
136 KB. Keduanya memang memiliki kelebihan dan kekurangan masing-masing.
Didalam radio online streaming terdapat tiga komponen utama, yaitu Audio
Broadcasting system (ABS), Source Client (Streamer), Media Player (Interface
Listener)[9].
Alur proses kerja radio
masuk akan diolah oleh
Kemudian server akan menampung data yang telah diterima sebelum akhirnya
dibroadcast menuju jaringan int
yang telah dibroadcast
streaming. Sebelum bisa terhubung,
dan port agar mempermudah pendengar untuk mengakses radio
2.2 Icecast
Icecast adalah free server software
dan mendukung codec
audio yaitu MPEG-
perangkat-perangkat
tersebut sekalipun juga memungkinkan untuk format audio lainnya
digunakan untuk membuat radio internet atau
keduanya. Icecast sangat fleksibel sehingga format
ditambahkan dan mendukun
Icecast memiliki dukungan untuk
aliran memiliki “mount point
jaringan[15].
Gambar 2.1 Arsitektur Radio Sederhana
Alur proses kerja radio streaming dapat dilihat pada Gambar 2.1.
masuk akan diolah oleh source client dan akan dikirimkan ke Icecast2
akan menampung data yang telah diterima sebelum akhirnya
menuju jaringan internet. Pendengar/listener dapat mengakses siaran
broadcast menggunakan player yang mendukung untuk melakukan
. Sebelum bisa terhubung, server radio streaming harus memiliki
agar mempermudah pendengar untuk mengakses radio tersebut.
free server software untuk streaming multimedia
codec AacPlus, juga secara umum menggunakan dua format
1/2 Audio Layer 3 (*.mp3) dan Ogg Vorbis
perangkat streaming dari Icecast juga difasilitasi untuk
tersebut sekalipun juga memungkinkan untuk format audio lainnya
digunakan untuk membuat radio internet atau jukebox pribadi atau diantara
keduanya. Icecast sangat fleksibel sehingga format-format baru sangat mudah
ditambahkan dan mendukung standar terbuka untuk komunikasi dan interaksi.
Icecast memiliki dukungan untuk streaming audio stream secara
mount point” yang klien dapat mengakses, biasanya melalui
8
dapat dilihat pada Gambar 2.1. Data yang
dan akan dikirimkan ke Icecast2 server.
akan menampung data yang telah diterima sebelum akhirnya
dapat mengakses siaran
yang mendukung untuk melakukan
harus memiliki url
tersebut.
multimedia yang handal
AacPlus, juga secara umum menggunakan dua format
(*.mp3) dan Ogg Vorbis. Termasuk
dari Icecast juga difasilitasi untuk kedua format
tersebut sekalipun juga memungkinkan untuk format audio lainnya[9]. Icecast
pribadi atau diantara
format baru sangat mudah
munikasi dan interaksi.
secara simultan setiap
” yang klien dapat mengakses, biasanya melalui URL
9
Untuk menjalankan Icecast membutuhkan tambahan audio libraries dan
aplikasi streamer (source client). Memang beberapa source client didesain
spesifik untuk Icecast 2 yaitu Ices2, DarkIce, LiveIce-ng, dan Ezastream. Tidak
menutup kemungkinan menggunakan source client lain seperti SAM Broadcasrter
atau IDJC (Internet DJ Console). Dalam pengoperasian Icecast, port 8000 harus
terbuka dan tidak menutup kemungkinan semua port diatas 1024 digunakan
selama didefinisikan pada Icecast melalui file konfigurasi yang telah disediakan.
Lisensi Icecast adalah GPL (GNU Public Lisence) yang artinya dapat
dikembangkan sesuai dengan kebutuhan. Platform yang mendukung Icecast yaitu
Linux (Redhat, Debian), FreeBSD, OpenBSD, dan Solaris. Icecast juga
mengembangkan pada platform Windows yaitu Windows NT, Windows 2000,
dan Windows XP[9].
Stream Structure per Mount Point
Gambar 2.2 Bagan Alur Streaming
Alur streaming sederhana dapat dilihat pada Gambar 2.2. Data akan diolah
oleh source client kemudian dikirim ke sisi server (Icecast 2 Server). Kemudian
server akan menampung seluruh data yang diterima dari source client. Lalu
Icecast 2 server melakukan broadcast data ke jaringan, sehingga listener dapat
mengakses data audio yang berada di sisi server menggunakan media player yang
medukung. Server harus memiliki alamat url serta menyediakan port untuk
berlangsungnya alur proses streaming ini. Pendengar dapat terhubung dengan
Icecast 2 server menggunakan berbagai aplikasi klien tentunya karena Icecast 2
tidak memiliki batasan terhadap tipe dari kliennya.
10
2.3 SHOUTcast
SHOUTcast adalah freeware untuk keperluan streaming audio melalui
media internet buatan nullsoft[5]. SHOUTcast merupakan freeware yang biasa
digunakan pada teknologi radio streaming. SHOUTcast membantu user
menyediakan suatu internet radio server pribadi menggunakan software yang
telah tersedia. Server SHOUTcast yang dapat dihubungi oleh user yang ingin
mendengarkan file audio streaming. Server SHOUTcast dapat diubah dengan
memilih menu Edit Config[1]. File konfigurasi ini berbentuk teks yang dilengkapi
dengan keterangan pembantu. Dibutuhkan plugin untuk mengirim stream MP3 ke
server SHOUTcast. Plugin ini disebut SHOUTcast Source for Winamp[6]. Pada
plugin ini juga terdapat parameter-parameter yang dapat dikonfigurasi antara lain :
lokasi server yang dituju, port, dan password. Format dari output audio dapat
dijalankan menggunakan berbagai software yang telah banyak digunakan saat ini,
antara lain: Winamp, Real Player, Media Player, QuickTime, dan lain-lain.
2.4 Darwin Streaming Server
Darwin Streaming Server (DSS) adalah sebuah open source yang ditujukan
untuk pengembang yang perlu streaming QuickTime dan MPEG-4 media pada
platform alternatif seperti Mac, windows, Linux, dan Solaris, atau para
pengembang yang perlu memperpanjang dan/atau memodifikasi kode streaming
server yang ada sesuai dengan kebutuhan mereka. Darwin Streaming Server
hanya didukung oleh komunitas open source dan tidak memenuhi syarat untuk
dukungan teknis dari Apple.
2.5 Sistem Transmisi Pada Proses Streaming
Proses streaming merupakan teknologi untuk memainkan file audio atau
video secara langsung (live) maupun dengan prerecord dari sebuah mesin server
(Web server). File audio atau video yang terletak pada sebuah server dapat secara
langsung dijalankan pada komputer klien sesaat setelah ada permintaan dari
pengguna tanpa harus menunggu file tersebut selesai diunduh. Sebenarnya
streaming adalah proses pengiriman data terus-menerus yang dilakukan secara
11
broadcast melalui internet/intranet untuk ditampilkan oleh aplikasi streaming
pada PC (klien)[9].
Jika ditinjau dari cara penerimaan datagram oleh host pada jaringan TCP/IP
dalam proses streaming, ada beberapa cara yang dapat ditempuh untuk mendesain
aplikasi jaringan yang bersifat multipoint yaitu Unicast, Multicast, dan Broadcast.
2.5.1 Unicast
Unicast dapat diartikan sebagai transmisi data, transmisi unicast merupakan
transmisi informasi yang dilakukan ke satu pengirim (point to point). Setiap
penerima akan memperoleh stream yang berbeda walau menampilkan film yang
sama[3]. Seperti pada Gambar 2.3, jika sebuah radio internet menggunakan
koneksi unicast, maka akan membutuhkan bandwidth yang besar, karena host
sumber harus mengirimkan informasi yang sama sebanyak jumlah host yang
berhubungan dengannya, walaupun berada pada satu shared media seperti
Ethernet.
Gambar 2.3 Komunikasi Data Unicast
Unicast memiliki keterbatasan, terutama jika jumlah host yang terlibat
dalam komunikasi ini sangat banyak. Host yang terhubung harus membuat
hubungan komunikasi sebanyak host yang terlibat. Selain ini traffic yang
ditimbulkan oleh komunikasi ini akan berlipat ganda sebanyak host yang terlibat.
Hal ini akan mengakibatkan masalah pada pemakaian bandwidth.
12
2.5.2 Multicast
Transmisi multicast merupakan transmisi dari satu pengirim ke banyak
penerima yang terdapat di dalam satu buah grup-grup tertentu (one to group),
sehingga setiap penerima akan mendapatkan stream yang sama[3].
Multicast group memiliki sebuah alamat multicast, yaitu kelas D dalam
alamat IPv4 atau memang alamat multicast dalam alamat IPv6. Alamat-alamat
multicast IPv4 didefinisikan dalam 224.0.0.0/4, berkisar dari 224.0.0.0 –
239.255.255.255. Prefiks alamat 224.0.0.0/24 (dari 224.0.0.0-224.0.0.255) tidak
dapat digunakan karena dicadangkan untuk digunakan oleh lalu lintas multicast
dalam subnet local[9]. Cara kerja dari transmisi multicast secara sederhana
dijelaskan pada Gambar 2.4.
Gambar 2.4 Komunikasi Data Multicast
2.5.3 Broadcast
Transmisi broadcast merupakan transmisi dari satu buah pengirim ke
banyak penerima dalam seluruh jaringan yang terkoneksi (one to many). Pesan–
pesan berukuran kecil disebut paket, yang dikirimkan oleh suatu mesin akan
diterima oleh mesin–mesin lainnya [3]. Walaupun broadcast cenderung
membuang resource, beberapa protocol seperti ARP, bergantung kepadanya.
Dengan demikian, terjadinya beberapa traffic broadcast tidak dapat dihindari.
Broadcast pada jaringan komputer merupakan jenis paket yang berasal dari satu
titik, dan memiliki tujuan ke semua titik lain yang ada di jaringan. Alamat IP
Broadcast berbeda dengan alamat IP Unicast atau alamat IP Multicast, karena
13
hanya dapat digunakan sebagai alamat tujuan saja, sehingga tidak digunakan
sebagai alamat sumber. Alamat IP Broadcast ada empat jenis, yakni network
broadcast, subnet broadcast, all-subnets-directed broadcast, dan limited
broadcast. Untuk jaringan Ethernet dan token ring, semua paket broadcast IP
akan dikirimkan ke alamat broadcast Ethernet dan token ring, yakni 0xFF-FF-FF-
FF-FF-FF.
Pengiriman paket data diharuskan yang dapat diterima oleh setiap perangkat
yang ada di dalam jaringan broadcast. Untuk mengurangi implikasi adanya burst
data, implementasi biasanya terbatas untuk LAN, spesifik untuk Ethernet dan
token ring. Ada juga broadcast domain yang mana merupakan logic segmen
jaringan dimana setiap komputer yang terhubung dapat mengirimkan data ke
komputer lain didalam domain tanpa melewati suatu perangkat routing.
Metode broadcast merupakan cara yang tepat untuk digunakan dalam
menyampaikan informasi yang sama kepada seluruh host. Karena seluruh host
yang ada pada satu jaringan memiliki broadcast address yang sama, maka host
cukup mengirimkan satu datagram yang ditujukan ke broadcast address jaringan
yang bersangkutan., dan seluruh host akan menerima datagram tersebut sebagai
informasi yang harus diterima.
2.6 Bitrate
Bitrate mengacu pada jumlah bit atau jumlah data yang diproses di dalam
jumlah waktu tertentu. Bitrate merupakan suatu ukuran kecepatan transfer bit
suatu data dari tempat satu ke tempat lain biasanya diukur dengan waktu seperti
Kbps (Kilobit per second), Mbps (Megabit per second) dan seterusnya. Nilai
suatu bitrate yang terdapat pada audio atau video mempresentasikan karakteristik
data tersebut.
Semakin banyak ruang memory yang digunakan pada komputer
menunjukkan bahwa semakin tinggi nilai bitrate dari sebuah audio atau video.
Karena bit adalah pembentuk dari suatu byte, dimana byte itu mempresentasikan
sebuah karakter, jadi semakin besar bitratenya maka semakin halus juga hasil
suara yang kita dengarkan. Overall Bit Rate adalah total nilai bit rate secara
keseluruhan[9].
14
2.7 Quality of Service (QoS)
Berdasarkan dokumen ITU-T E.800, Quality of Service (QoS) merupakan
mekanisme penilaian yang bersifat kolektif terhadap kualitas layanan
telekomunikasi yang diterima oleh pengguna. QoS dapat diartikan sebagai
kemampuan sebuah jaringan untuk menyediakan layanan yang baik terhadap
parameter QoS yang ada. Parameter QoS secara umum terdiri dari Throughput,
Packet Loss, Delay, Jitter[10].
2.7.1 Throughput
Throughput adalah kecepatan (rate) transfer data efektif, yang diukur dalam
bps. Throughput merupakan jumlah total kedatangan paket yang sukses yang
diamati pada tujuan selama interval waktu tertentu dibagi oleh durasi interval
waktu tersebut [16].
Throughput dapat dikatakan sebagai bandwidth aktual yang terukur pada
suatu ukuran waktu tertentu dalam suatu transmisi. walaupun throughput memiliki
satuan dan rumus yang sama dengan bandwidth, tetapi throughput lebih pada
menggambarkan bandwidth yang sebenarnya (aktual) pada suatu waktu tertentu
dan pada kondisi dan jaringan internet tertentu yang digunakan untuk
mendownload suatu file denngan ukuran tertentu. Berikut adalah formula
pembanding througput dengan bandwidth:
Jika semisal bandwidth yang kita ketahui adalah 128 kbps, kemudian kita
ingin mendownload file di internet berukuran 256 kbps, seharusnya file sampai ke
user hanya 2 detik (256/128), namun yang terjadi file tiba dalam waktu 8 detik.
Jadi bandwidth aktual atau disebut throughput adalah 256kb/8 detik = 32 kbps.
Sering kali nilai throughput berbeda jauh dengan bandwidth maksimum yang
sebenarnya.
Waktu download terbaik = file size
bandwidth
Waktu download typical = file size
throughput
2.1
2.2
15
2.7.2 Packet Loss (Paket Hilang)
Penyebab utama pelemahan audio dan video pada multimedia streaming
adalah packet loss (paket hilang). Packet Loss dapat didefenisikan sebagai
kegagalan mentransmisikan paket pada alamat tujuannya sehingga menyebabkan
beberapa paket dalam waktu pengiriman hilang atau lost [13]. Kegagalan paket
tersebut mencapai tujuan, dapat disebabkan oleh beberapa kemungkinkan,
diantaranya yaitu: Terjadinya overload trafik didalam jaringan, tabrakan
(congestion) dalam jaringan, error yang terjadi pada media fisik, dan kegagalan
yang terjadi pada sisi penerima antara lain bisa disebabkan karena overflow yang
terjadi pada buffer[2]. Tabel 2.1 menunjukkan rekomendasi nilai paket hilang
yang mempengaruhi kualitas layanan (QoS).
Tabel 2.1 Rekomendasi Nilai Paket Hilang Berdasarkan ITU-T G.114
Kategori Packet loss ratio (%)
Sangat Bagus 0%
Bagus 3%
Jelek 15%
Sangat Jelek 25%
Packet Loss terjadi ketika peak load dan congestion (kemacetan akibat
padatnya traffic yang harus dilayani) dalam batas waktu tertentu, sehingga frame
(gabungan data payload dan header yang ditansmisikan) suara akan dibuang
sebagaimana perlakuan terhadap frame data lainnya pada jaringan berbasis IP.
2.7.3 Delay (Waktu Tunda)
Waktu tunda (delay) merupakan akumulasi berbagai waktu tunda dari ujung
ke ujung pada jaringan Internet. Waktu tunda mempengaruhi kualitas layanan
(QoS) karena waktu tunda menyebabkan suatu paket lebih lama mencapai tujuan
[17]. Adapun komponen delay ditunjukkan pada Tabel 2.2.
Tabel 2.2 Jenis-Jenis Delay
Jenis Delay Keterangan
Algorithmic
Delay
Disebabkan oleh standar codec yang digunakan.
Contohnya Algorithmic delay untuk G.711 adalah 0 ms.
16
Packettization
Delay
Delay yang disebabkan oleh pengakumilasian bit voice
sample ke frame. Seperti contonya standar G.711 untuk
payload 160 bytes memakan waktu 20 ms.
Serialization
Delay
Delay ini terjadi karena adanya waktu yang dibutuhkan
untuk pentransmisian paket IP dari sisi originating
(pengirim).
Propagation
Delay
Terjadi perambatan pada paket IP di media transmisi ke
alamat tujuan. Seperti contonya delay propagasi dalam
kabel akan memakan waktu 4 sampai 6 µs per km-nya.
Coder
(processing)
Delay
Waktu yang dibutuhkan oleh Digital Signal Processing
(DSP) untuk mengkompres sebuah blok PCM, nilainya
bervariasi bergantung dari codec dan kecepatan
prosessor.
Gambar 2.5 Ilustrasi Delay dalam jaringan
Gambaran secara sederhana delay dalam jaringan ditunjukkan pada Gambar
2.5. ITU-T G.114 merekomendasikan waktu tunda tidak lebih besar dari 150 ms
17
untuk berbagai aplikasi, dengan batas 400 ms untuk komunikasi suara yang masih
dapat diterima[11]. Rekomendasi tersebut ditunjukkan di Tabel 2.3.
Tabel 2.3 Pengelompokan Waktu Tunda Berdasarkan ITU-T G.114
Kategori Besar delay (ms)
Sangat Bagus <150 ms
Bagus 150 ms s/d 300 ms
Jelek 300 ms s/d 450 ms
Sangat Jelek >450 ms
2.7.4 Jitter
Jitter adalah jumlah variasi waktu kedatangan paket-paket yang dikirimkan
terus-menerus dari satu terminal (source) ke terminal lain (destination) pada
jaringan IP. Biasanya dikenal juga dengan standar deviasi. Beban trafik,
perubahan rute paket, kemacetan paket (congestion), dan waktu tunda pemrosesan
merupakan penyebab terjadinya standar deviasi. Semakin besar peluang terjadinya
kemacetan paket disebabkan oleh semakin besar beban trafik dalam jaringan.
Dengan demikian, nilai variasi waktu tunda akan semakin meningkat dan nilai
Quality of Service (QoS) akan menurun. Tabel 2.4 menunjukan beberapa kategori
jitter yang baik dan jelek untuk radio streaming menurut rekomendasi ITU-T
G.114 [11].
Tabel 2.4 Rekomendasi ITU-T G.114 Untuk Jitter.
Kategori Jitter
Sangat Bagus 0 ms
Bagus 0 ms s/d 75 ms
Sedang 76 ms s/d 125 ms
Jelek 125 ms s/d 225 ms
2.8 Web Server
Web Server adalah komputer yang digunakan untuk menyimpan dokumen-
dokumen web, komputer ini akan melayani permintaan dokumen web dari
kliennya[12]. Web server melayani request protokol HTTP dari client yang
18
menggunakan web browser. Dalam membangun sebuah web server dibutuhkan
suatu aplikasi web server, salah satunya adalah Apache. Apache merupakan
aplikasi web server yang dapat berjalan di banyak sistem operasi, seperti Unix,
FreeBSD, Linux, Microsoft Windows dan Novell [7].