5.2  Saran
Adapun saran dari Tugas Akhir ini adalah sebagai berikut : 1.
Pada tugas akhir selanjutnya agar menambahkan parameter lain seperti throughput, jitter,
dll. 2.
Pada tugas akhir selanjutnya agar menambahkan rateless codes, seperti rateless codes 25, 75 untuk memperoleh hasil yang lebih presisi.
Universitas Sumatera Utara
BAB II DASAR TEORI
2.1 Content Delivery Network CDN
CDN adalah sebuah sistem jaringan server untuk mendistribusikan konten yang ada dalam sebuah aplikasiweb ke berbagai pengaksespengguna di berbagai
belahan dunia agar datakonten yang dikirim dan diterima lebih cepat. CDN diperuntukkan untuk website atau aplikasi yang pengaksesnya dari berbagai
belahan dunia. Server jaringan CDN  terdistribusi secara global dengan tujuan untuk
melayani konten ke pengguna dengan ketersediaan yang besar dan performa tinggi. CDN melayani sebagian besar konten di internet saat ini termasuk objek
web teks, grafis dan script, obyek download file media, software, aplikasi e- commerce
, portal, media live streaming,  on-demand streaming  media, dan jaringan sosial.
Konsep CDN adalah dengan meletakkan beberapa server pada belahan dunia sehingga server utama asli tidak akan langsung melayani permintaan web
request secara langsung melainkan melalui server-server pada jaringan CDN.
Keuntungannya, server asli tidak akan mengalami drop  akibat banyaknya permintaan dari pengguna internet, dan efisiensi terhadap delay  dan  packet loss
juga akan semakin baik [1]. Pada Gambar 2.1 menunjukkan konsep dasar dari Content Delivery Network
.
Universitas Sumatera Utara
Gambar 2.1Konsep Dasar Content Delivery Network[1]
2.2  Teknik-Teknik Pembagian Tugas CDN 2.2.1 GEO DNS
GEO DNS adalah serverDNSyangdapat mendistribusikanbeban untukhostnamekemirrors cermin serverterdekat, salah satunya sebagai
penghantar kinerja dari CDN.  Sistem kerja dari GEO DNS dengan memetakan pengguna internet menurut wilayahnya. Kemudian akan dibangun CDN pada
setiap wilayah yang telah dipetakan. Dengan pemetaan wilayah maka setiap client yang melakukan request akan dilayani oleh server terdekat dengan client tersebut
[2]. Original Server in
North America
CDN distribution node
CDN Server in South Amerika
CDN Server in Euorpe
CDN Server in Asia
Universitas Sumatera Utara
2.2.2 Teknologi Akamai
Teknologi Akamai adalah global serviceprovider  yang menyediakan layanan akselerasi global internet content” untuk membantu mempercepat
performa situs dengan cara melakukan copy cache dari website di banyak server yang tersebar di berbagai lokasi. Saat ini Akamai Technologies Inc. mempunyai
lebih dari 15.000 server yang tersebar di 70 negara. Ada beberapa komponen infrastruktur CDN Akamai, tiga komponen
utamanya yaitu: edge server, contentdelivery dan mappingcenter.
Gambar 2. 2 SistemCDNAkamai [2]
Gambar 2.2 mengilustrasikan bagaimana Akamai dalam melakukan pengiriman content ke pengguna. Akamai secara transparan melakukan  mirror
contentcerminan konten audio, graphics, video, animation yang tersimpan pada server klien Akamai ke beberapa edgecache  server yang tersebar di beberapa
negara. Ketika ada request user ke website
www.acme.com
, maka file-file image,
Universitas Sumatera Utara
animasi, video yang terdapat pada halaman
www.acme.com
akan diambil dari edgecache
server yang lokasinya dekat dengan pengguna. Namun ada juga website yang keseluruhan kontentnya diletakkan pada edgecache  server akamai
yang tersebar di beberapa negara [2].
2.2.3 Web Mapper
WebMapper merupakan suatu teknik pemetaan yang prosesnya
menggunakan informasi pemetaan yang  diperoleh dari geographicalinformationsystems
GIS yang   dirancang untuk menangkap, menyimpan, memanipulasi, menganalisis, mengelola dan menyajikan semua jenis
data spasial atau geografis.Sistem kerja dari Web Mapper   pada CDN adalah dengan melakukan record atau rekam jejak client. Ketika clientmelakukan request
website , maka DNS server akan melihat history  dari  client  tersebut pada setiap
server. Kemudian DNS server akan menghubungkan client dengan server terbaik untuk client yang melakukan request web menurut history [3].
2.2.4 Packet Redirection
Packet Redirection adalah suatu teknik pengalihan packet  data dari server
ke server lain yang menangani requestwebsite  untuk memberikan layanan yang lebih cepat. Prinsip kerja packetredirection adalah ketika client 1yang melakukan
request website telah terhubung dengan server 1 dan melakukan upload  atau
download file akan terjadi delay.  Ketika proses request website, jikadelay
dianggap terlalu tinggi, maka server dapat meminta server lain melanjutkan transaksi  packet  yang sedang di download, sehingga kinerja pengiriman paket
Universitas Sumatera Utara
dapat lebih baik. Masing-masing server akan melakukan pertukaran informasi terkait kinerja server, baik secara langsung maupun melalui pihak ketiga serper
DNS server [3].
2.2.5 Load Balancer
Load balancer merupakan sebuah perangkat untuk mendistribusikan beban
pekerjaan secara merata melalui beberapa node yang bekerja pada back-end node. Peran yang paling penting dari Load Balancer yaitu untuk menyediakan sebuah
layanan dari beberapa kumpulan server yang berada sebagai back-end  dari
layanan servernya.
Untuk layanan internet, Load Balancer biasanya merupakan sebuah program perangkat lunak yang terhubung pada port  dimana klien eksternal
tersambung untuk mengakses layanan. Load Balancer meneruskan  request  dari salah satu server dari backend  server, yang biasanya di-replay kembali ke load
balancer . Hal ini memungkinkan Load Balancer untuk me-replayrequest  dari
client tanpa  client  tersebut mengetahui tentang pemisahan fungsi internal dari
layanan server yang ada. Hal ini juga dapat mencegah client  berhubungan langsung dengan server backend, yang mungkin memiliki manfaat keamanan
dengan menyembunyikan struktur jaringan internal dan mencegah serangan pada jaringan[4].
Universitas Sumatera Utara
2.3 Rateless code
Ratelesscode dikenal juga fountain code. Ratelesscode merupakan  suatu
proses pengkodean  yang dapat memperbaiki kesalahan pada saat pentranmisian paket data, karena pada saat proses pentransmisian dapat terjadi lost atau paket
hilang.  Ratelesscode  awalnya dirancang untuk Binary Erasure Channel BEC.. Selain untuk kepentingan teoritis, Binary ErasureChannel  telah mendapatkan
perhatian yang signifikan dalam komunikasi data. Misalnya, di internet ada beberapa data yang ditransmisikan dalam paket-paket kecil, kemudian paket
tersebut  hilang, rusak, tertunda atau tidak memenuhi persyaratan layanan QoS dapat dibuang terhapus.
Tujuan dasar rateless code adalah mempertahankan kualitas trafik meskipun kondisi server memburuk dan memperbaiki setiap paket data yang hilang saat
proses pentransmisian terjadi. Dengan rateless codes tidak perlu diketahui seberapa besar tingkat kehilangan paket dan penerima tidak perlu memberitahu
pengirim paket mana saja yang gagal untuk diterima. Hal ini sangat berguna dalam berbagai situasi dari pengiriman file video pada on demand  tv sampai
dengan propagasi potongan-potongan file ke banyak peer seperti pada BitTorrent. Sistem kerja dari rateless code yaitu, encode diumpakan sebagai air mancur
dan decode diumpamakan sebuah embernya yang akan menampung air mancur tersebut. Ketika airnya diumpakan sebuah paket data, dan saat proses penerimaan
paket data dari server ke client, pentransmisian paket data tidak peduli  apakah paket data itu diterima dengan baik ataupun loss, karena hanya paket data yang
sukses diterima saja untuk diproses nantinya. Dengan kata lain, kita membuat sebuah air mancur dari data yang dikodekan dimana penerima dapat menyusun
Universitas Sumatera Utara
kembali data asli hanya dengan menerima cukup airpaket data yang dikodekan secara acak.Ratelesscode  terdapat beberapa bagian yaitu LT LubyTranform  ,
TornadoCode dan  RaptorCode.
Pada Gambar 2.3 menunjukan sebuah ilustrasi dari rateless code.
Gambar 2. 3 Ilustrasi ratelesscode
2.3.1 LT Luby Transform
LT Code pertama kali direalisasikan pada fountain code atau yang sering disebut rateless code. Encode informasi K pada LT code disimbolkan x
1,
x
2,
…x
k
menjadi beberapa simbol keluaran yang tak terbatas z
1
, z
2
, z
3
,…... Simbol informasi masukan dapat barupa simbol satu bitbinery  atau berupa packet  data.
Algoritama  endcoding  dan  decoding  pada LT code cukup sederhana, karena algoritmanya serupa dengan proses parity-check, dimana fungsi dari parity-check
untuk mengecek urutan bit-bit  data dan bit parity  setelah data itu dikirim atau ditransmisikan. Untuk proses algoritma encoding dilakukan dengan cara berikut :
1. Suatu  d  dipilih untuk sampling  dari distribusi D  yang diberikan, yang
disebut dengan “degreedistribution”. Biarkan Ω
1,
Ω
2,….
Ω
k
menjadi distribusi {1, 2, …, K kemudian dipilihnya nilai i sebagai probabilitas yang
diwakili seperti Ω
i
. Degree distribution D  dilambang  oleh  polynomial Ω� =   ∑
��
� �
�=1
.
Universitas Sumatera Utara
2. Simbol input d    dipilih secara seragam dari simbol input K  yang dipilih
secara acak. Nilai dari simbol output berupa XOR yang berasal dari simbol input  d,
� = ∑ �
�
�
� �
�=1
dimana koefiseian �
�
∈ {0,1}  untuk  � = 1, 2, … . , K, ∑
�
�
= �
� �=1
dan menggunak 2 bit penjumlahan. Berdasarkan asumsi yang dibuat, receiver penerima berasal dari koefisien
�
�
. Dalam prakteknya hal ini dapat dicapai dengan berbagai cara. Sebagai contoh, derajat degree  dan daftar tetangga dapat dimasukan ke dalam packetheader
kemudian kedua encoder  dan  decoder  menggunakan fungsi yang sama sebagai kunci untuk menghitung derjat degree dan set tetangga neighbor [5]. Proses
encoding dari LT code dapat dilihat pada
Gambar 2.4. Simbol informasi           1          0            1             1           0          0         1
Input variabel node Simbol encoding                         1             0             0           1                  Channel
Output variabel node
Gambar 2. 4 Proses simbol encoding [6]
Pada Gambar 2.3, nodevariableinput  merupakan simbol informasi dan nodevariabeloutput
berupa simbol encoding.  Nodevariableinput  dan nodevariabeloutput
merupakan hasil penjumblahan XOR. Untuk mengembalikan simbol informasi ke dalam bentuk asli diperlukan proses decoding. Algoritma
decoding dilakukan dengan cara berikut :
Universitas Sumatera Utara
1. Cari simbol encode  z
n
yang hanya berhubungan 1 simbol informasi x
i
kemudian simbol informasi decode, i.e, menentukan x
i
dari z
n
. Jika tidak seperti simbol encode maka proses decoding akan berhenti.
2. Tambahkan simbol informasi decode  pada x
i
untuk semua simbol encode lainnya yang berhubungan dengan x
i
.Kemudian hapus semua bagian pinggir yang berbungan denga x
i
. 3.
Ulangi langkah 1 dan 2 hingga semua simbol informasi yang decode kan sukses.
2.4 NetworkSimulator NS-2
Network Simulator versi 2  atau yangdikenal sebagaiNS-2  merupakan
sebuahprogramsimulasi berbasis kejadianyang
banyak digunakanuntuk mempelajarisifat dinamis darijaringan dan protokol komunikasi.  NS-2  mampu
mensimulasikan jaringankabeldanjaringan nirkabelserta  protokolnya yang meliputi:algoritmarouting,protokol komunikasi, penjadwalan, algoritma  akses
dan lain-lain [7]. Pada Gambar 2.5 menunjukan arsitektur dasar NS-2. NS-2 menggunakan
dua jenis bahasa pemrograman, C++ dan TCL. C++ digunakan sebagai core proses simulasi, sementara TCL untuk konfigurasi jaringan.
Universitas Sumatera Utara
Gambar 2. 5 Arsitektur dasar NS-2
TclCL dan OTcl adalah komponen TCL yang berfungsi untuk menjembatani konfigurasi dengan proses simulasi. NS-2 dieksekusi melalui
perintah eksekusi command line. Hasil simulasi berupa catatan atau trace  yang dapat dipergunakan oleh Network Animator  Gambar  2.6 maupun plot grafik
Xgraph [7].
Untuk proses cara mensimulasikan NS-2 dapat dilihat pada Lampiran 1.
Gambar 2. 6 Tampilan NAM Network AniMator
Universitas Sumatera Utara
2.5  Kerangka Evaluasi video Evalvid