1
Teknik Multicast Pada Jaringan Paket Dengan Network Coding berbasis Reed-Solomon Irin Muhajirin1) Wirawan 2) 1) Jurusan Teknik Elektro ITS, Surabaya 60111, email :
[email protected] 2) Jurusan Teknik Elektro ITS, Surabaya 60111, email :
[email protected] Abstrak – Pada jaringan paket multihop, paket multihop ditransmisikan melewati link yang rentan terhadap kesalahan sehingga menyebabkan degradasi kinerja yang signifikan. Padamakalah ini, diteliti sistem multicast pada jaringan wireless multihop dengan pengkoreksi kesalahan yang akan terjadi atau Forward Error Corection (FEC) untuk packet erasures. Meskipun FEC adalah metode yang ampuh untuk merecover packet erasures, ia memiliki masalah yang melekat di overhead jaringan karena paket berlebihan. Untuk mengatasi masalah tersebut, diusulkan sistem multicast baru dengan network coding berbasis Reed Solomon. Dalam sistem yang diusulkan, informasi paket dari node sumber dikodekan oleh Reed Solomon Erasure (RSE) coding dan diteruskan ke jaringan. Pada intermediate node pada jalur multicast, paket yang datang dari berbagai link berbeda akan dikodekan oleh network coding.Network coding dan RSE menyediakan komunikasi multicast yang sangat handal dan efisien karena RSE coding menyediakan mekanismerecovery dari packet erasures dan network coding mengurangi jumlah relay dari paket yang disampaikan dalam jaringan. Adanya fakta bahwa RSE coding dan network coding adalah linear coding, diusulkan decoder baru untuk coding bersama. Dalam teknik yang diusulkan, paket di intermediate node dikombinasi dan di dekodekan dengan RSE coding. Node yang dituju mengambil paket informasi dengan memecahkan sistem persamaan yang simultan yang dibangun dengan penguraian matriks. Simulasi percobaan menunjukkan bahwa network coding berbasis reed-solomon menyediakan komunikasi multicast yang sangat handal dan efisien. KataKunci:jaringan paket,Reed Solomon Erasure,FEC,multicast, network coding. 1. PENDAHULUAN Pada saat ini proses komunikasi data pada suatu jaringan komunikasi seperti internet, peer-to-peer networks, ad-hoc wireless networks, sensor networks, pengiriman informasiend-to-end, menggunakan metode routing konvensional. Metode routing konvensional adalah suatu metode pengiriman paket informasi pada suatu jaringan yang melalui jalur tertentu dengan cara store and forward. Perlu diperhatikan bahwa routing konvensional tidak mencakup semua operasi yang dapat dilakukan pada suatu node, misalnya operasi XOR, coding, dan sebagainya.
Baru-baru ini pengertian tentang network coding muncul sebagai metode yang menjanjikan untuk mengatasiketerbatasan metode routing konvensional. Network coding adalah suatu metode dalam teknik pemrosesan/pengiriman data pada suatu jaringan yang mengacu pada skema dimana informasi pada sebuah node diperbolehkan untuk menghasilkan data output dengan proses encoding, decoding dan algoritma tertentu [3], [8]. Dengan demikian, network coding memungkinkan informasi yang dikirim bekerja secara store-mix-forward seperti ditunjukkan pada Gambar 1.Berbeda dengan pendekatan metode routing konvensional, dimana setiap node hanya dapat menerima data dengan sistem storeand forward. Dengan menggunakan metode network coding, beberapa permasalahan dalam komunikasi data yang muncul pada jaringan dengan routing konvensional dapat diatasi, karena metode tersebut dapat memberikan beberapa keuntungan yaitu efisiensi daya, efisiensi komputasi, efisiensi bandwith, efisiensi perangkat (hardware), meningkatkan capacity atau throughput. Network coding dapat diterapkan pada berbagai bentuk komunikasi jaringan. Sampai saat ini, network coding menawarkan keuntungan untuk sistem multicasting dalam jaringan komunikasi. Multicasting mengacu pada transmisi suatu informasi umum dari suatu sumber node ke banyak node tujuan. Multicasting dapat diterapkan pada banyak aplikasi siaran langsung seperti Internet TV, streaming applications, pengiriman konten seperti jaringan distribusi konten dan jaringan P2P (peer-to-peer) [4] serta komunikasi interaktif seperti game online, instant messaging dan multimedia conferencing. Konsep network coding diperkenalkan pertama kali oleh [1] dalam makalahnya dilaporkan bahwa untuk mencapai maksimum throughput multicast pada umumnya dibutuhkan penggunaan network coding pada jaringan komunikasi. Sejak adanya makalah tersebut, topik network coding telah menjalani perkembangan yang cukup signifikan dalam komunitas riset. Topik network coding adalah bersifat interdisipliner, melibatkan teori grafik(kombinatorika), algoritma, teori informasi, (channel/coding) coding theory, teori optimasi, dan lain-lain [3], [7]. Sejak penerbitan makalah [1], banyak peneliti yang mengembangkan metode network coding sehingga menghasilkan kemajuan yang signifikan dalam pemahaman tentang network coding, tetapi masih sedikit sekali peneliti yang
2
menerapkan metode network coding untuk pengiriman paket data secara multicast berbasis Reed-Solomon. Karena masih sedikit sekali peneliti sebelumnya yang membahas dan meneliti tentang kinerja sistem jaringan paket menggunakan metode teknik multicast dengan menggunakan Network Codingberbasis ReedSolomon, maka penulis berusaha untuk meneliti hal tersebut, dengan tujuan agar sistem jaringan nirkabel lebih efisien terhadap sumber daya network, efisiensi komputasi, meningkatnya throughput, dan menimalisasi error paket dan delay dalam proses pengiriman data. 2.
TEORI PENUNJANG
2.1Network Coding Network coding adalah sebuah skema baru di dalam jaringanpaketuntuk memungkinkan intermediate nodemenyimpan, dan menggabungkan data sebelum diteruskan ke sink.Network coding digunakan untuk mempercepat akses distribusipada network komputer.Kinerja network coding dibandingkan networknon network coding lebih cepat dan efesien karena data dikirim secara kombinasi dengan pengkodean dari beberapa source dengan satu kali pengiriman data. Dengan menggunakan network coding diharapkan masalah kecepatan download file, efisiensi dalam distribusi dapat diselesaikan, sehingga pengguna jaringan paket lebih mudah dalam melakukan akses download file dalam jumlah besar dengan kata lain network coding akan meningkatkan performance sistem pada jaringan paket. Network coding bekerja berdasarkan Butterfly network dimana pengiriman data dari suatu source atau server menuju ke node (PC) akan membutuhkan waktu yang lebih singkat dibanding kinerja jaringan paket biasa. Dalam sistem network coding suatu routing multicast yang bekerja pada sistem akan di XOR sehingga membutuhkan jarak yang pendek dalam proses pengiriman data.
lintasan terpendek dalam sejumlah langkah. Untuk setiap simpul pada sumber (source) dalam graf, algoritma ini akan mencari jalur dengan cost minimum antara simpul tersebut dengan simpul lainnya [5]. 2.3Teknik Multicast Untuk mengatasi kelemahan dari unicast dan broadcast dalam pengiriman datamultimedia seperti real time ke banyak receiver diterapkan sebuah metode yang disebut multicast. Multicast merupakan sebuah solusi bagi masalah pada bidang komunikasi ketika data yang akan dikirimkan atau didistribusikan pada banyak receiver dengan lokasi yang berbeda dimana data cukup dikirimkan sekali yang kemudian akan digandakan oleh network hingga sampai tujuan. Kunci utama keunggulan komunikasi multicast dibandingkan dengan komunikasi unicast yang saat ini digunakan adalah kemampuan komunikasi multicast untuk menghindari terjadinya pengirimkan banyak data yang sama pada link yang sama. Berikut pemodelan dari penjelasan di atas :
Unicast ke Device #2
Multicast ke “Group X”
Gambar 2: Skema Unicast, Broadcast dan Multicast [6]
Keuntungan dari multicast ini yaitu membutuhkan bandwidth yang kecil dalam setiap pengiriman datanya (sekali kirim), dapat mengurangi CPU Processmemorirouter, dan penerima multicast adalah user yang hanya terdaftar dalam list multicast.
Gambar 1: Proses Network Coding [3]
2.2Algoritma Dijkstra Pada dasarnya, algoritma ini adalah salah satu bentuk algoritma greedy. Algoritma ini termasuk algoritma pencarian graf yang digunakan untuk menyelesaikan masalah lintasan terpendek dengan satu sumber pada sebuah graf yang tidak memiliki cost sisi negatif dan menghasilkan sebuah pohon lintasan terpendek. Algoritma ini sering digunakan pada routing. Algoritma dijkstraprinsipnya mencari
2.4Max–Flow Min–Cut Max-flow min-cut adalah metode untuk mencari maximum flow dan minimum cut. Metode ini digunakan untuk menentukan besarnya kapasitas kanal untuk jalur transmisi data. Selain itu metode ini juga akan menghilangkan beberapa node yang nilai kapasitas kanalnya bernilai kecil dan tidak dipakai untuk melewatkan data [5]. Cutadalah membagi sebuah graf menjadi dua set yang berbeda, misalkan disebut A dan B, dimana A adalah source dan B adalah sink. Nilai Cutadalah nilai yang diperlukan untuk membagi graf tersebut menjadi dua. Perlu diperhatikan bahwa total nilai untuk membagi graf tersebut adalah sama atau lebih kecil
3
dari kapasitas setiap sisi. Hal ini menunjukkan bahwa flow maksimum adalah sama atau lebih kecil dari setiap cut dari setiap network. Dari sinilah asal mulai teorema max-flow min cut yang menyatakan bahwa nilai yang dibutuhkan untuk membagi suatu graf menjadi dua adalah sama dengan maximumflownya. Cara penyelesaiannya juga sama dengan cara mencari maksimum flow dari suatu graf. 2.5Extension FieldGF(23) Setiap elemen 2mdalam finite fields, GF (2m), dapat digambarkan sebagai suatu derajat polinom m – 1 atau kurang. Derajat polinom adalah nilai tertinggi orde eksponen. Dengan menunjukkan masing-masing dari unsur-unsur nol GF (2m) sebagai polinomial, ai(X), di mana setidaknya satu dari koefisien m ai (X) adalah nol. Tabel 1.Pemetaaan Elemen Fields Dalam Basis ElemenGF(23) Dengan F(X) = X3+ X+1
Elemen 0
0 0 0 1 0 1 1 1
0 0 1 0 1 1 1 0
Bin 000 001 010 100 011 110 111 101
0 1 0 0 1 0 1 1
2
2
Dec 0 1 2 4 3 6 7 5
1 2
1, 2
1
2
dimana
t 2
Menggabungkan hasil proses a dan b sehingga diperoleh codeword yang dapat ditulis sebagai berikut: (3) 2.6.2 Dekoder Reed-Solomon Pada RS dekoder, codeword mempunyai persamaan:
yang
diterima
(4)
3. PEMODELANSISTEM
1
2 ,
(2)
di mana : = codeword yang diterima = codeword yang dikirimkan = error
2.6Reed-Solomon Code Sebuah kode Reed solomon (RS)dengan simbol 2 kode nonbinary cycliccodes dengan simbolsimbol yang terdiri dari m-bit berurutan, dimana m adalah bilangan bulat positif yang memiliki nilai lebih besar dari 2. RS (n, k) kode pada m-bit simbol ada untuk semua n dan k dimana 0
dimana adalah generator polinomial untuk RS dengan simbol dari GF (2 ) dengan panjang kode , yaitu : 2
: adalah jumlah simbol data yang dikodekan : adalah jumlah total kode : adalah symbol kemampuan koreksikesalahan : adalah jumlah parity symbol
2.6.1 Encoding Kode Reed-Solomon Pada dasarnya terdapat tiga tahap pada prosespengkodean RS secara sistematik, yaitu : Mengalikan data informasi dengan menentukan pariti p(x) yang didapat melalui operasi (1)
3.1 Pemodelan Sistem Model sistem network coding yang digunakan pada simulasi makalah ini dapat dilihat seperti Gambar 3 dan representasi Matrik Adjacent pada Tabel 2. Simulasi pada makalah ini dibuat untuk menganalisapada pengiriman media dengan menggunakan skema network coding pada sistem networkkomputer dan tanpa network coding.Simulasi model sistem ini menggunakan program Matlab. Langkah–langkah yang dilakukan berdasarkan Gambar 4 adalah sebagai berikut: a. Memodelkan sistem networkkomputer. b. Menentukan jumlah node yang akan digunakan. Node berjumlah 7 buah, 1 sourcenode, 1intermediate node, dan 2 node penerima. c. Merepresentasikan dengan graf. d. Memilih inputan paket,paket bit b1=5 2 3 dan bit b2 = 3 5 2 atau paket bitb1= 101, 010, 011 dan bit b2= 011, 101, 010 dalam biner. e. Dalam network yang akan disimulasikan digunakan skema multicast, penentuan panjang lintasan sesuai dengan algoritma dijkstra untuk menentukan jalur terpendek. f. Algoritma max flow min cut untuk menentukan maximum flow dalam network. Algoritma ini digunakan untuk menentukan besar lintasan. g. Mengirimkan data dengan network coding dan mengkodekan menggunakan FEC ReedSolomon untuk dikirim ke node tujuan. h. Data dikoreksi dan didekodekan pada penerima untuk mengetahui data asli.
4
pada intermediatenode. Galois field yang digunakan adalah GF(8) dengan A(7,3). Pada skema ini sebuah paket baru, c, dibuat pada node 4, dimana c = b1 b2, yang kemudian dikirimkan melalui link 4-5. Penerima 1 dan penerima 2 menerima, masing-masing, {b1, b1 b2} dan {b2, b1 b2}, keduanya dapat mengambil b1 dan b2 dengan menyelesaikan sebuah sistem sederhana dari persamaan logika XOR. Skema network coding direpresentasikan pada Gambar 7.
Sumber 1
1 2
1
1
1
Intermediate Node 1
3
4 1
1 5
1
Tabel2.Matrik Adjacent Untuk Merepresentasikan Graf 7 Node
1 7
6 Penerima 1
1 2 3 4 5 6 7
Penerima 2
Gambar 3: Model TopologiJaringan Butterfly
Mulai Memodelkan Jaringan Komputer dengan Graf Menentukan Routing Multicast dengan Algoritma Djikstra dan Menentukan Max-Flow-Min Cut
Koreksi Kesalahan Data didekodekan pada penerima Sistem Network Coding dibandingkan dengan Non Network Coding Selesai Gambar 4: Diagram Alir Proses Simulasi
3.2 SkemaTanpa Network coding vs Network Coding Skema tanpa network coding di kenal juga dengan istilah routing konvensional.Pada skema ini paket tidak bisa dirimkan bersamaan pada node 4 sehingga lebih lama dan boros sumber daya pada pengirimannya dan nilaithroughputnya juga kecil.Skema tanpa network coding direpresentasikan pada Gambar 6.Pada skema network coding, data yang dikirimkan 2 paket bitb1= 101, 010, 011 dan bit b2=011, 101, 010 bisa dikirimkan secara bersamaan
2 1 0 0 0 0 0 0
3 1 0 0 0 0 0 0
4 0 1 1 0 0 0 0
5 0 0 0 1 0 0 0
6 0 1 0 0 1 0 0
7 0 0 1 0 1 0 0
Pada waktu yang bersamaan pengiriman paket di node yang terlewati akan dilakuan proses pengkodean Reed-Solomon untuk menghindari error yang terjadi dimana pada tahap pengkodeannya terdapat proses encoding dan decoding paket. 4.
Mengirimkan data dengan Network Coding berbasis RSE pada penerima
1 0 0 0 0 0 0 0
HASILDAN PEMBAHASAN
4.1 Analisa Hasil Simulasi Analisa hasil sistemsimulasi dengan menggunakan7 node, dimana pengiriman data menggunakan sistemmulticast dengan node 6 dan node 7sebagai penerima atau sink dan node 1 sebagai source. Node 1 akan mengirim data menuju node 6 dan 7. Gambar3 adalah konfigurasi 7 node yang akan dikirimkan. Berdasarkan Gambar 5 dapat dicari besarnya flow yang dapat dilewatkan kedalam network dengan memotong jalur yang tidak perlu untuk mendapatkan maksimal flow dan nilai minimum cut, sehingga didapatkan jalur pengiriman data data yang efesien dan cepat. Selain menggunakan algoritma dijkstra juga digunakan max–flow min–cut untuk dibandingkan kinerja antara dua sistem tersebut. Pada simulasi yang dihasilkan didapatkan besarnya jarak maksimum flow adalah 2 dan 4.
5
a)
1
1
b)
1
2
1
3
2
a)
1
1
3
1
1
b1
2
b1
b)
b2
2
3
b2
1
b1 b1
b2 3
b2
1 4
4 1
1
1
1 5
5
4
4 b1
b1 b2
1
b2 5
b1
b2 b1
5
b2
b1
b2
b2
b1
1 6
7
6
6 {b1 ,b2}
7
A.
Tanpa Network Coding
Jaringan butterfly tanpa network coding, diwakili pada Gambar 7, adalah sebuah routing tradisional yang digunakan untuk membandingkan bagaimana kinerja dari jaringan tanpa network coding dengan network coding yang dapat mencapai keuntungan throughput dalam komunikasi jaringan. Pada gambar 5 terdapat sebuah sumberpada node 1, yang dikirim secara multicast yaitu bitb1= 101, 010, 011 dan bit b2= 011, 101, 010ke penerima node 6 dan node 7 setiap slot waktu, sehingga setiap saluran memiliki kapasitas unit.Menggunakan routing konvensional, penerima node 6dan node 7 akan menerima kedua bit b1dan b2 dengan menggunakan semua sumber daya jaringan, dimana sumber pada node 1mengirim bit b1 sepanjang jalur { 2-6 } dan bit b2sepanjang jalur {3-4-5-6}. Penerima di node 7 juga dapat menerima kedua bit dari node 1,menerima bit b2 melalui jalur { 3-7 } dan bit b1 dari jalur {2-4-5-6}, seperti digambarkan dalamGambar 6. Apabila pada Gambar 6 diasumsikan pengiriman secara multicast, dan dipertimbangkan bahwa kedua penerimaingin menerima dari source node kedua bit b1 dan b2, secara bersamaan maka routing konvensional tidak bisa digunakan karena router / node hanya bisa (store and forward). Pada skema ini penerima node 6 dan 7 akan sama menerima masing-masing kedua bit {b1, b2}={5 2 3, 3 5 2} yang ditunjukkan pada Gambar 6. Pada skema ini, paket tidak bisa dikombinasikan pada intermediate node, dan proses proses pengiriman lebih lama karena dilakukan 2 kali pengiriman. Untuk itu diusulkan metode baru, yaitu network coding berbasis RSE yang bertujuan mengatasi kekurangan dalam routing konvensional.
{b1 ,b2} 7
6
Gambar 6 :Butterfly network tanpa network coding a) node4hanyameneruskanbit b2 b) node4hanyameneruskanbitb1
Gambar 5: Max Flow Min Cut dari sumber ke node 6 dan 7
Untuk membandingkan proses tanpa network coding dengan network coding dijelaskan sebagai berikut :
7
B.
Dengan Network Coding
Dengan network coding kedua bit yang dikirim oleh node 1 dapat di XOR (atau linear gabungan) di antara node 4, seperti yang ditunjukkan pada Gambar 7. Kemudian data pada intermediate node, dalam hal ini node 4 akan di kombinasiantara data yang diterima pada node 2 dan node 3 menggunakan fungsi bitxor dan dikodekan dengan RSE sehingga di dapat data baru 6 7 1. Selanjutnya data diteruskan sampai ke penerima node 6 dan node 7 sehingga dihasilkan data berturut-turut {5 2 3, 6 7 1} dan {3 5 2, 6 7 1}. Untuk mendapatkan paket bit b2 pada penerima node 6 di lakukan proses bitxor(5 2 3,6 7 1) sehingga dihasilkan paket bit b2 = 3 5 2, begitu juga pada node 7 jika diinginkan paket bit b1 maka juga dilakukan proses bitxor(3 5 2,6 7 1) dan dihasilkan paket bit b1=5 2 3.Dari hasil yang diterima pada node 6 dan node 7 pada Gambar 7, dapat dilihat bahwa network coding dapat memperbesar nilai throughput. 1
b1 2
b1
b2 3
b2 4
b1
b1 b2 b1 b2 5
{b1, b1 b2}
6
b2
b1 b2 7 {b2, b1 b2}
Gambar 7 :Butterfly network dengannetwork coding
Waktu yang dibutuhkan pada simulasi non network codingpadaGambar 6 adalah sekitar ±1.62 detik, dan padanetwork codingpada Gambar 7adalah sekitar ± 0.35 detik, dan hal ini juga bergantung pada jenis komputer pada simulasi matlab, semakin tinggi spesifikasi komputer maka akansemakin cepat proses
6
pengirimannya. Dari hal tersebut dapat diambil kesimpulan pada bahwa network coding dapat mengurangi delay dalam proses pengiriman paket. 4.2Analisa Pengkodean Reed Solomon Setelah melakukan pencarian jarak lintasan terpendek menggunakan algoritma dijkstra dan nilai maksimum flow dan minimum cut maka data akan dikodekan untuk dikirim menggunakan kode Reed Solomon. Data yang dikirim menggunakan A(7,3) Reed Solomoncode dengan menggunakan GF(8), Paket b1= 101,010,011. 3 2 Nilai
5
dikonversikan ke
berdasarkan Tabel 1
.
Berdasarkan hasil simulasi dengan menggunakan matlab dan analisa data, diperoleh beberapa kesimpulan sebagai berikut: 1) Penggunaan skema network codingberbasis RSEuntuk pengiriman paket, memilikithroughput lebih besar dibandingkan tanpa network coding. 2) Penggunaan skema network codingberbasis RSE lebih meminimalisir delayyang terjadi, dimana pengiriman tanpa network coding memerlukan waktu sekitar ± 1,62 detik sedangkan network coding membutuhkan waktu sekitar ± 0.35 detik. 3) Penggunaan skema network codingberbasis RSE lebih handal terhadap error yang terjadi karena kemampuan RSE untuk mengkoreksi error yang terjadi. 4) Penggunaan skema network coding berbasis RSE lebih efisien terhadap penggunaan sumber daya jaringan (hardware).
Polinomial didapatkan dari persamaan 1 .
DAFTARREFERENSI [1]
Nilai
dilihat dari persamaan 2
Kode yang dihasilkan dari persamaan 3 adalah
(100)
(101) +(010) +(010) +(100) +(010)
+(101)
+
Setelah decoding dengan RSE didapatkan paket yang diterima di node 2 : 101 5 010 2 011 3 Seperti halnya pada perhitungan paket b1, maka paket b2 juga dikirimkan secara bersamaan menuju node 3 dan dari hasil decoding dengan RS didapatkan paket yang diterima di node 3 yaitu : 011 3 101 5 010 2 Kemudian data pada intermediate node, dalam hal ini node 4 akan di kombinasiantara data yang diterima pada node 2 dan node 3 menggunakan fungsi bitxor dan dikodekan dengan RSE sehingga di dapat data baru 6 7 1.Proses pengkodean tersebut berlangsung sampai paket terkirim pada node 6 dan node 7sehingga dihasilkan data berturut-turut {5 2 3, 6 7 1} dan{3 5 2, 6 7 1}.
5.
KESIMPULAN
Ahlswede, R., Cai, N., Li, S.Y. R., Yeung, R.W. (2000), “Network information flow”. IEEE Trans. Information Theory, IT46(4):1204-1216. [2]Bernard Sklar, “Digital Communications: Fundamentals and Applications, Second Edition”, Prentice-Hall, 2001, ISBN 0-13084788-7. [3] Chou, P.A. dan Wu, Y. (2007), “Network Coding for the Internet and Wireless Networks”, Microsoft Research. [4] Fragouli, C. dan Soljanin E. (2007), Network Coding Applications, Volume 2, now Publishers Inc., Boston – Delft. [5] Munir dan Rinaldi. (2006a). Diktat Kuliah IF2153 Matematika Diskrit Edisi Keempat. Departemen Teknik Informatika, Institut Teknologi Bandung. [6] Munir dan Rinaldi, (2006b), Diktat Kuliah IF 2251 Strategi Algoritmik. Laboraorium Ilmu dan Rekayasa Komputasi Departemen Teknik Informatika ITB. Bandung [7] Wu, Y. (2006), “Network Network Coding for Multicasting”,Dissertation,PrincetonUniversity. [8] Yeung, R.W. ( 2006), Network Coding Theory, Now, Boston – Delft.